/* * libjingle * Copyright 2004--2005, Google Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * 1. Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * 3. The name of the author may not be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef TALK_XMPP_CONSTANTS_H_ #define TALK_XMPP_CONSTANTS_H_ #include <string> #include "talk/xmllite/qname.h" #include "talk/xmpp/jid.h" #define NS_CLIENT Constants::ns_client() #define NS_SERVER Constants::ns_server() #define NS_STREAM Constants::ns_stream() #define NS_XSTREAM Constants::ns_xstream() #define NS_TLS Constants::ns_tls() #define NS_SASL Constants::ns_sasl() #define NS_BIND Constants::ns_bind() #define NS_DIALBACK Constants::ns_dialback() #define NS_SESSION Constants::ns_session() #define NS_STANZA Constants::ns_stanza() #define NS_PRIVACY Constants::ns_privacy() #define NS_ROSTER Constants::ns_roster() #define NS_VCARD Constants::ns_vcard() #define NS_AVATAR_HASH Constants::ns_avatar_hash() #define NS_VCARD_UPDATE Constants::ns_vcard_update() #define STR_CLIENT Constants::str_client() #define STR_SERVER Constants::str_server() #define STR_STREAM Constants::str_stream() namespace buzz { extern const Jid JID_EMPTY; class Constants { public: static const std::string & ns_client(); static const std::string & ns_server(); static const std::string & ns_stream(); static const std::string & ns_xstream(); static const std::string & ns_tls(); static const std::string & ns_sasl(); static const std::string & ns_bind(); static const std::string & ns_dialback(); static const std::string & ns_session(); static const std::string & ns_stanza(); static const std::string & ns_privacy(); static const std::string & ns_roster(); static const std::string & ns_vcard(); static const std::string & ns_avatar_hash(); static const std::string & ns_vcard_update(); static const std::string & str_client(); static const std::string & str_server(); static const std::string & str_stream(); }; extern const std::string STR_GET; extern const std::string STR_SET; extern const std::string STR_RESULT; extern const std::string STR_ERROR; extern const std::string STR_FROM; extern const std::string STR_TO; extern const std::string STR_BOTH; extern const std::string STR_REMOVE; extern const std::string STR_MESSAGE; extern const std::string STR_BODY; extern const std::string STR_PRESENCE; extern const std::string STR_STATUS; extern const std::string STR_SHOW; extern const std::string STR_PRIOIRTY; extern const std::string STR_IQ; extern const std::string STR_TYPE; extern const std::string STR_NAME; extern const std::string STR_ID; extern const std::string STR_JID; extern const std::string STR_SUBSCRIPTION; extern const std::string STR_ASK; extern const std::string STR_X; extern const std::string STR_GOOGLE_COM; extern const std::string STR_GMAIL_COM; extern const std::string STR_GOOGLEMAIL_COM; extern const std::string STR_DEFAULT_DOMAIN; extern const std::string STR_TALK_GOOGLE_COM; extern const std::string STR_TALKX_L_GOOGLE_COM; #ifdef FEATURE_ENABLE_VOICEMAIL extern const std::string STR_VOICEMAIL; extern const std::string STR_OUTGOINGVOICEMAIL; #endif extern const std::string STR_UNAVAILABLE; extern const QName QN_STREAM_STREAM; extern const QName QN_STREAM_FEATURES; extern const QName QN_STREAM_ERROR; extern const QName QN_XSTREAM_BAD_FORMAT; extern const QName QN_XSTREAM_BAD_NAMESPACE_PREFIX; extern const QName QN_XSTREAM_CONFLICT; extern const QName QN_XSTREAM_CONNECTION_TIMEOUT; extern const QName QN_XSTREAM_HOST_GONE; extern const QName QN_XSTREAM_HOST_UNKNOWN; extern const QName QN_XSTREAM_IMPROPER_ADDRESSIING; extern const QName QN_XSTREAM_INTERNAL_SERVER_ERROR; extern const QName QN_XSTREAM_INVALID_FROM; extern const QName QN_XSTREAM_INVALID_ID; extern const QName QN_XSTREAM_INVALID_NAMESPACE; extern const QName QN_XSTREAM_INVALID_XML; extern const QName QN_XSTREAM_NOT_AUTHORIZED; extern const QName QN_XSTREAM_POLICY_VIOLATION; extern const QName QN_XSTREAM_REMOTE_CONNECTION_FAILED; extern const QName QN_XSTREAM_RESOURCE_CONSTRAINT; extern const QName QN_XSTREAM_RESTRICTED_XML; extern const QName QN_XSTREAM_SEE_OTHER_HOST; extern const QName QN_XSTREAM_SYSTEM_SHUTDOWN; extern const QName QN_XSTREAM_UNDEFINED_CONDITION; extern const QName QN_XSTREAM_UNSUPPORTED_ENCODING; extern const QName QN_XSTREAM_UNSUPPORTED_STANZA_TYPE; extern const QName QN_XSTREAM_UNSUPPORTED_VERSION; extern const QName QN_XSTREAM_XML_NOT_WELL_FORMED; extern const QName QN_XSTREAM_TEXT; extern const QName QN_TLS_STARTTLS; extern const QName QN_TLS_REQUIRED; extern const QName QN_TLS_PROCEED; extern const QName QN_TLS_FAILURE; extern const QName QN_SASL_MECHANISMS; extern const QName QN_SASL_MECHANISM; extern const QName QN_SASL_AUTH; extern const QName QN_SASL_CHALLENGE; extern const QName QN_SASL_RESPONSE; extern const QName QN_SASL_ABORT; extern const QName QN_SASL_SUCCESS; extern const QName QN_SASL_FAILURE; extern const QName QN_SASL_ABORTED; extern const QName QN_SASL_INCORRECT_ENCODING; extern const QName QN_SASL_INVALID_AUTHZID; extern const QName QN_SASL_INVALID_MECHANISM; extern const QName QN_SASL_MECHANISM_TOO_WEAK; extern const QName QN_SASL_NOT_AUTHORIZED; extern const QName QN_SASL_TEMPORARY_AUTH_FAILURE; extern const QName QN_DIALBACK_RESULT; extern const QName QN_DIALBACK_VERIFY; extern const QName QN_STANZA_BAD_REQUEST; extern const QName QN_STANZA_CONFLICT; extern const QName QN_STANZA_FEATURE_NOT_IMPLEMENTED; extern const QName QN_STANZA_FORBIDDEN; extern const QName QN_STANZA_GONE; extern const QName QN_STANZA_INTERNAL_SERVER_ERROR; extern const QName QN_STANZA_ITEM_NOT_FOUND; extern const QName QN_STANZA_JID_MALFORMED; extern const QName QN_STANZA_NOT_ACCEPTABLE; extern const QName QN_STANZA_NOT_ALLOWED; extern const QName QN_STANZA_PAYMENT_REQUIRED; extern const QName QN_STANZA_RECIPIENT_UNAVAILABLE; extern const QName QN_STANZA_REDIRECT; extern const QName QN_STANZA_REGISTRATION_REQUIRED; extern const QName QN_STANZA_REMOTE_SERVER_NOT_FOUND; extern const QName QN_STANZA_REMOTE_SERVER_TIMEOUT; extern const QName QN_STANZA_RESOURCE_CONSTRAINT; extern const QName QN_STANZA_SERVICE_UNAVAILABLE; extern const QName QN_STANZA_SUBSCRIPTION_REQUIRED; extern const QName QN_STANZA_UNDEFINED_CONDITION; extern const QName QN_STANZA_UNEXPECTED_REQUEST; extern const QName QN_STANZA_TEXT; extern const QName QN_BIND_BIND; extern const QName QN_BIND_RESOURCE; extern const QName QN_BIND_JID; extern const QName QN_MESSAGE; extern const QName QN_BODY; extern const QName QN_SUBJECT; extern const QName QN_THREAD; extern const QName QN_PRESENCE; extern const QName QN_SHOW; extern const QName QN_STATUS; extern const QName QN_LANG; extern const QName QN_PRIORITY; extern const QName QN_IQ; extern const QName QN_ERROR; extern const QName QN_SERVER_MESSAGE; extern const QName QN_SERVER_BODY; extern const QName QN_SERVER_SUBJECT; extern const QName QN_SERVER_THREAD; extern const QName QN_SERVER_PRESENCE; extern const QName QN_SERVER_SHOW; extern const QName QN_SERVER_STATUS; extern const QName QN_SERVER_LANG; extern const QName QN_SERVER_PRIORITY; extern const QName QN_SERVER_IQ; extern const QName QN_SERVER_ERROR; extern const QName QN_SESSION_SESSION; extern const QName QN_PRIVACY_QUERY; extern const QName QN_PRIVACY_ACTIVE; extern const QName QN_PRIVACY_DEFAULT; extern const QName QN_PRIVACY_LIST; extern const QName QN_PRIVACY_ITEM; extern const QName QN_PRIVACY_IQ; extern const QName QN_PRIVACY_MESSAGE; extern const QName QN_PRIVACY_PRESENCE_IN; extern const QName QN_PRIVACY_PRESENCE_OUT; extern const QName QN_ROSTER_QUERY; extern const QName QN_ROSTER_ITEM; extern const QName QN_ROSTER_GROUP; extern const QName QN_VCARD; extern const QName QN_VCARD_FN; extern const QName QN_VCARD_PHOTO; extern const QName QN_VCARD_PHOTO_BINVAL; extern const QName QN_VCARD_AVATAR_HASH; extern const QName QN_VCARD_AVATAR_HASH_MODIFIED; #if defined(FEATURE_ENABLE_PSTN) extern const QName QN_VCARD_TEL; extern const QName QN_VCARD_VOICE; extern const QName QN_VCARD_HOME; extern const QName QN_VCARD_WORK; extern const QName QN_VCARD_CELL; extern const QName QN_VCARD_NUMBER; #endif #if defined(FEATURE_ENABLE_RICHPROFILES) extern const QName QN_USER_PROFILE_QUERY; extern const QName QN_USER_PROFILE_URL; extern const QName QN_ATOM_FEED; extern const QName QN_ATOM_ENTRY; extern const QName QN_ATOM_TITLE; extern const QName QN_ATOM_ID; extern const QName QN_ATOM_MODIFIED; extern const QName QN_ATOM_IMAGE; extern const QName QN_ATOM_LINK; extern const QName QN_ATOM_HREF; #endif extern const QName QN_XML_LANG; extern const QName QN_ENCODING; extern const QName QN_VERSION; extern const QName QN_TO; extern const QName QN_FROM; extern const QName QN_TYPE; extern const QName QN_ID; extern const QName QN_CODE; extern const QName QN_NAME; extern const QName QN_VALUE; extern const QName QN_ACTION; extern const QName QN_ORDER; extern const QName QN_MECHANISM; extern const QName QN_ASK; extern const QName QN_JID; extern const QName QN_SUBSCRIPTION; extern const QName QN_TITLE1; extern const QName QN_TITLE2; extern const QName QN_AFFILIATION; extern const QName QN_ROLE; extern const QName QN_XMLNS_CLIENT; extern const QName QN_XMLNS_SERVER; extern const QName QN_XMLNS_STREAM; // Presence extern const std::string STR_SHOW_AWAY; extern const std::string STR_SHOW_CHAT; extern const std::string STR_SHOW_DND; extern const std::string STR_SHOW_XA; extern const std::string STR_SHOW_OFFLINE; // Subscription extern const std::string STR_SUBSCRIBE; extern const std::string STR_SUBSCRIBED; extern const std::string STR_UNSUBSCRIBE; extern const std::string STR_UNSUBSCRIBED; // Google Invite extern const std::string NS_GOOGLE_SUBSCRIBE; extern const QName QN_INVITATION; extern const QName QN_INVITE_NAME; extern const QName QN_INVITE_SUBJECT; extern const QName QN_INVITE_MESSAGE; // JEP 0030 extern const QName QN_NODE; extern const QName QN_CATEGORY; extern const QName QN_VAR; extern const std::string NS_DISCO_INFO; extern const std::string NS_DISCO_ITEMS; extern const QName QN_DISCO_INFO_QUERY; extern const QName QN_DISCO_IDENTITY; extern const QName QN_DISCO_FEATURE; extern const QName QN_DISCO_ITEMS_QUERY; extern const QName QN_DISCO_ITEM; // JEP 0045 extern const std::string NS_MUC; extern const QName QN_MUC_X; extern const QName QN_MUC_ITEM; extern const QName QN_MUC_AFFILIATION; extern const QName QN_MUC_ROLE; extern const std::string STR_AFFILIATION_NONE; extern const std::string STR_ROLE_PARTICIPANT; extern const std::string NS_MUC_USER; extern const QName QN_MUC_USER_CONTINUE; extern const QName QN_MUC_USER_X; extern const QName QN_MUC_USER_ITEM; extern const QName QN_MUC_USER_STATUS; // JEP 0115 extern const std::string NS_CAPS; extern const QName QN_CAPS_C; extern const QName QN_VER; extern const QName QN_EXT; // Avatar - JEP 0153 extern const std::string kNSVCard; extern const QName kQnVCardX; extern const QName kQnVCardPhoto; // JEP 0172 User Nickname extern const std::string kNSNickname; extern const QName kQnNickname; // JEP 0085 chat state extern const std::string NS_CHATSTATE; extern const QName QN_CS_ACTIVE; extern const QName QN_CS_COMPOSING; extern const QName QN_CS_PAUSED; extern const QName QN_CS_INACTIVE; extern const QName QN_CS_GONE; // JEP 0091 Delayed Delivery extern const std::string kNSDelay; extern const QName kQnDelayX; extern const QName kQnStamp; // Google time stamping (higher resolution) extern const std::string kNSTimestamp; extern const QName kQnTime; extern const QName kQnMilliseconds; extern const std::string NS_JINGLE_INFO; extern const QName QN_JINGLE_INFO_QUERY; extern const QName QN_JINGLE_INFO_STUN; extern const QName QN_JINGLE_INFO_RELAY; extern const QName QN_JINGLE_INFO_SERVER; extern const QName QN_JINGLE_INFO_TOKEN; extern const QName QN_JINGLE_INFO_HOST; extern const QName QN_JINGLE_INFO_TCP; extern const QName QN_JINGLE_INFO_UDP; extern const QName QN_JINGLE_INFO_TCPSSL; extern const std::string NS_GOOGLE_CALLPERF_STATS; extern const QName QN_CALLPERF_STATS; extern const QName QN_CALLPERF_SESSIONID; extern const QName QN_CALLPERF_LOCALUSER; extern const QName QN_CALLPERF_REMOTEUSER; extern const QName QN_CALLPERF_STARTTIME; extern const QName QN_CALLPERF_CALL_LENGTH; extern const QName QN_CALLPERF_DATAPOINT; extern const QName QN_CALLPERF_DATAPOINT_TIME; extern const QName QN_CALLPERF_DATAPOINT_FRACTION_LOST; extern const QName QN_CALLPERF_DATAPOINT_CUM_LOST; extern const QName QN_CALLPERF_DATAPOINT_EXT_MAX; extern const QName QN_CALLPERF_DATAPOINT_JITTER; extern const QName QN_CALLPERF_DATAPOINT_RTT; extern const QName QN_CALLPERF_DATAPOINT_BYTES_R; extern const QName QN_CALLPERF_DATAPOINT_PACKETS_R; extern const QName QN_CALLPERF_DATAPOINT_BYTES_S; extern const QName QN_CALLPERF_DATAPOINT_PACKETS_S; extern const QName QN_CALLPERF_CONNECTION; extern const QName QN_CALLPERF_CONNECTION_LOCAL_ADDRESS; extern const QName QN_CALLPERF_CONNECTION_REMOTE_ADDRESS; // Muc invites. extern const QName QN_MUC_USER_INVITE; // Multiway audio/video. extern const std::string NS_GOOGLE_MUC_USER; extern const QName QN_GOOGLE_MUC_USER_AVAILABLE_MEDIA; extern const QName QN_GOOGLE_MUC_USER_ENTRY; extern const QName QN_GOOGLE_MUC_USER_MEDIA; extern const QName QN_GOOGLE_MUC_USER_TYPE; extern const QName QN_GOOGLE_MUC_USER_SRC_ID; extern const QName QN_GOOGLE_MUC_USER_STATUS; extern const QName QN_LABEL; } // namespace buzz #endif // TALK_XMPP_CONSTANTS_H_