Deconstructing The Skype Mobile Client for J2ME
Various people today on Jaiku and Twitter pointed me at the mobile Skype client for J2ME handsets. Several Nokia, Motorola, Samsung, and SonyEricsson phones are supported. I spent some time playing with it, looking at network traces, and doing some other snooping around to see what it does.
This isn’t a native Skype client. Not even a little tiny bit. While there are plenty of tell-tale signs that this client isn’t native Skype, the most obvious being voice calls go over the PSTN network, the most telling sign is when you put the Skype Mobile client through a packet analyzer.
Unlike my Mac client, which was sending traffic directly to my two friends I was chatting with at the time, all traffic to and from my mobile phone was a single TCP connection to a third, unrelated IP address. The IP address pointed to a Cogent Data Center that was in an IP range that belonged to Skype.
Is this a bad thing? Probably not. The good news is that the client does do some encryption of the traffic, i.e. IM traffic isn’t flying around in the clear. How strong that encryption is is beyond my capabilities.
Yes, the client does IM. On my Nokia handsets, it’s not perfect. When you type in IM, your screen is completely obscured by the text window that pops up. Lots of J2ME apps do that. It’s annoying. However, it seems to support multiple IM sessions, accepting contact requests, and most of the other basic features of Skype.
The “strange” part of this is making actual calls, be they to Skype contacts or to actual PSTN numbers. When you click on a person to call, you can call them over Skype or one of their telephone numbers.
The actual call occurs over the PSTN channel. Instead of calling the person’s normal phone number, you are redirected through a Skype PSTN gateway of some sort. In my case, I was being told to call a number in +1 813-527-xxxx. I tried a couple of contacts and each one seems to have been assigned a different number. I will try dialing these numbers later to see what happens.
What’s nice about these calls is that the calls take into account whatever your Skype calling plan is. So, for example, if I use Skype from my mobile to dial a PSTN number in Canada, the call is free as I have the Unlimited US/Canada plan. If I call someplace outside of the US and Canada, I am charged the normal Skype rate. If I call someone’s Skype username, it’s free of course.
Now what if someone calls me while I’m on Skype Mobile? The call comes in over the normal voice channel and is charged to me according to whatever Skype calling plan I’m on. In my case, it means it does not cost me any extra Skype credit to receive a call.
Of course, in both cases, I am using minutes with my mobile carrier, so I have to pay for those. But it’s no more expensive than a domestic long distance call for me, which are essentially mobile phone minutes.
While there are some bugs here and there with the chat portion, and I could suggest a few UI changes, overall I am very pleased with this client, considering it’s a first release. Hopefully they do a native S60 client, which should improve some of these issues as well as provide better integration with dialing phone numbers.
Bookmark with: del.icio.us Digg it Furl iFeedReaders ma.gnolia Maple.nu RawSugar reddit Simpy StumbleUpon
Tags: j2me, Mobile phone, skype, telecom, Telecommunications Fnord

Comment by spg
this looks a lot like iSkoot. this is a good model for ‘airtime countries’ places like north America and china were cell phone service is sold in airtime units for inbound and outbound calling. on the other hand in much of the world(europe comes to mind here) the driving interest in mobile VOIP is about bypassing the high termination charges for cell phone calls by using data instead. also i am quite curious about which countries they have the local ‘break-in’ numbers for; clearly unlike a data plan based client this only work for outbound if skype has numbers in your country.
what makes the 3 skypephone so unique and interesting has nothing to do with technology but with the unique business model. you buy the phone and than all skype calls are free of charge in any country with a 3 network. there is still no way to get that deal on any other phone/carrier.
any prediction about the possibilities of a future ’skype GSM SIM card?’ i am thinking a totally carrier neutral roaming SIM. you would pay a per country roaming charge but 100% of calls would terminate via skype and akypein would be your inbound numbers.
Comment by spg
i am curious about something. have you noticed whether or not the gateway ‘answers’ the call? put another way are you charged on your cell phone bill for calls that do not get connected(busy signals, no answer, ect.)? ideally the gateway should only ‘answer’ after the other end of the call is successfully connected. but often things do not work that way with third party calling systems.
it would both cost skype less(in connection charges on flat rate plans they do not receive any additional per call revenue from) and likely improve call quality(by way of passing through fewer codec conversions) to have domestic calls dial out directly even if selected from the skype contact list.
Comment by PhoneBoy
@spg I don’t know if Skype will ever have a SIM card, though it’d be interesting if it did.
As far as the gateway “answering” the call, I don’t know. I don’t have direct access to my mobile phone bill as it gets sent direct to Nokia and I never see it. In terms of “domestic” calls, if you don’t want the call to pass thru Skype’s infrastructure, even for a domestic call, don’t make the call through Skype.
Funneling a call through Skype also masks my Caller ID, which is a side benefit.
Comment by lj
Here is a tip I have discovered while playing with this if you want to use a landline phone(or any other phone).. At the login screen where it asks for your “mobile” phone number put the number you want to call the access number from. When you get the prompt asking for permission to dial use the phone you just specified to dial the number. Then click “no” on your mobile. Great if you don’t have “free” cell minutes.
Comment by PhoneBoy
@lj that’s actually a great hint!
Pingback by Deconstructing The Skype Mobile Client for J2ME
Pingback by Deconstructing The Skype Mobile Client for J2ME
Pingback by Skype J2ME - Miranda IM Forums