Start with getting headless Skype to work, then export the display variable for SipToSis:
Download SipToSis, a.k.a the "SIP to Skype integration software" (the free one in the second table!) and unzip it:
mkdir /opt/SipToSis unzip -d /opt/SipToSis /tmp/SipToSis_20110310.zip cd /opt/SipToSis chmod +x SipToSis_linux
First we have to allow incoming Skype calls and forward them to a SIP extension. To do this, open the file /opt/SipToSis/SkypeToSipAuth.props with Microsoft Frontpage or your preferred text editor, scroll to the bottom and try to make it look a little something like this:
#Default: all incoming skype callers get the invalid destination message #*,play:clips/invalidDest.wav #Default: all incoming skype caller are forwarded to SIP extension 100 on the local Asterisk *,sip:firstname.lastname@example.org:5060,your_skype_username_or_something_else
Feel free to get funky with /opt/SipToSis/SipToSkypeAuth.props to set up call routing from your SIP device to Skype, i didn't.
Now make SipToSis talk to Asterisk, edit /opt/SipToSis/siptosis.cfg, comment out the default registration example "Sample AUTO config with NO registration" and further down change the Asterisk example to your needs
#Sample Asterisk registration example - comment out NO registration info above first and uncomment the following. host_port=5070 contact_url=sip:email@example.com:5070 from_url="John Doe" <sip:myskypeuserinasterisk@myAsterisk:5060> username=myskypeuserinasterisk realm=myAsterisk passwd=myskypeuserpasswordinasterisk expires=3600 do_register=yes minregrenewtime=120 regfailretrytime=15
"You need two to play this game called love" they say, and that's exactly how many you need for Skype over Asterisk, so don't forget to add a SIP user to your Asterisk's sip.conf
[myskypeuserinasterisk] defaultuser=myskypeuserinasterisk type=friend context=default secret=myskypeuserpasswordinasterisk host=dynamic nat=no dtmfmode=auto canreinvite=no qualify=yes defaultip=127.0.0.1 incominglimit=1 outgoinglimit=1 call-limit=1 busylevel=1
Hold on to your pants, here we go:
screen -S SipToSis ./SipToSis_linux
After starting SipToSis, connect to the VNC server where headless Skype runs. You'll see a dialogue asking you if you want to allow "Skype4Java" to connect to Skype. Go ahead, click whatever makes sense to you... (that would be "Remember this selection", unless you like to do this everytime you start SipToSis, and of course "Yes")
If you're too slow, you may be unable to click any of the buttons - well, you can click them, but nothing happens. If that's the case, just kill SipToSis, reconnect to the screen (screen -S Skype -r), kill Skype with CTRL+C and start everything up again, including the VNC server, and be quicker this time.
Go ahead, bribe someone how's online in Skype to give you a call. You should even see their Skype username as the CallerID, if you got a fancy phone from this century!