5

First off: I'm not sure if this should be on superuser or here.

I have recently built a few Asterisk boxes with OpenVOX FXO/FXS ports little or no trouble.

My current project is building an Asterisk box with SIP trunks. My current employer insisted on getting Skype Business/Skype connect for that purpose. After reviewing the Skype Connect plan, I agreed, because I thought it is going to be straightforward: Purchase G729 licences and setup SIP trunk/trunks.

Boy was i wrong :)

Here is the setup:
The setup is for calling US numbers only via skype (we got skype US minute bundles in skype connect)
AsteriskNOW - Asterisk 1.4 + asterisk-gui
Trunks: SIP Trunk configured with Skype Connect - shows as registered
Users: 2 test extensions. Both work fine when calling each other, voicemail etc works fine too
The asterisk box is behind a Mikrotik router which i configured to forward all relevant ports: 5060-5090 UDP, 10000-20000 UDP. When trying out an extension outside of my LAN, it worked. I could make calls to the other extension.

Outgoing rule: _NXXXXXXXXX
Strip:0
Prepend:+1
Use skype trunk

Inbound rule:
Trunk: Skype
Pattern: s
Destination: Extension1 (6210)

Here is the output of asterisk CLI (-rvvvvv) with outgoing calls:

http://pastebin.com/eWVpL72e

you can see the circuit-busy response when using trunk1 (skype)

When calling my Skype Connect number from the outside, I get nothing in the logs.

Can anyone with Skype Connect / Asterisk experience help out? :)

Kaurin
  • 151
  • 1
  • 1
  • 8

1 Answers1

6

Ok I finally fixed it thanks to Skype Tech support and an Asterisk Ninja :)

This is what must be in sip.conf in order for Skype connect to work:

register => SKYPE_CONNECT_ID:SKYPE_CONNECT_PASS@sip.skype.com/SKYPE_CONNECT_ID

That Register line MUST be near the begining of the file, where the "register =>" examples are.

Skype Trunk details (near the end of sip.conf or at the end):

[skype]
type=friend
context=from-skype
username=SKYPE_CONNECT_ID
secret=SKYPE_CONNECT_PASS
canreinvite=no
insecure=port,invite
dtmfmode=rfc2833
host=sip.skype.com
nat=no
qualify=yes
fromuser=SKYPE_CONNECT_ID
fromdomain=sip.skype.com
disallow=all
allow=g729
allow=ulaw
allow=alaw

Note: If you are using Asterisk-gui, you can do all of this through the gui.
When setting up the SIP trunk, you need to go back and edit it, because edit reveals more options for you to put in.
Fill out:
Hostname: sip.skype.com
Username: SKYPE_CONNECT_ID
Password: SKYPE_CONNECT_PASSWORD
Codecs: G729, Ulaw, Alaw
Fromdomain: sip.skype.com
Fromuser: SKYPE_CONNECT_ID

There is one more hidden option that you must set in order for INCOMING call Options/Advanced/Show hidden options

With this setup, outgoing calls should work. Remeber to make the outgoing rule so that you get an international number out. My example in asterisk-gui.
US office calls only US numbers.
Outgoing rule: _XXXXXXXXXX
Prepend: +

Same thing with bare-bones asterisk: (extensions.conf)

exten => _X.,n,Dial(SIP/skype/+1${EXTEN},90)  

In the example above, there is a skype trunk defined in sip.conf

After this. Everything worked fine. Now I seem to have some other problems :)

Kaurin
  • 151
  • 1
  • 1
  • 8
  • You should accept this as the correct answer by clicking on the check mark next to this answer. It's OK to accept your own answer, as it shows future visitors what the correct solution is. – MDMarra Apr 06 '12 at 20:36