Skype Connect and Elastix for incoming and outgoing calls

Linux Intel asked:

I ordered Skype Connect, And i want to integrate skype connect with my Elastix server to handle incoming and outgoing calls.

I created new SIP Trunk through GUI with the following info :

    Incoming Settings
[skype_in]
disallow=all
type=friend
username=sipusername
fromdomain=sip.skype.com
fromuser=sipusername
realm=sip.skype.com
host=sip.skype.com
dtmfmode=rfc2833
secret=sipuserpass
nat=yes
insecure=invite
qualify=yes
allow=alaw
allow=ulaw
amaflags=default
trustrpid=no
sendrpid=yes
context=from-trunk-sip-Skype_out

Outgoing Settings : 
[Skype_out]
context=from-trunk-sip-Skype_out

Register String:
SIPUSER:SIPPASS@sip.skype.com

Incoming calls are working properly.

I tried to call 00448717893642 and 448717893642 for london speeking clock and many other numbers, But outgoing calls not working, It keeps saying ( cannot-complete-as-dialed )

Elastix log after Dial

[Jul 17 01:01:25] VERBOSE[3501] pbx.c:     -- Executing [448717893642@from-internal:1] ResetCDR("SIP/100-00000010", "") in new stack
[Jul 17 01:01:25] VERBOSE[3501] pbx.c:     -- Executing [448717893642@from-internal:2] NoCDR("SIP/100-00000010", "") in new stack
[Jul 17 01:01:25] VERBOSE[3501] pbx.c:     -- Executing [448717893642@from-internal:3] Progress("SIP/100-00000010", "") in new stack
[Jul 17 01:01:25] VERBOSE[3501] pbx.c:     -- Executing [448717893642@from-internal:4] Wait("SIP/100-00000010", "1") in new stack
[Jul 17 01:01:26] VERBOSE[3501] pbx.c:     -- Executing [448717893642@from-internal:5] Progress("SIP/100-00000010", "") in new stack
[Jul 17 01:01:26] VERBOSE[3501] pbx.c:     -- Executing [448717893642@from-internal:6] Playback("SIP/100-00000010", "silence/1&cannot-complete-as-dialed&check-number-dial-again,noanswer") in new stack
[Jul 17 01:01:26] VERBOSE[3501] file.c:     -- <SIP/100-00000010> Playing 'silence/1.gsm' (language 'en')
[Jul 17 01:01:27] VERBOSE[3501] file.c:     -- <SIP/100-00000010> Playing 'cannot-complete-as-dialed.gsm' (language 'en')
[Jul 17 01:01:29] VERBOSE[3501] file.c:     -- <SIP/100-00000010> Playing 'check-number-dial-again.gsm' (language 'en')
[Jul 17 01:01:32] VERBOSE[3501] pbx.c:     -- Executing [448717893642@from-internal:7] Wait("SIP/100-00000010", "1") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [448717893642@from-internal:8] Congestion("SIP/100-00000010", "20") in new stack
[Jul 17 01:01:33] WARNING[3501] channel.c: Prodding channel 'SIP/100-00000010' failed
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:   == Spawn extension (from-internal, 448717893642, 8) exited non-zero on 'SIP/100-00000010'
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [h@from-internal:1] Macro("SIP/100-00000010", "hangupcall") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:1] GotoIf("SIP/100-00000010", "1?endmixmoncheck") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Goto (macro-hangupcall,s,9)
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:9] NoOp("SIP/100-00000010", "End of MIXMON check") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:10] GotoIf("SIP/100-00000010", "1?nomeetmemon") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Goto (macro-hangupcall,s,28)
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:28] NoOp("SIP/100-00000010", "End of MEETME check") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:29] GotoIf("SIP/100-00000010", "1?noautomon") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Goto (macro-hangupcall,s,34)
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:34] NoOp("SIP/100-00000010", "TOUCH_MONITOR_OUTPUT=") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:35] GotoIf("SIP/100-00000010", "1?noautomon2") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Goto (macro-hangupcall,s,41)
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:41] NoOp("SIP/100-00000010", "MONITOR_FILENAME=") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:42] GotoIf("SIP/100-00000010", "1?skiprg") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Goto (macro-hangupcall,s,45)
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:45] GotoIf("SIP/100-00000010", "1?skipblkvm") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Goto (macro-hangupcall,s,48)
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:48] GotoIf("SIP/100-00000010", "1?theend") in new stack
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Goto (macro-hangupcall,s,50)
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:     -- Executing [s@macro-hangupcall:50] Hangup("SIP/100-00000010", "") in new stack
[Jul 17 01:01:33] VERBOSE[3501] app_macro.c:   == Spawn extension (macro-hangupcall, s, 50) exited non-zero on 'SIP/100-00000010' in macro 'hangupcall'
[Jul 17 01:01:33] VERBOSE[3501] pbx.c:   == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/100-00000010'

Are there any modifications should i do in Incoming and outgoing settings to work properly .?

My answer:


You didn’t specify how you were dialing the call, so I’ll refer you to the Skype Connect documentation, which says:

E.164 (country code and national number), international number format for all calls

Most likely you aren’t sending the country code. This is required for all Skype Connect outgoing calls.

So if you want to dial the London speaking clock, you would send:

448717893642

To dial a number in the US, such as Pennsylvania 6-5000, you would send:

12127365000

Possibly you also need to include the + symbol at the beginning of the number, e.g.:

+44871893642

A quick Google search indicates that you also need to explicitly allow outgoing calls in your Skype account profile. For reasons I can’t even begin to guess, this seems to be disabled by default.


View the full question and answer on Server Fault.

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.