%ents; ]>
Jingle Content Thumbnails This specification defines a way for a client to supply a preview image for Jingle content. &LEGALNOTICE; 0264 Experimental Standards Track Standards Council XMPP Core XEP-0096 XEP-0231 thumbs Marcus Lundblad ml@update.uu.se mlundblad@jabber.org &lance; 0.4 2015-08-26 ljts

Changed format to use generic 'uri' attribute to allow for 'https:' and 'http:' URIs in addition to BoB 'cid:' URIs.

Indicated that multiple thumbnails may be present.

Expanded scope of use cases to be Jingle content in general, not just file transfer.

0.3 2009-04-27 ml

Fixed typo in author's name :).

0.2 2009-04-06 ml

Add paragraph in security section about protecting against malicious thumbnail dimensions in offer. Fixed a typo.

0.1 2009-04-02 psa

Initial published version.

0.0.3 2009-03-10 ml

Split use-case section into "Introduction", "Requirements", and "Use case".

0.0.2 2009-02-25 ml

Removed service disovery. Added missing namespace on thumnail elements.

0.0.1 2009-02-23 ml

First draft.

When offering a Jingle session, it can be helpful to provide a small preview of the offered content to help the session responder decide whether to accept or reject the session.

This is particularly useful for file transfer content (especially image files), but can also be used for things such as video (e.g. using a still frame from the stream as the preview thumbnail), and even audio by using a small image of album cover art.

This documents defines a way to include a thumbnail image as an additional metadata in a Jingle content description.

When a client wishes to supply a thumbnail in a content offer, it can do so by including an extra <thumbnail/> element as shown in the following example:

image/jpeg image.jpg 3032449 552da749930852c69ae5d2141d3766b1 This is a test. If this were a real file... ]]>

Thumbnails MAY be included for Jingle content other than file transfer. For example, with Jingle RTP video a thumbnail could be included to show who is calling (either by capturing a still frame from the input stream or by using an existing profile image):

128 ]]>

Multiple <thumbnail/> elements MAY be included to provide thumbnails of different sizes, media types, or URIs.

If the provided URI has the scheme 'cid', then the thumbnail data MAY be requested using &xep0231;.

The following attributes are defined for the <thumbnail/> element.

Attribute Description Inclusion
uri A URI where the thumbnail data can be accessed (typically by using a URI scheme of 'cid:', 'https:', or 'http:'). If the URI scheme is 'cid:' then the identifier MUST refer to a bit of binary data as described in &xep0231; REQUIRED
media-type The value of the 'media-type' attribute MUST match the syntax specified in &rfc2045;. That is, the value MUST include a top-level media type, the "/" character, and a subtype; in addition, it MAY include one or more optional parameters. The "type/subtype" string SHOULD be registered in the &ianamedia;, but MAY be an unregistered or yet-to-be-registered value. RECOMMENDED
width The intended display width of the thumbnail image. Used as a hint for the receiving client to prepare the appropriate UI, such as a dialog window. OPTIONAL
height The intended display height of the thumbnail image. Used as a hint for the receiving client to prepare the appropriate UI, such as a dialog window. OPTIONAL

The inclusion of an image thumbnail may leak information about a transfer otherwise taking place on an e2e encrypted file transfer stream. A client MAY wish to not include a thumbnail.

A client MUST NOT rely on the values specified for the width and height of a thumbnail to allocate a bitmap data buffer for the thumbnail, to prevent possible DoS attacks. Also a client SHOULD apply implementation-specific limits on the thumbnails, if using these values to pepare a UI element for the thumbnail image, e.g. with dimensions of 128x128 pixels, values exceeding these would then be truncated and the thumbnail image scaled down when received.

This document requires no interaction with &IANA;.

This specification defines the following XML namespace:

  • urn:xmpp:thumbs:1

The ®ISTRAR; includes this namespace in the registry located at &NAMESPACES;, as described in Section 4 of &xep0053;.

&NSVER;
The protocol documented by this schema is defined in xxx ]]>