This is outdated and just here for historical purpose, there are several ways to integrate skype into asterisk, including an official chan_skype from Digium/Skype
Bounty to be paid for Skype functionality for Asterisk
Manager: ason Toy
Bounty: aprox. $1,645 USD ( $200 + $200 + $50 + $30 + GBP100 + $20 + EUR 20 + $1,000 USD)
Date opened: November 9. 2004, Updated May 31, 2007
Status: Open
Contributors:
– Dan – $1,000 USD contact: dan
– Jason Toy – 200 USD contact: jtoy
– MuppetMaster – 200 USD contact MuppetMaster
– Fran – 50 USD contact (please leave a contact to take you seriously)
– Sjobeck – $30 USD
– BCN Telecommunications – 100 GBP contact: nickatbcndashteledotcom
– Adrien 20 USD contact: modulis
– Conception blak kat 20 CA
(- caryon – canceled – there is a commercial one I can use)
We will need a trustee if someone is only willing to pay anonymously.
Details:
There are two possible ways to do this.
Create a Asterisk extension,
1. with Skype low level functionality (reverse engineering)
2. on top of the documented Skype API (without running a skype Client)
Call quality should be equal to skype, also must include at least a linear pcm converter
In any case it has to work on linux as an additional module for asterisk.
Multiple account-login should be possible.
Note: Please consider the following limitations of the interface to the Public Skype API:
1. The Skype ‘engine’ requires X-windows to be running
2. Currently, the audio stream cannot be directed at anything other than /dev/dsp.
3. Only one (asterisk) client can use it at a time.
4. Interface to the engine is via a specific version of DBUS
2 and 4 are planned to be changed in the future, but in order to write a channel driver all of the above need to change. If you want Skype to consider changing it’s API, then contribute here: https://developer.skype.com/wiki/NakedSkype
== compilation of information ==
- Analyzes of the Skype protocol from the Columbia University Computer Science Department PDF
- Method 2 isn’t possible as mentioned above. The API is only provided by the running skype client via dbus. You can control some client stuff via this dbus-api, you could write a chan_skype to place outgoing calls (shouldn’t be that hard) but in order to get the audio stream, you must either capture the stream written to /dev/dsp (skype only handles oss) with overwritten syscalls (read, write) and LD_PRELOAD or use an appropriate dummy-sound device. The API documentation explains that you can change the audio devices with SET AUDIO_IN/OUT, but that doesn’t work at all. While this all requires a client running, the only possibility to apply for the bounty seems to reverse engineer the protocol and implement that into a channel driver.