Skypiax (now called Skypopen) on MacOSX
From FreeSWITCH Wiki
Contents |
Skypiax (now Skypopen) on MaxOSX
Here is an ugly implementation of Skypiax on Mac.
Pay attention: skypiax is now skypopen: Mod skypopen Skype Endpoint and Trunk
Status
Only one skype instance is supported. Although you can run multiple instances on a Mac with different system user at the same time, I don't know how to control them using the Skype API. Only the last skype instance responds correctly to the Skype API.
Implementation
It using the skype carbon api https://developer.skype.com/Docs/ApiDoc/Skype_API_on_Mac . I cannot make RunCurrentEventLoop() or RunApplicationEventLoop() work in a threaded context. See https://developer.skype.com/jira/browse/SPA-666 and https://developer.skype.com/jira/browse/SPA-418 for reference.
So the idea is start a proxy instance and bridge skypiax and the skype instance together. It is not good but it works. Any other improvements are welcome.
Sure you can make a GUI version proxy by modify the example Cocoa code provided by official Skype site.
Note: If you don't like start another proxy and you can make RunCurrentEventLoop() work in a thread, check r14472:14475 in the branch.
Build and Run
You may need to put Skype.framework into /Library/Frameworks/. Or you can put Skype.framework in the source tree of mod_skypiax ( and it's the recommended way by Skype), but I haven't got time to try how to change the Makefile to link with it.
Check out http://svn.freeswitch.org/svn/freeswitch/branches/seven/src/mod/endpoints/mod_skypiax or merge rev 14472:14772 to your trunk code.
cd src/mod/endpoints/mod_skypiax make skypiax_proxy make install
Start your skype instance and configure conf/autoload_configs/skypiax.conf.xml with only one instance enabled.
./skypiax_proxy
Before load mod_skypiax, you will need to config skypiax.conf.xml with exactly one account enabled. See Skypiax for config details.
Then start FreeSWITCH and load mod_skypiax, good luck.
Note, if you have problem on incoming calls from skype, try to set your skype to Auto-Answer mode in preferences.
Others
There's also a mac_client for debug purpose:
make mac_client ./mac_client

