public class JabberPresenceMessage extends AbstractJabberMessage implements PresenceCode, JabberCode
This parses the presence message and makes it easy to retrieve the information. The Presence Message support X Namespaces and by default will add those X Namespaces into outgoing messages.
This is how presence works. You declare yourself to be available, then you can set your state to away, extended away, do not disturb, etc. If you set yourself unavailable, then no one will see you online (essentially, you are "invisible"). If you set your state to one of the mentioned states, then you can set a descriptive text by setting the status.
The type indicates what kind of presence this is, either to be available or unavailable, or if it's a subscription request.
The to and from are used to indicate where the presence is going to or where it's coming from, respectively. These two fields are not always available, depending on what the type is.
The show tells others about you current state, whether you are away, extended away, etc.
The status is the descriptive text that tells others what you're doing. You may put anything for status when you set yourself to away/extended away/do not disturb.
The priority is used when you have multiple logins. The "default" is the highest priority and will receive the private messages. Negative priority is a preference that the sender should not be used for direct or immediate contact.
Current Implementation: JEP-0018 Version 0.1
Conforms with: XMPP Presence protocol
TYPE_ERRORmessageIDSHOW_AWAY, SHOW_CHAT, SHOW_DO_NOT_DISTURB, SHOW_EXTENDED_AWAY, SHOW_ONLINE, TYPE_AVAILABLE, TYPE_INVISIBLE, TYPE_PROBE, TYPE_SUBSCRIBE, TYPE_SUBSCRIBED, TYPE_UNAVAILABLE, TYPE_UNSUBSCRIBE, TYPE_UNSUBSCRIBEDMSG_CHAT, MSG_INIT, MSG_IQ, MSG_IQ_AGENTS, MSG_IQ_AUTH, MSG_IQ_BROWSE, MSG_IQ_DISCO_INFO, MSG_IQ_DISCO_ITEMS, MSG_IQ_GATEWAY, MSG_IQ_LAST, MSG_IQ_OOB, MSG_IQ_PRIVATE, MSG_IQ_REGISTER, MSG_IQ_ROSTER, MSG_IQ_SEARCH, MSG_IQ_TIME, MSG_IQ_VACATION, MSG_IQ_VCARD, MSG_IQ_VERSION, MSG_IQ_XMLRPC, MSG_PRESENCE, MSG_UNKNOWN, MSG_X_DATA, MSG_X_DELAY, MSG_X_EVENT, MSG_X_EXPIRE, MSG_X_OOB, MSG_X_PGP_ENCRYPTED, MSG_X_PGP_SIGNED, MSG_X_ROSTER, PARSER_CHAT, PARSER_IQ, PARSER_IQ_AGENTS, PARSER_IQ_AUTH, PARSER_IQ_BROWSE, PARSER_IQ_DISCO_INFO, PARSER_IQ_DISCO_ITEMS, PARSER_IQ_GATEWAY, PARSER_IQ_LAST, PARSER_IQ_OOB, PARSER_IQ_PRIVATE, PARSER_IQ_REGISTER, PARSER_IQ_ROSTER, PARSER_IQ_SEARCH, PARSER_IQ_TIME, PARSER_IQ_VACATION, PARSER_IQ_VCARD, PARSER_IQ_VERSION, PARSER_IQ_XMLRPC, PARSER_PRESENCE, PARSER_X_DATA, PARSER_X_DELAY, PARSER_X_EVENT, PARSER_X_EXPIRE, PARSER_X_OOB, PARSER_X_PGP_ENCRYPTED, PARSER_X_PGP_SIGNED, PARSER_X_ROSTER, XMLNS_CHAT, XMLNS_ERROR_STANZA, XMLNS_ERROR_STREAM, XMLNS_IQ, XMLNS_IQ_AGENTS, XMLNS_IQ_AUTH, XMLNS_IQ_BROWSE, XMLNS_IQ_DISCO_INFO, XMLNS_IQ_DISCO_ITEMS, XMLNS_IQ_GATEWAY, XMLNS_IQ_LAST, XMLNS_IQ_OOB, XMLNS_IQ_PRIVATE, XMLNS_IQ_REGISTER, XMLNS_IQ_ROSTER, XMLNS_IQ_SEARCH, XMLNS_IQ_TIME, XMLNS_IQ_VACATION, XMLNS_IQ_VCARD, XMLNS_IQ_VERSION, XMLNS_IQ_XMLRPC, XMLNS_PRESENCE, XMLNS_STREAM, XMLNS_X_DATA, XMLNS_X_DELAY, XMLNS_X_EVENT, XMLNS_X_EXPIRE, XMLNS_X_OOB, XMLNS_X_PGP_ENCRYPTED, XMLNS_X_PGP_SIGNED, XMLNS_X_ROSTER| Constructor and Description |
|---|
JabberPresenceMessage()
constructs a default type of AVAILABLE
|
JabberPresenceMessage(java.lang.String type)
Normally used for creating an outgoing message
|
| Modifier and Type | Method and Description |
|---|---|
DelayXMessage |
getDelayMessage()
convenience method to retrieve the Delay X Message (you can get the message by calling getXMessage() as well)
|
int |
getMessageType()
the default message type is unknown.
|
PGPSignedXMessage |
getPGPSignedMessage()
Convenience method to retrieve the signature of the presence message
signed in PGP.
|
int |
getPriority() |
java.lang.String |
getShowState()
Retrieve the show string that is included with the presence message.
|
java.lang.String |
getStatus() |
JabberMessage |
parse(JabberMessageParser parser,
Element msgTree)
parses the message.
|
void |
setPriority(int priority)
The "default" is the highest priority and will receive the private messages.
|
void |
setShowState(java.lang.String showState)
sets the string for show state.
|
void |
setStatus(java.lang.String status)
sets the status string when available.
|
void |
setType(java.lang.String type)
The method is overridden to conform properly with XMPP protocol standards.
|
getErrorMessage, getFrom, getTo, getType, isError, setErrorMessage, setFrom, setToencode, getDOM, getXMLOutputter, setMessageID, toStringgetMessageID, getReplyMessage, getTimeout, getXMessage, getXMessages, interrupt, isReplyRequired, isSendXMessages, isSynchronized, replyReceived, setReplyRequired, setSendXMessages, setSynchronized, setTimeout, setXMessage, setXMessagespublic JabberPresenceMessage(java.lang.String type)
public JabberPresenceMessage()
public JabberMessage parse(JabberMessageParser parser, Element msgTree) throws ParseException
AbstractJabberMessageparse in interface JabberMessageParsableparse in class AbstractJabberMessageParseExceptionpublic void setType(java.lang.String type)
setType in class AbstractJabberMessagetype - the type of presence (available, unavailable, dnd, etc)public void setStatus(java.lang.String status)
public java.lang.String getStatus()
public java.lang.String getShowState()
public void setShowState(java.lang.String showState)
public int getPriority()
public void setPriority(int priority)
public int getMessageType()
JabberJDOMMessagegetMessageType in class JabberJDOMMessageJabberCodepublic DelayXMessage getDelayMessage()
public PGPSignedXMessage getPGPSignedMessage()
Copyright © 2001-2005 Echomine. All Rights Reserved.