{jabber:user_id:action:style}

Description

Builds an XMPP/Jabber presence badge: an xmpp: link to the given address wrapped around a status image served by the legacy onlinestatus.org indicator at www.the-server.net. With no user_id it expands to an empty string. Note two source facts you should not rely on: the action parameter is accepted but unused by the current code (a leftover from the sibling ICQ and Yahoo commands), and the badge image host is a defunct third-party service, so the img will not load on a live page. The command still emits well-formed markup, so it documents the historical syntax; for a working contact link prefer a plain xmpp: anchor.

Parameters

user_id required

The XMPP/Jabber address (JID) to build the badge for, e.g. someone@jabber.example.org. When empty the whole command expands to an empty string, so it is effectively required. The value is placed verbatim into both the xmpp: link and the status-image URL.

action optional default call

Accepted for backward compatibility but NOT used by the current implementation - the code never reads it (a copy-paste leftover from the sibling ICQ and Yahoo status commands, where action is the click verb). Passing any value changes nothing in the output.

style optional default 0

Selects the badge size/icon variant by choosing the service port: the image is fetched from www.the-server.net on port 800 followed by this digit, so 0 uses port 8000, 1 uses 8001, and so on. The value is cast to an integer; non-numeric input becomes 0.

Examples

test[{jabber:}]
Expected[]
Actual[]
With no user_id the command short-circuits and expands to nothing, so the brackets close up empty. This is the one fully deterministic, non-markup case.
virtual{jabber:someone@jabber.example.org}
ExpectedJabber Online Status Indicator
Jabber Online Status Indicator">ActualJabber Online Status Indicator
Given a JID, the command wraps an xmpp: link around a status image fetched from the legacy onlinestatus.org host on port 8000 (style 0). The badge host is defunct so the image will not load, but the markup is well-formed. Marked illustrative because the output is raw HTML.
virtual{jabber:someone@jabber.example.org:call:1}
Expected
">ActualJabber Online Status Indicator
The third parameter (style) is cast to an int and only changes the service port to 800 plus that digit - here 8001 instead of 8000. Use it to request a different badge size. The second parameter is the action placeholder (see next example).
virtual{jabber:someone@jabber.example.org:anything}
Expected (action had no effect)
(action had no effect)">ActualJabber Online Status Indicator
A trap to know: the action parameter is accepted but never read by the current code (a leftover from the ICQ and Yahoo siblings). Whatever you pass here, the output is identical to the basic badge - the port still comes only from style, which defaults to 0 (port 8000).