Posted: Fri Nov 16, 2007 7:15 am Post subject: [Asterisk-video] Wrong disconnect response
Hi,
I still have problem with the SIP response message
from asterisk when doing video call-out.
My scenario is from SIP UA try to do video call-out,
then the mobile phone just reject the call.
The response always 603 Decline SIP error message.
I need to differentiate the reason why the call
disconnected.
It was because of busy or any other reason.
As usual here are my dialplan:
[sipout]
exten => _X.,1,Set(GLOBAL(number)=${EXTEN})
exten => _X.,n,h324m_call(_X.@threegvideo)
[threegvideo]
exten => _X.,1,Set(CHANNEL(transfercapability)=VIDEO)
; this capability will make video call
exten => _X.,n,Dial(Zap/g0/${number}) ;g0 is your
group number from zapata.conf
With above dialplan if we reject the call the response
will be 603 Sip response.
I tried to experiment with another dialplan below
[sipout]
exten => _X.,1,Set(GLOBAL(number)=${EXTEN})
exten => _X.,2,Dial(SIP/1009@mydomain)
With above dialplan if we reject the call the response
will be 480 Busy SIP response.
Maybe because of the later dialplan only use one
context.
If that the case, is it possible to do video call-out
using 1 context only?
Regards,
Reza
____________________________________________________________________________________
Get easy, one-click access to your favorites.
Make Yahoo! your homepage.
http://www.yahoo.com/r/hs
_______________________________________________
--Bandwidth and Colocation Provided by http://www.api-digital.com--
Posted: Fri Nov 16, 2007 9:31 am Post subject: [Asterisk-video] Wrong disconnect response
Hi Reza,
According to the code in chan_sip the 603 response is correct:
case 603: /* Decline */
return AST_CAUSE_CALL_REJECTED;
case 486: /* Busy everywhere */
return AST_CAUSE_BUSY;
So the 603 is the correct code to be sent when a call is rejected.
In your second case the 480 response is sent directly by the sip phone, not asterisk.
BR
Sergio
----- Original Message -----
From: Reza Fatahillah [mailto:ezhot_95@yahoo.com]
To: asterisk-video@lists.digium.com
Sent: Thu, 15 Nov 2007 22:48:15 -0800 (PST)
Subject: [spam][Asterisk-video] Wrong disconnect response
Hi,
I still have problem with the SIP response message
from asterisk when doing video call-out.
My scenario is from SIP UA try to do video call-out,
then the mobile phone just reject the call.
The response always 603 Decline SIP error message.
I need to differentiate the reason why the call
disconnected.
It was because of busy or any other reason.
As usual here are my dialplan:
[sipout]
exten => _X.,1,Set(GLOBAL(number)=${EXTEN})
exten => _X.,n,h324m_call(_X.@threegvideo)
[threegvideo]
exten => _X.,1,Set(CHANNEL(transfercapability)=VIDEO)
; this capability will make video call
exten => _X.,n,Dial(Zap/g0/${number}) ;g0 is your
group number from zapata.conf
With above dialplan if we reject the call the response
will be 603 Sip response.
I tried to experiment with another dialplan below
[sipout]
exten => _X.,1,Set(GLOBAL(number)=${EXTEN})
exten => _X.,2,Dial(SIP/1009@mydomain)
With above dialplan if we reject the call the response
will be 480 Busy SIP response.
Maybe because of the later dialplan only use one
context.
If that the case, is it possible to do video call-out
using 1 context only?
Regards,
Reza
____________________________________________________________________________________
Get easy, one-click access to your favorites.
Make Yahoo! your homepage.
http://www.yahoo.com/r/hs
_______________________________________________
--Bandwidth and Colocation Provided by http://www.api-digital.com--
According to the code in chan_sip the 603 response
is correct:
case 603: /* Decline */
return
AST_CAUSE_CALL_REJECTED;
case 486: /* Busy everywhere
*/
return AST_CAUSE_BUSY;
So the 603 is the correct code to be sent when a
call is rejected.
Is there any way to differentiate the cause of call
hangup?
Is it because of rejected or busy or any other reason?
Not only 603 response message.
the mapping to SIP message is inside sip_hangup(struct
ast_channel *ast) function.
I think around these lines:
} else { /* Incoming call, not up */
const char *res;
if (ast->hangupcause && (res =
hangup_cause2sip(ast->hangupcause)))
transmit_response_reliable(p, res, &p->initreq);
else
transmit_response_reliable(p, "603 Declined",
&p->initreq);
}
Since the hangupcause always 0 it will always go to
603 Declined part.
Regards,
Reza
____________________________________________________________________________________
Be a better pen pal.
Text or chat with friends inside Yahoo! Mail. See how. http://overview.mail.yahoo.com/
_______________________________________________
--Bandwidth and Colocation Provided by http://www.api-digital.com--
You can post new topics in this forum You can reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum