On 7/20/16 9:58 AM, Faheem Muhammad wrote:
Hi,
I'm facing a strange dialplan issue with a PJSIP_DIAL_CONTACTS.
When I try to call an offline endpoint with PJSIP_DIAL_CONTACTS, the
dial command breaks and the call control go to hangup block instead of
next priority. The error in CLI says "*Dial requires an argument
(technology/resource)*".
This error seems legit as there are no contacts for an offline
endpoint. The dialplan should jump to the next priority.
exten => 1001,1,Dial(${PJSIP_DIAL_CONTACTS(${EXTEN})})
exten => 1001,2,,NoOP(${DIALSTATUS})
exten => 1001,3,|Dial(PJSIP/mytrunk/sip:${mob||}||@10.0.0.1
<http://10.0.0.1>||)|
exten => h,1,NoOp()
exten => h,n,NoOP(${DIALSTATUS})
-----------------------------------------------------------------------
If i try to dial the same offline endpoint with the below code
snippet, it jumps to next prirorty.
exten => 1001,1,Dial(PJSIP/${EXTEN})
exten => 1001,2,,NoOP(${DIALSTATUS})
exten => 1001,3,|Dial(PJSIP/mytrunk/sip:${mob||}||@10.0.0.1
<http://10.0.0.1>||)|
|
|
exten => h,1,NoOp()
exten => h,n,NoOP(${DIALSTATUS})
The endpoint may register from multiple device, so I always have to
dial it all contacts. Did anyone else face such problem?
My solution to this problem was to use a gotoif and check if
PJSIP_DIAL_CONTACTS has any contacts before trying to dial, if it does
not then I skip the dial and goto the next step. So:
exten => 1001,1,GotoIf($["${PJSIP_DIAL_CONTACTS(${EXTEN})}" = ""]?nocon)
exten => 1001,n,Dial(${PJSIP_DIAL_CONTACTS(${EXTEN})})
exten => 1001,n(nocon),SomethingElse
--
Telecomunicaciones Abiertas de México S.A. de C.V.
Carlos Chávez
+52 (55)9116-91161
--
_____________________________________________________________________
-- 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