Jabber Identifier

from Wikipedia, the free encyclopedia
Scheme of a Jabber identifier

A Jabber Identifier ( JID for short ; also Jabber ID ) enables the addressing of an " entity " (here a real user , a bot , an XMPP server , a service or a mixture of the above) within an XMPP network.

It has the shape alice@example.com/homeand is reminiscent of an email address :

  • The first part of the address is the node (here alice), which specifies a user name. This is optional, but it is missing i. d. Usually only for servers or services.
  • This is followed by @the domain (here example.com, alternatively also IP address ), which determines the XMPP server on which the account is registered.
  • Also optional is the specification of a resource (here home) that /follows a. This character string is freely selectable by the user.

resource

A resource is a freely selectable character string with which you can, for example, specify where you are currently logged in from (e.g. pdaor office). With the help of this resource, the server can make a distinction so that a user with the same JID can be logged in from several computers.

In the case of incoming messages, a priority value is used to determine which client the message is to be delivered to, if the exact destination is not already determined by the resource. This priority value is set by the user of the JID in the clients , with larger numbers having priority over smaller numbers. The valid range is from −128 to +127. Negative values ​​have a special meaning: Clients with negative priority do not receive any messages that are not explicitly addressed to them via the resource ID. The user of the account also appears offline if no client with a non-negative resource is online. This behavior is useful for bots , for example .

URI scheme

The Internet standard IRIs and URIs for XMPP exists for linking JIDs , which is available from the IETF as RFC 4622 . This was preceded by the XMPP Extension Protocol 147.

These links offer enormous potential for controlling clients . They start with the prefix xmpp: followed by the JID:

xmpp:alice@example.com?message

Such a link instructs the client alice@example.comto open a message window. This ?messagecan often be dispensed with as this is the standard action. This information is not to be confused with

xmpp://bob@example.com/

with which logs bobon to the server example.com.

The following link combines the two above, which bob@example.comlogs in and opens a message window to Alice:

xmpp://bob@example.com/alice@example.com

The XMPP registrar also defines a large number of "queries" - that is, by means of ?separate commands - through which actions such as "add user", "join conference" etc. can be linked.

Transport conventions

If XMPP transports are used, there are often specifications for how the namespace of the addressed protocol is mapped to the node part of the JID. While the @ sign and the domain in the JID fulfill their function as usual and address the desired (transport) server, the node portion of the JID is extended protocol-specifically. Usually the @ -sign of the target address of the legacy protocol is replaced by a% -sign in order to preserve the uniqueness of the URI components.

An example of the IRC protocol:

#lobby%irc.gentoo.org@jabber.co.uk
conan%irc.gentoo.org@jabber.co.uk

Here jabber.co.uk is asked to send a message to the room #lobbyon the IRC server irc.gentoo.org. In the following line there is a possibility to send the known "queries" - that is, user-to-user messages.

Other identified identifiers

  • Telephone numbers result when receiving (possibly also when sending) SMS via SMS2Jabber services as follows:
+4917234567890@aspsms.swissjabber.ch
  • ICQ numbers are specified directly as a node.

Jabber email headers

In order to be able to specify a Jabber address in sent e-mails - so that e.g. For example, the online status of the other party can be displayed in the mail program - the proposal for the Internet standard "The Jabber-ID Email Header" was submitted. With this it is enough z. B. for Alice

Jabber-ID: alice@example.com

to be inserted as an additional email header . This is easy to do with almost any email client.

Web links

Individual evidence

  1. RFC 6122 to XMPP
  2. Examples for IRC transport identifiers