“Presence” is the Jabber term for letting other people know that you are online, and additionally how “available” you are. There are three elements to presence: availability status (called “show”), status message, and priority.
Your show status may either be empty (meaning simply “online”), or
“away”, “extended away” (i.e. away for an extended period), “do
not disturb”, and “free for chat”, respectively. This information
is available to everyone subscribing to your presence, but technically
it does not restrict anyone's actions. You can chat with people even
if you claim to be away.
The status message is a short text complementing your show status, such as “at home”, “working”, “phone”, “playing games” or whatever you want. It is sent to everyone subscribing to your presence, but not all clients prominently display it to the user.
The priority is only interesting if you are running more than one Jabber client at a time accessing the same account. In that case, messages sent to you without an indication of which client to send to are sent to the client with the highest priority.
To set your presence, use the function
It can be called both interactively and in Lisp code. For the latter
case, use something like
(jabber-send-presence "away" "idle for
10 minutes" 10).
By default, jabber.el sets your presence when you connect. If you
want it not to do that, remove
jabber-post-connect-hook. If you want to change the
presence that is sent, change the variables
With jabber.el, you can set your presence remotely. See Ad-Hoc Commands.
You can send “directed presence” with M-x jabber-send-directed-presence. This is mostly useful to manage transports—sending directed presence is a way to turn them on and off. You can also send directed presence to an annoying contact to appear as away or offline to that contact. Note, however, that in both of these cases, all subscribed entities will get your next global presence update.