Extensibility is one of the greatest strengths of XMPP, the IETF standard protocol on which Google Talk is built. While XMPP itself defines a bare set of features, the protocol encourages third parties to develop their own extensions. During the development of Google Talk, we found it useful to define extensions to implement features not already found in XMPP or any of its currently defined extensions.The protocol defined in these documents are currently used by the Google Talk clients and servers. However, note that these extensions are not currently part of a proposed stanzardized extension, and therefore may change as we work to standardize these features.
Google Talk XMPP Extensions
The following table lists several non-standard XMPP extensions used by Google Talk. Some of these extensions may become proposed XEP extensions in the future, but consider these to be Google-specific for now. They are documented so that you can design a client that can take advantage of specific Google Talk features.
|User Settings||Enables a client to make and query client settings handled by the server.|
|Off the Record Chats||Enables a client to turn off server-side logging for individual conversations, and alert clients to turn off client-side logging as well.|
|Jingle Server Discovery||Returns a list of servers that a client can use to connect a Jingle session.|
|Gmail Notifications||Enables a client to request notifications when their Gmail account receives a new email, or to query for unread emails.|
|Shared Status Messages||Enables multiple client instances to share a central list of status messages.|
|Extended Contact Attributes||Sets or retrieves additional information about roster members.|
|JID Domain Discovery||Enables a client to sign into the Google server using either the gmail.com or googlemail.com domain.|
|Voicemail||Enables a client to send voicemail messages to other chat clients.|
|OAuth 2.0 Authorization||Enables clients to use OAuth 2.0 when logging in.|