Big Blog

Find company updates, big product releases, and some of our most popular posts

Share

Share

Under the Hood with Facebook Video Calling, Powered by Skype

Yesterday, Facebook and Skype launched Facebook video calling, powered by Skype, which allows users to call and see each other right from facebook.com. At Skype, we are super excited about this product, which we closely collaborated with Facebook on many of the parts of the solution in a true team effort. We think users will love its ease of use and simplicity. It combines the quality and scale of Skype video calling with the social experiences of Facebook in a way that we believe makes for a powerful combination.

Without a doubt, techies around the world will want to know how we did it. How did we integrate Skype and Facebook? Will it scale? Does it use the Skype client?

The first step of the user experience is on facebook.com. While looking at the profile page or while in a chat, users will now see buttons which allow them to initiate a video call with their friends. Those buttons are rendered as part of the Facebook Web page. When a user clicks on the “call” button, the page will check for the existence of the Skype video calling software, which is an optimized version of Skype’s desktop software that powers the video calling experience; we call this the plug-in. If the Skype plug-in hasn’t been used before, the user is prompted to install it. Facebook’s servers interact with Skype’s technology through a proprietary REST API that we have developed. Through that API, Facebook automatically creates an anonymous Skype account for new callers (or ‘callees’). Our REST API also allows Facebook servers to obtain a login credential that can be used to log the user into Skype using the anonymous account.

The plug-in is in essence, a miniature version of the Skype client. We’ve optimized the Skype client for Facebook by removing most of the user interface and eliminating many of the features that are not needed for the Facebook application (e.g., Skype instant messaging). Our plug-in is actually composed of two distinct parts. One is the runtime, which is a standalone miniature Skype client, and the other is an actual browser plug-in. The runtime provides some simple APIs through an RPC mechanism, and the browser plug-in delivers those APIs in JavaScript for access within facebook.com. Despite its compact size and simplified UI, the runtime is Skype in all ways that matter. Our peer-to-peer technology, our firewall and NAT traversal protocols, our video and audio codecs, our media processing engine – everything that makes Skype wonderful – is there, in the runtime.

Once the plug-in has been downloaded and installed, and the caller logged into it anonymously (a process which happens automatically – invisibly to the user), a handshake takes place through Facebook’s server infrastructure. This handshake alerts the ‘callee’ that the caller wishes to call them. By using Facebook infrastructure for this, we allow calls to be initiated prior to installation of a plug-in on the callee’s computer. Together, we believe this brings real virality to this feature and reduces the barriers between people communicating.

The user interface you see for the video itself is rendered by the Skype runtime. It’s the same video quality you’d expect from a normal Skype video call, since it is a normal Skype video call. It just happens to be invoked from within Facebook, and uses a slim UI.

One of Skype’s challenges in providing this functionality was scale. Even though Skype leverages its P2P technology to help achieve scale, we still rely on server infrastructure for several parts of the solution. To handle all of this, Skype has substantially increased server counts and added bandwidth in all of our data centers. The actual voice and video traffic utilizes Skype’s global P2P network, allowing for great quality without needing thousands of expensive servers. Together, we’ll be rolling the new capability out over the next week or so and carefully monitoring load and quality as we go. As a result, some of you will see video calling buttons on Facebook, and others will not. If you see those buttons, please go ahead and click on it – you’ll be able to call anyone on your Facebook friend list.

We think this is awesome technology. We’ve combined everything that makes Skype great – our quality, our P2P technology, our scale – with the world’s number one social property on the Web, and brought those two things together in a completely seamless way.

We hope you enjoy it!

4 thoughts on “Under the Hood with Facebook Video Calling, Powered by Skype

  1. madbee41 said 3 years ago

    I think this is awesome….. I am on FB and in Skype very day, so having the interaction fr video calling from within both is just the best!!!! Thanks guys!!!!

  2. vamatx said 3 years ago

    I have a Motorolla Droid X, the FB’s Skype working w/ DROID?
    Thanks …
    Cesar Castellari
    vamaequi@gmail.com

  3. hangchazone said 3 years ago

    wow…. m really excited to use this.. thnks a lots for adding this facitlity…

  4. bjf2000 said 3 years ago

    Do the “substantially increased server counts” mean that offline messaging, a new feature in 5.0, will be making its return? It’s been out of commission since December.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s