English | Site Directory

Google Talk for Developers

Open Communications

Google's mission is to make the world's information universally accessible and useful. Google Talk, which enables users to instantly communicate with friends, family, and colleagues via voice calls and instant messaging, reflects our belief that communications should be accessible and useful as well. We're committed to open communications standards, and want to offer Google Talk users and users of other service providers alike the flexibility to choose which clients, service providers, and platforms they use for their communication needs.

Client Choice | Service Choice | Platform Choice

Client Choice

  1. What is "client choice" and how is Google Talk enabling it?
  2. Which other clients can connect to the Google Talk service?
  3. I am a developer of an IM client. How do I connect to the Google Talk service?
  4. Do you plan to support other real time communication protocols?
  5. What protocols are used for voice calls?
  6. Which voice codecs do you support?

1. What is "client choice" and how is Google Talk enabling it?

In addition to the Google Talk client, there are many other clients out there that provide a great communications experience. We believe users should have choice in which clients they use to connect to the Google Talk service and we want to encourage the developer community to create new and innovative applications that leverage our service. To enable this, Google Talk uses the standard XMPP protocol for authentication, presence, and messaging.

2. Which other clients can connect to the Google Talk service?

Any client that supports Jabber/XMPP can connect to the Google Talk service. Here's a list of popular clients.

3. I am a developer of an IM client. How do I connect to the Google Talk service?

As long as you adhere to the requirements of the XMPP specs, you should be able to connect to the Google Talk service.

You need to know the following:

  • The service is hosted at talk.google.com on port 5222
  • TLS is required
  • The only supported authentication mechanism is SASL PLAIN

4. Do you plan to support other real-time communication protocols?

Google Talk supports XMPP with the beta release. We plan to support SIP in a future release. Additionally, we will evaluate other protocols as appropriate, to continue to deliver on our commitment to open communications.

5. What protocols are used for voice calls?

Google Talk uses extensions to XMPP for voice signaling and peer-to-peer communication. Source code and documentation for these extensions is now available.

In addition, these extensions are in the process of being reviewed by the XMPP standards body as official enhancements (known as XEPs) to the standard. Note that the source code for Google Talk's current implementation of these extensions varies slightly from the proposed specs. Upon ratification of the specs, Google Talk (and the source code) will be updated to be in full compliance.

In the future, we plan to support SIP signaling as well.

6. Which voice codecs do you support?

Today, Google Talk supports the following standard voice codecs: PCMA, PCMU, G.723, iLBC, and Speex. We also support codecs from Global IP Sound: ISAC, IPCMWB, EG711U, EG711A.


Service Choice

  1. What is "service choice" and how does Google Talk enable it?
  2. Whom are you federating with?
  3. Do service providers need explicit approval to federate with the Google Talk service?
  4. Do you plan to support other industry standards for communications interoperability?
  5. Where can I get more technical information about federating with the Google Talk service?

1. What is "service choice" and how does Google Talk enable it?

Service choice is something you have with email and, for the most part, with your regular phone service today. This means that regardless of whom you choose as your email service provider (Gmail, Hotmail, Yahoo! Mail, your school or ISP, etc), you can email anyone who is using another service provider. The same applies to phone service. You can call someone even if they do not use the same phone company as you do. This allows you to choose your service provider based on other more important factors, such as features, quality of service, and price, while still being able to talk to anyone you want.

Unfortunately, the same is not true with many popular IM and VOIP networks today. If the people you want to talk to are all on different IM/VOIP services, you need to sign up for an account on each service and connect to each service to talk to them.

The Google Talk network supports open interoperability with hundreds of other communications service providers through a process known as federation. This means that a user on one service can communicate with users on another service without needing to sign up for, or sign in with, each service.

2. Whom are you federating with?

We currently support open federation with any service provider that supports the industry standard XMPP protocol. This includes Earthlink, Gizmo Project, Tiscali, Netease, Chikka, MediaRing, and thousands of other ISPs, universities, corporations and individual users.

3. Do service providers need explicit approval to federate with the Google Talk service?

No, there is no paperwork involved. Service providers just need to support the XMPP standard for server-to-server federation and their users will be able to talk to our users (and vice versa).

4. Do you plan to support other industry standards for communications interoperability?

Yes, we plan to support SIP.

5. Where can I get more technical information about federating with the Google Talk service?

If you are building your own XMPP service, refer to the XMPP specs. If you are using a commercial or open-source jabber server such as ejabberd, then federation should just work. One important thing to note is that we use dial-back for authentication.

If you have any other questions, feel free to post to the Google Talk Interoperability Google Group.


Platform Choice

  1. What is "platform choice" and how does Google Talk enable it?
  2. What platforms does Google Talk support?
  3. Do you plan to support the Google Talk client on other platforms?

1. What is “platform choice” and how does Google Talk enable it?

Platform choice means that you can connect to our service using the operating system and device of your choice. Google Talk enables platform choice by letting users of other operating systems connect to the Google Talk service using other IM clients.

2. What platforms does Google Talk support?

The Google Talk downloadable client is available for Windows. The Google Talk Gadget is a web-based application and is supported by most browsers on any platform. Chat in Gmail is also web-based, and is integrated into the Gmail interface. Finally, you can connect to the Google Talk service using one of many third-party clients.