Posts Tagged ‘skype’
Russian engineer claims to have reverse engineered older version of Skype
Via Dan York, we find a post on http://skype-open-source.blogspot.com/:
Skype protocol reverse engineered, source available for download
UPDATE: Here’s the Github page for it:
https://github.com/skypeopensource/skypeopensource/downloads
Hands on with SipToSis SIP / Skype gateway
I’ve known about SipToSis for quite a while but I’ve never worked up the energy to experiment with it. I finally thought it was about time to do so.
When I first considered all the moving pieces to getting it working, I gave myself about a 25% chance of success. To make it even more challenging, I decided to try to set it up on an Ubuntu Linux VM running under VirtualBox on Mac OS X.
Well, to my pleasant surprise, the whole thing went swimmingly well. I followed the excellent SipToSis Linux Tips documentation on the SipToSis site and it all went smoothly. The first trick is to find a static version 2.1.0.81 download of Skype for Linux – to ensure compatibility with SipToSis. (I can’t put a link here because it moves around and I don’t think anyone is allowed to host it officially – you have to get Skype from Skype’s own website.)
Once the proper version of Skype is installed, it’s just a matter of setting it up to use the snd-dummy fake sound drivers and getting SipToSis installed and configured.
The Skype wire protocol is not open nor documented, so one cannot simply connect to Skype directly via the network from a third-party program. Third party apps can, however, interact with the running Skype (binary) process on the same machine via an inter-process communications API. So to use SipToSis, you first start the normal Skype application on the machine and then start the SipToSis application (on the same machine) – SipToSis then connects to the Skype application via the inter-process communications API (on the same machine) to manage calls on the Skype side via the Skype App, while speaking the open-standard SIP protocol on the other side directly.
In this basic configuration, there is one instance of Skype running, with one Skype username, which means it’s basically a one-channel gateway, one call at time. The call flow for a call from SIP to a Skype user looks like this:
Note that SipToSis and Skype (representing the running Skype App) are shown inside one box because they are on the same machine, not connected over the network. The arrows inside that box, between SipToSis and the Skype App, represents Skype API inter-process communication – not network traffic. The other arrows in the diagram, the arrows between boxes, represent network traffic flows,where those elements could be on the same machine, or on a separate machine across the room or miles way. The Skype user SkypeUser will see an inbound call from the user that was used to sign in with the Skype instance that SipToSis is attached to. All calls will appear to originate from the same Skype user in this simple single-channel setup.
The SipToSis app talks SIP protocol directly on one side and uses the Skype App on the other side as a “black box” to speak the proprietary, undocumented, Skype protocol.
As shown above, I have SipToSis registering to a SIP proxy, where I can send calls from SIP to Skype via SipToSis – in this case, I have speed-dial codes that I dial from a plain handset that place Skype calls to specific Skype users, but depending on your SIP proxy/PBX capability (and your skills) you could setup click-dial or SIP uris, perhaps something like sip:skype-{username}@mypbx.com that ring through to the specified user on Skype.
Inbound calls from Skype work just the opposite of the diagram above, where SipToSis is configured to forward inbound calls arriving from Skype to a specified SIP address (if you’re connecting to Asterisk, that means an extension on the PBX).
As mentioned previously, my setup has just a single instance of Skype running and, therefore, provides only one Skype gateway channel, supporting just one Skype-to-SIP or SIP-to-Skype call at a time. The SipToSis website has documentation about running multiple SipToSis and multiple Skype instances and even chaining multiple Skype accounts so you can advertise a single Skype Userid and still take multiple incoming Skype calls. Based on my experience with SipToSis so far, I have no doubt this stuff actually works. However, it’s way more than I want to mess with – and Skype is a pretty heavy, resource intensive app – you would want to have a pretty beefy machine to run multiple instances of it. The SipToSis site has some information on performance on various hardware and OSes running multiple Skype users.
Overall, SipToSis is quite cool. Skype charges $6.95 per month per channel for a SIP PBX interface that only allows inbound calls (from Skype) and calls from the PBX to SkypeOut (paid calls) – it does not support calls from the SIP PBX to Skype users, as SipToSis does. Why Skype still doesn’t offer (preferably FREE) SIP support after all these years is just sad, but it’s nice to see third-parties like the SipToSis folks putting together practical solutions like this. The fact that it is cross-platform, and runs on Linux (and even under a VirtualBox VM), is very impressive and greatly improves the server-friendliness and cloud-based friendliness of SipToSis.
SipToSis is not quite for the mainstream, but it does work, and if one follows their excellent documentation, it’s not that hard to setup (assuming you already have the SIP side in place, or why would you want SipToSis in the first place). If you already have a machine available, why not run SipToSis rather than pay Skype $6.95 per month for the same thing (whether you use it or not) – plus, if you want to call Skype users from SIP, SipToSis will do that, where Skype’s own product won’t.
A few notes:
- Since you must have Skype running to use SipToSis, and Skype is a GUI app, you need X Windows setup on the machine where you want to use SipToSis. This was not a problem for my simple test case, but it could be an issue on a real server setup running in a data center. The SipToSis docs talk about running Xvfb in the “background” but I didn’t test that trick.
- I had to remove the pulseaudio drivers on my Ubuntu machine to get this working
- Because I wanted to test it on a lightweight setup, I only gave the VM 512MB of RAM – and it works – impressive
- SipToSis needs Java – I used Java 6.
As Stuart notes, Skype iPhone multitasking is borked
Being able to have Skype on the iPhone run in the background is cool. However, as Stuart notes in his post Skype iPhone Multitasking Not Ready for Prime Time, there are problems in practice.
The biggest problem is your battery. Once you run Skype, it will keep running, and sucking up your battery. Instead of 5-6 hours of usage on my 3G S, with Skype in the background, I was getting more like 2-3 hours. As Stuart notes, the only way to stop it is manually from the iOS 4 multitasking (double-click) feature.
Skype should have a way to turn on/off multitasking from within the app itself. And as Stuart notes, when it is running in the background, you get barraged with notifications for everything and you have no controls over those notifications, short of quitting the Skype app from the multitasking bar.
The short of it is, if you start the Skype app, you probably want to double-click to kill it so it doesn’t kill your iPhone’s battery.
Skype grossly over hyped, even with the Verizon deal
Ok, short and sweet here.
The recent hype about Skype, and in particular surrounding the Verizon deal has been blown WAY out of proportion, IMHO. It’s time to set perspective here.
First, Skype was supposed to have killed off traditional telecom by now. Last I checked, that hasn’t happened (still a trillion dollar business). In fact, Skype actually PAYS traditional telecoms a significant amount per month, thus helping them stay in business.
Second, Skype was supposed to revolutionize everything. Ok, they’ve done some cool stuff, especially if you like video. And they introduced the world to HD Voice. On the other hand, if you look at where Skype gets revenue, oh gee, it’s from traditional telecoms services – like phone calls, and phone numbers, and voicemail! Where is the new and revolutionary business model? At the end of the day, Skype is not all that different than other Chat applications with Voice and video.
Third, lets not forget that Skype still is a black eye for E-bay and (now candidate for Governor of California) Meg Whitman. Meg paid (at least) $3 billion US in 2005, then wrote off $900 million. And of course now E-bay sold 65% of Skype to a PE group at a valuation of roughly $3 billion. That’s zero percent growth in valuation over 5 years. Not quite the wonderful story it’s perceived to be. What’s more, not only did it not appreciate in value, but Skype added no strategic benefit for Ebay either – it was simply a distraction- a bad deal all around.
So before we go rewriting history, and (once again) claiming how Skype will tear down the telecoms world, maybe a little grounding in fact is in order.
Vonage World versus Skype Unlimited World
Below is a run down of what’s different between the Skype “Unlimited World” plan compared to the new “Vonage World” plan.
| Country | Skype Unlimitied World |
|---|---|
| Andorra | N/A |
| Bahamas* | N/A |
| Bahrain | N/A |
| Brazil | N/A |
| Brunei* | N/A |
| Cyprus | N/A |
| Dominican Republic | N/A |
| Georgia | N/A |
| Guadeloupe | N/A |
| Guam* | landlines |
| Iceland | N/A |
| India* | N/A |
| Iraq | N/A |
| Jordan | N/A |
| Kenya | N/A |
| Latvia | N/A |
| Macau* | N/A |
| Macedonia, Republic of | N/A |
| Malaysia* | landlines |
| Malta | N/A |
| Mexico | landlines in Mexico City, Guadalajara and Monterrey |
| Monaco | N/A |
| Peru | N/A |
| Puerto Rico* | landlines |
| Romania | N/A |
| Russia | landlines in Moscow and St.Petersburg only |
| Saipan* | N/A |
| San Marino* | N/A |
| Slovenia | N/A |
| South Africa | N/A |
| Turkey | N/A |
| U.S. Virgin Islands* | N/A |
| Venezuela | N/A |
| Zambia | N/A |
This table only lists the countries where there are differences between the plans (specifically, where the Skype plan lacks coverage, since there are no countries included in the Skype plan that are not also included in the Vonage plan). For instance, the “Vonage World” plan includes landlines and mobiles in Puerto Rico whereas the Skype “Unlimited World” plan only includes landlines in Puerto Rico. Likewise, the Vonage plan supposedly includes all landlines in Mexico, while the Skype plan includes only landlines in Mexico City, Guadalajara and Monterrey.
Both plans include the following countries with (apparently) equal coverage: Argentina, Australia, Austria, Belgium, Bulgaria, Canada*, Chile, China*, Colombia, Croatia, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hong Kong*, Hungary, Ireland, Israel, Italy, Japan, Luxembourg, Netherlands, New Zealand, Norway, Poland, Portugal, Singapore*, Slovakia, South Korea, Spain, Sweden, Switzerland, Taiwan, Thailand*, United Kingdom, United States*
Both plans have hidden limits. For the Vonage plan, the limit is 5,000 minutes per month (section 5.4 of the TOS http://www.vonage.com/tos/index.php). For Skype, the limits on this so-called “unlimited” plan are “10,000 minutes per user per month, with a maximum of 6 hours per day. Also, no more than 50 different numbers in total can be called per day” (see http://www.skype.com/legal/terms/fair_usage/).
The Vonage World plan is $24.95/mo while the Skype plan is $12.95/mo. They are apples and oranges to a degree, as the Vonage service includes a phone number and hardware box and is used with a regular phone (no need to leave your computer on all the time to receive calls and no need to use your computer to place calls). The Skype service requires that you place calls using your computer and it does not include a number for receiving calls. Vonage is meant to replace a standard landline and work with a regular telephone while Skype is just for use on your computer. But that’s not the topic of this post, which simply compares the countries included in the two plans for outbound calling.
If you’re calling the countries listed above, you probably know how much those countries cost to know whether this plan would benefit you. I would guess that India and Mexico would be the big draws, as there are few flat-rate plans offered to these countries and per-minute rates are significant.
- Data taken from websites as of Sept. 12, 2009. http://www.vonage.com/residential_calling_plans/vonage_world/ and http://skype.com/allfeatures/subscriptions/uscanadaworld/
- * indicates calls to mobile phones included, otherwise only calls to landlines are included and calls to mobiles are outside plan (cost extra)
Wishlist for hypothetical replacement P2P Skype core
SkypeJournal speaks about the JoltID conflict. The post has lot a lot of good analysis of the legal battle and I encourage you to read the original post.
Phil also suggests it’s an opportunity for a new P2P core for Skype, listing a number of possible improvements. I second that list, but let me also add a few things I’d like to see in a new Skype P2P core:
- Published protocol specs, whether a open-standard or proprietary protocol, supporting network-layer interoperability (whether free or licensed).
- Less obfuscation, especially in terms of security.
- Ideally, open-source or or at least published peer-reviewed source.
Frankly, having the original founders of Skype out of the picture is probably ultimately a good thing for the Skype community and the Internet at large. It’s unbelievable that Ebay made a multi-billion dollar deal and still didn’t obtain control of the technology. I expect that will go down in textbooks some day as one of the dumbest (or smartest, depending on which side of the table you sat on) negotiations of all time.
Rejected by Skype
I didn’t make the grade. They’re not going to let me play with “Skype for SIP”.
I guess I’ll find a way to make it through another day, somehow.
Skype for iPhone challenged by limitations
Apple’s decision to not allow “background” apps and AT&T’s decison to not allow voice calls over their network, severely limit the utility of Skype’s iPhone application.

No calls unless you can get Wifi.
In general, incoming calls are impractical, even if you’re on wifi, since the Skype app has to be the one and only active app in order to receive calls. If you’re doing something else on the phone, like browsing or checking email (or twitter), you cannot receive calls.
In test calls, I found the app unreliable even when all the conditions are met. Trying to call the iPhone Skype from a PC, the calling side just continued to ring, even after I answered the call on the iPhone. The Skype for iPhone app then seemed “frozen” where I couldn’t end the call or do anything except hit the big button.
When calls did connect (requires the iPhone to be connected via Wi-fi), the call quality was fine.
Not being able to make Skype calls except when connected to wi-fi is a pretty big limitation for me. Ironically, when a friend had to call their wife on Skype in Costa Rica recently, I had to let them use PhoneGnome and OpenSky on my iPhone to do so, because that was the only combination that worked on iPhone without wifi.
Amen to Michael Robertson in note to Skype
Andy refers us to a letter Michael Robertson (CEO of Gizmo) sent to Chris Libertelli at Skype. In part, it says:
[in regards to Skype demanding that wireless companies open their networks], Skype’s actions do not mirror their words to the commission which diminishes credibility for Skype to demand openness.
…
It appears that when it is convenient for Skype’s business objectives Skype waves the flag of openness, at the same time conveniently ignoring competitors requests for openness.
Here, here. You can read the entire letter over at Andy’s site.
Skype’s future
The Financial Times has stirred up the blogs with their story regarding statements by Ebay CEO John Donahoe hinting that Skype may be sold off if they can’t find “synergies”. Gigaom suggests that a divestment is the right thing to do.
You may recall that the original “synergy” argument used to justify the phenomenal valuation was geographical, that Ebay was dominant in the U.S., but not so outside the US, while Skype was strong outside the U.S. but not so much within the U.S. I think Ebay mostly cared about the impact Skype could have on eBay’s market share of its auction business outside the U.S. (but they did give lip service to how eBay would also help Skype become more popular in the U.S.) In 2005, the brass ring was China – but ultimately Skype didn’t help and Ebay had to shut down in China and partner with a competitor. Valleywag said of this “Skype’s failure to strengthen eBay in China, more than anything, is why the company had to take a writeoff.”
I reviewed the progress towards Ebay’s goals for Skype fifteen months ago in the post “Skype luster fading” and concluded then:
At some point, for this deal to pay off, 2+2 has to equal a lot more then 4, and at this point, that’s not happening.
I stand by that statement today. Even with Skype’s healthy growth and real revenue, the “synergies” are not there and I think the CEO’s comments are preping Wall Street for a future sell-off of the Skype division.
The question then becomes, who will be interested, and at what price? Skype is a healthy business. By “normal” valuation, it is a half-billion dollar company, but I’m sure someone will pay a lot more than that for it. Everyone is pointing at Google, but I’m not sure it is a good fit for them – they would have to swallow some Gtalk pride and they may not be willing to do that. A telco could buy it to shut it down. Nokia could buy it – that would be interesting. Stuart suggested Apple, but that isn’t going to happen (too much NIH at Apple). Who do you think should buy Skype and what will the price be?
Subscribe to RSS

