%ents; ]>
Client Webtabs A protocol for displaying web-based tabs in clients. &LEGALNOTICE; 0088 Deferred Informational Standards JIG XMPP Core JEP-0030 JEP-0049 webtab Richard Dobson richard@dobson-i.net richard@dobson-i.net 0.4 2004-03-14 red Added Terminology section and associated alterations and added clarification about what the webtabs are. 0.3 2003-09-30 red Moved service discovery to top of use cases, added option for separate webtab provider and added reference to JEP-0101. 0.2 2003-05-16 red Clean ups. 0.1 2003-03-02 red Initial version.

Webtabs are a way for servers to specify a number to web pages which can be used in clients and displayed like the web-based services in Yahoo Messenger, MSN Messenger and JIM. This enables a server administrator to easily create services for Jabber clients and also help to integrate Jabber clients with existing web-based applications.

The motivations for this JEP are:

&jep0030; SHALL be used for discovering support for webtabs on servers.

]]>

It is RECOMMENDED that the jabber server itself (JSM in jabberd) serves the webtab list, but if desired by the server implementor they MAY be served by a separate host/component.

]]>

The list of available web tabs is retrieved using the following protocol:

]]> http://tab.server.com/mail/ http://webtab.bookmarks.example.com/ http://calendar.example.com/webtab/ http://news.bbc.co.uk/webtab/ ]]>

The webtab contains CDATA which is the URL of the webtab, the webtab is an HTML page retrieved from an HTTP server using a standard browser which you embed into your client UI using a technique such as the IWebBrowser2 control interface on windows which allows you to embed either the IE or Gecko engines depending on what you have installed, this data is REQUIRED.

The "type" attribute tells the client what the service being provided is, this allows a client to display icons on the tabs to represent them, handling of the type in clients is OPTIONAL, inclusion of this attribute is REQUIRED (See "Jabber Registrar Considerations" for examples of values for this attribute).

The "name" attribute is the offical name of a particular service this can be displayed as the tab name, this attribute is REQUIRED.

The "id" attribute is a unique identifier for a service which you can use to refer to it later, used for when using private storage to store a preference to which tabs should be visible, this attribute is REQUIRED.

&jep0049; SHALL be used for storing webtab preferences.

]]> ]]>

The "id" attribute matches the "id" attribute from the list of webtabs, this attribute is used to match these preferences to the webtab in question, this attribute is REQUIRED.

The "visible" attribute tells the client that a tab SHOULD or SHOULD NOT be hidden, a client SHOULD provide an interface for managing the visibility of the tabs and updating the preferences appropriately, this attribute is REQUIRED.

It is RECOMMENDED that a mechanism such as &jep0101; be used for automatic service authentication.

The following guidelines may assist client developers.

It is recommended that JEP-0101 be used to provide transparent authentication of the webtabs.

No IANA interaction required.

The ®ISTRAR; will need to register the new namespace of "http://jabber.org/protocol/webtab" and possibly the list of offical types will need to be managed too.

Type Purpose
email Web based email
calendar Web based calendar
bookmark Web based bookmark management service
news General news headlines
news/sport Sport headlines