MHSpot.com
SipToSis TM - How to Setup SipToSis with a SIP Phone/ATA - Configuration
STS Home Appicus FAQ Callback Setup Skype Trunk Setup Troubleshooting Forum Downloads Skype Deals
This document describes how to install SipToSis 20090512+ with a Linksys SIP telephone adapter and Skype
For other brand SIP phones/telephone adapters, see the SIP phone/adapter's documentation. It also shows the basics of SipToSis configuration.

A regular SIP adapter/ATA CAN NOT use the Skype network without a bridge or gateway.
If you don't want to use a SIP Skype bridge/gateway then click Skype Devices Without a Computer.

Install the applications
Download Java 1.5 JRE or higher and install it.
Download Skype , install it and create a skype account if you haven't already done so.
Download the latest SipToSis SIP Skype Bridge and extract into a new folder 'siptosis'.
Make sure to keep the folder/path structure contained in the archive.
SipToSis must be run on the same computer as the Skype client.

For those having trouble with my instructions: Quick Install Videos (PopUp Flash Video)

For linux users, here are some Centos instructions for those who need a little extra help.

Startup the Skype client and login in (if you don't have it set to do so automatically).
For windows, double click SipToSis_win.bat to startup SipToSis. On Linux or MAC OS X, grant execute permission to the STS startup script (chmod +x SipToSis_linux) then run ./SipToSis_linux.

For OS X only: If the auto installer doesn't copy the framework (unsatisfied link error with libskype.jnilib), do this from the siptosis root:
cp -r -u samples/osx_framework/Skype.framework /Skype.framework

If all goes well, the Skype client will inform you that a program is trying to access it.
You must grant access or SipToSis will not be able to connect with the Skype client.
The Skype userid and Skype client version should display on the SipToSis console as well as some other information. Click Windows Startup Screen Example or Linux Startup/API Screen Example to see what it looks like.
Note: If it gets stuck at initSkype - Double check that you have granted access to the API by going into the Skype client and looking.
If the SipToSis console shows a contact_url of 127.0.0.1 or wrong IP address instead of the machine's actual IP address, do the following procedure:
Edit siptosis.cfg with your favorite text editor and look for the following:

#Sample AUTO config with NO registration
# username and password not important in this mode
#Set to available port to transport SIP messages on siptosis computer
host_port=5070
username=skypests
passwd=unimportantpassword
# --- end of NO registration example ---

Comment out the AUTO config section like this:
#Sample AUTO config with NO registration
# username and password not important in this mode
#Set to available port to transport SIP messages on siptosis computer
#host_port=5070
#username=skypests
#passwd=unimportantpassword
# --- end of NO registration example ---

Enable the NO registration section (or other appropriate section) like this:
#Sample config with NO registration - use if above auto config doesn't work - change 127.0.0.1 to ip address of computer running siptosis
# username and password not important in this mode
#Set to available port to transport SIP messages on siptosis computer
host_port=5070
contact_url=sip:skypests@127.0.0.1:5070
from_url="skypests"
username=skypests
passwd=unimportantpassword
realm=127.0.0.1
# --- end of NO registration example ---

Change every occurance of 127.0.0.1 to your computers IP address.
It is recommended that you setup your computer with a static IP address so it is always reachable by your ATA with the same IP address.
If you need to register with a SIP server or service, you need to comment out the "NO registration section" and uncomment an appropriate registration section and set your registration parameters. Note: from_url is the address of the server you are going to register with. contact_url is the address of the SipToSis instance. The parameters above are SIP settings and have no relationship to any Skype ID.

Now setup your VOIP/SIP phone/adapter to call the SipToSis Computer.
These instructions are for typical Linksys Sipura Adapters - for other SIP phone/adapters see the adapter's documentation. It is assumed that the Skype gateway is attached directly to the lan port or through a switch. Login to your SIP Adapter and go to the Voice Settings screen. Look for the UserID field and write it down. Now you are looking for the dial plan option. Copy the current dial plan and save it in a file somewhere. Change the dial plan to this:
(<#1:>xx.<:@SipToSisPcIp:5070>|originalDialPlan)
SipToSisPcIp is the IP address of the Skype gateway computer.
originalDialPlan is what was there before but without the surrounding parenthesis.
Save the settings and restart the device. If all is working correctly, if you dial #155, you should hear the Skype echo test after a few seconds. Complete the test to make sure you can hear yourself back. Volume levels per codec can be adjusted by changing settings skype_audiooutgain and skype_audioingain settings in siptosis.cfg. Click Working Call Example to see what it should look like with two way sound.

Sample SPA3102 screens from my ATA - this setup has multiple gateways - not just for SipToSis:
Line1 Tab
Sip Tab - Note the Nat parameters at the bottom.
User1 Tab
Regional Tab
Info Tab
The Line1 Tab is where you would normally have to make changes. The others are there for reference in case you got a used unit with wacky settings or you messed with it.
Here is my full dial plan:
(<#8:>xxS0<:@192.168.0.8:5072>|<#7:>xx.<:@192.168.0.5:5072;usr=102;pwd=102>|<#6:>xxS0<:@192.168.0.6:5072>|<#5:>xxS0<:@192.168.0.6:5070>|<*1:>xx.<:@192.168.0.222:5070>|<911:15613381333>S0<:@gw1>|1900xxxxxxx!|1976xxxxxxx!|1747xxxxxxxS0|18[0678]xxxxxxxxS0|1xxxxxxxxxxS0<:@gw1>|<#0:>[*x][*x].<:@gw0>|<#4:>xxxxxxxxxx.<:@gw4>|<#2:>xxxxxxxxxxxx.<:@gw2>|011595xxxxxxxx.<:@gw1>|0xxx[1-8]xxxxxxxx.<:@gw1>|<:1>[2-9]xxxxxxxxxS0<:@gw1>|<:1561>[2-9]xxxxx.<:@gw1>|*[3-9]x.<:@gw0>)
Notice I use #8,#7,#6,#5 and *1 for SipToSis dialing prefixes.

Sample AC-211 screens - this ATA can NOT share a SIP provider and use SipToSis on the same line. (I did not try line 2)
SIP Tab
Line1 Tab
If you check the Send Registration box as I have, domain_port_any=yes must be set in siptosis.cfg. With this setup, there is no dialing prefix.

Important Note: Look at the outbound proxy field of the ATA. If it is not blank, it will not make skype calls with STS this way. You can try removing the outbound proxy and hope that your provider does not require it. The other option is to setup the second line (if available and not used) on your ATA. To do that, go to the line 2 tab and make up a UserID (this will be the UserID used in the next step). Set the sip proxy to SipToSisPcIp:5070 - change SipToSisPcIp to the IP address of STS. Set the two settings 'Answer Without Reg' and 'Call Without Reg' to yes. (The actual parameter names may vary) Set the dial plan to (xx.) instead of the above. With this dial plan you will not need to dial #1 as described here to make Skype calls. You will need another handset hooked to the line 2 port of your adapter or a two/multi line phone.

Now to make incoming Skype calls ring your SIP phone/adapter.
Edit SkypeToSipAuth.props
Change
*,play:clips/invalidDest.wav or (*,sip:echo@proxy01.sipphone.com:5060 for older versions)
to
*,sip:adapterUserId@adapterIpAddress:5060
adapterUserId is your adapter's UserID you wrote down earlier
adapterIpAddress is your adapter's LAN IP address
Change 5060 to your adapter's SIP port if different. (line 2 is usually 5061)
Restart SipToSis.
Now when a skype user calls you, you can answer the call there. The caller ID should show the skype user that is calling you.

Possibly required depending on your setup for dialing out.
Edit SipToSkypeAuth.props
*,*,localnet,calleeid (default)
If using an outside SIP provider, use AllowedCallerPhoneNumber,*,*,calleeid instead.
Note: Some adapters with a built in router use the WAN port to make the call even though it's routed to the LAN port. If your WAN port IP address is static, you can add an additional entry with that IP address. If not, you can use combinations of caller id and realm to control access. IP address is the most secure method. Another option is to put another router/firewall ahead of the adapter so that the adapter WAN port has a local IP address. You can avoid double nat by putting the adapter into bridge mode, but doing so may disable the adapter's QOS support. I use double nat without problems.

Now to setup Skype users you want to call.
Edit SkypeOutDialingRules.props Add a number map like these below for each Skype user you want to call with a unique number (2 or more digits). It is not limited to Skype users, you can also create speed dials for SkypeOut numbers.
^12$:echo123
^13$:skypeuser1
^14$:skypeuser2
^15$:skypeuser3
^16$:+13051234567
^17$:+14071234567
^18$:+18885555555,+18005555555
^19$:skypeuser1,+18005555555
With this setup, if you were to dial #113 it would call skypeuser1. If you were to dial #117 it would make a SkypeOut call to 14071234567. Dialing #118 would make a conference call to two PSTN numbers. Dialing #119 would make a conference call to a Skype user and a PSTN number.

Now to setup your locality for SkypeOut calling.
Edit SkypeOutDialingRules.props again
Look for these lines:
#^([1-9][0-9]{6})$:+1561$1
^([1-9][0-9]{9})$:+1$1
^([0-9]{7,})$:+$1
Remove the pound signs (#) and change 561 to your area code. 305 in the following example.
^([1-9][0-9]{6})$:+1305$1
^([1-9][0-9]{9})$:+1$1
^([0-9]{7,})$:+$1

Restart SipToSis.
With this setup, to make a SkypeOut call to 13051234567, you could dial #11234567, #13051234567 or #113051234567 and it would dial +13051234567 in all three cases through the Skype gateway bridge. These patterns are for USA style dialing and full international dialing. For other countries, change or add additional pattern(s) as needed.

A word about the dial plan
Yes, it is possible to eliminate dialing the #1 prefix for Skype calls. But since I don't know what services you have already or your existing dial plan, I believe the most trouble free way to get going is as I have described. If you want to try this, here is a simple example:

(1800xxxxxxx<:@SipToSisPcIp:5070>|originalDialPlan)

This would route all 1800 calls to SipToSis.

Dial plan information is all over the internet and also in the Linksys documentation. For other manufacturers, look at their documentation. Not all adapters can perform outbound gateway routing using the dialplan. In that case you will have to use the adapters second line if it has one, or use a PBX such as Asterisk. If you have no SIP provider, you could setup SipToSis as the provider, turn off the ATA's register feature (or setup SipToSis's built-in registrar server) and use a simple dial plan like (xx.).

If you are interested in the Call-Back feature see Call-back Setup.

Windows users can run it as a service - see Appicus Windows Service Wrapper

That's the basic setup. I hope you got it working. If not the SipToSis Skype Gateway Troubleshooting may offer some help. If you get stuck, leave a comment on the SipToSis Skype Gateway Forum.

If you intend to configure with Asterisk for multi channel skype trunking, you may want to look at SipToSis Skype Trunk Setup Guide