Hi Steve,

You do really grasp Asterisk, it works, i added transfer=no in iax.conf for 
eithet users 200 and 400, and now it hangs up.

For the S option it works too, i write it like this :
exten=>888,1, Dial(IAX2/400, ,S(10))

For the script there is a method getChannel().setVariable(param1,param2).
now i stock the SECONDS-REMAINING in set Variable like this:
getChannel().setVariable("SECONDS-REMAINING","15").
and in the Dial i did 
exten=>888,1, Dial(IAX2/400, ,S(${SECONDS-REMAINING}))

AND it works perfectly.
Thanks again Steve for sharing your knowledge.

RESPECTFULLY



________________________________
De : Steve Edwards <asterisk....@sedwards.com>
À : Asterisk Users Mailing List - Non-Commercial Discussion 
<asterisk-users@lists.digium.com>
Envoyé le : Lun 7 juin 2010, 21h 45min 21s
Objet : Re: [asterisk-users] Re : Re : Re : Controlling calls

On Mon, 7 Jun 2010, Adil Zaaraoui wrote:

> Yes you were right, the " exten=> 777,1, Goto(absolute-timeout-test,777,1)" 
> was not in the context 200, Now here is the output:
> 
>  -- Accepting AUTHENTICATED call from 192.168.1.34:
>        > requested format = ulaw,
>        > requested prefs = (),
>        > actual format = ulaw,
>        > host prefs = (ulaw|alaw),
>        > priority = mine
>     -- Executing [...@iax:1] Goto("IAX2/200-11946", 
> "absolute-timeout-test|777|1") in new stack
>     -- Goto (absolute-timeout-test,777,1)
>     -- Executing [...@absolute-timeout-test:1] Verbose("IAX2/200-11946", 
> "1|[absolute-timeout-test:777]") in new stack
>  [absolute-timeout-test:777]
>     -- Executing [...@absolute-timeout-test:2] Set("IAX2/200-11946", 
> "TIMEOUT(absolute)=10") in new stack
>     -- Channel will hangup at 2010-06-07 21:16:11 UTC.
>     -- Executing [...@absolute-timeout-test:3] Dial("IAX2/200-11946", 
> "IAX2/400") in new stack
>     -- Called 400
>     -- Call accepted by 192.168.1.33 (format ulaw)
>     -- Format for call is ulaw
>     -- IAX2/400-13689 is ringing
>     -- IAX2/400-13689 answered IAX2/200-11946
>     -- Channel 'IAX2/200-11946' ready to transfer
>     -- Channel 'IAX2/400-13689' ready to transfer
>     -- Releasing IAX2/400-13689 and IAX2/200-11946

Now that we have simplified the environment, eliminated the AGI, and have some 
console output, we can see the problem.

Your Asterisk server is optimizing itself out of the path so IAX2/400 and 
IAX2/200 are talking directly to each other.

> But the communication is still up, we hear each other :( .

Packets are being exchanged directly between the two end points.

Your Asterisk server is no longer in control of the call and cannot hangup the 
call. If you wish to retain control, you need to disable transfer in iax.conf. 
Gee, who knew? It would be nice if Asterisk would warn you before it optimized 
itself out and there was a timer (absolute or S(x)) pending.

> I tried the S option and the L one, it stops the call, it just bip in the 
> callee and the call is terminated. Here is how i used it : exten => 
> 777,1,Dial(IAX2/400,S(10))

Please look at the dial command documentation. The second parameter is the 
timeout, the third is the options.

-- Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards      sedwa...@sedwards.com      Voice: +1-760-468-3867 PST
Newline                                              Fax: +1-760-731-3000


      
-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
               http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to