UNPKG

@fnlb-project/stanza

Version:

Modern XMPP in the browser, with a JSON API

281 lines (280 loc) 11.7 kB
// ================================================================ // RFCS // ================================================================ // RFC 4287 export const NS_ATOM = 'http://www.w3.org/2005/Atom'; // RFC 6120 export const NS_BIND = 'urn:ietf:params:xml:ns:xmpp-bind'; export const NS_CLIENT = 'jabber:client'; export const NS_SASL = 'urn:ietf:params:xml:ns:xmpp-sasl'; export const NS_SERVER = 'jabber:server'; export const NS_SESSION = 'urn:ietf:params:xml:ns:xmpp-session'; export const NS_STANZAS = 'urn:ietf:params:xml:ns:xmpp-stanzas'; export const NS_STREAM = 'http://etherx.jabber.org/streams'; export const NS_STREAMS = 'urn:ietf:params:xml:ns:xmpp-streams'; export const NS_STARTTLS = 'urn:ietf:params:xml:ns:xmpp-tls'; // RFC 6121 export const NS_ROSTER = 'jabber:iq:roster'; export const NS_ROSTER_VERSIONING = 'urn:xmpp:features:rosterver'; export const NS_SUBSCRIPTION_PREAPPROVAL = 'urn:xmpp:features:pre-approval'; // RFC 7395 export const NS_FRAMING = 'urn:ietf:params:xml:ns:xmpp-framing'; // ================================================================ // XEPS // ================================================================ // XEP-0004 export const NS_DATAFORM = 'jabber:x:data'; // XEP-0009 export const NS_RPC = 'jabber:iq:rpc'; // XEP-0012 export const NS_LAST_ACTIVITY = 'jabber:iq:last'; // XEP-0016 export const NS_PRIVACY = 'jabber:iq:privacy'; // XEP-0022 export const NS_LEGACY_CHAT_EVENTS = 'jabber:x:event'; // XEP-0030 export const NS_DISCO_INFO = 'http://jabber.org/protocol/disco#info'; export const NS_DISCO_ITEMS = 'http://jabber.org/protocol/disco#items'; // XEP-0033 export const NS_ADDRESS = 'http://jabber.org/protocol/address'; // XEP-0045 export const NS_MUC = 'http://jabber.org/protocol/muc'; export const NS_MUC_ADMIN = 'http://jabber.org/protocol/muc#admin'; export const NS_MUC_OWNER = 'http://jabber.org/protocol/muc#owner'; export const NS_MUC_USER = 'http://jabber.org/protocol/muc#user'; // XEP-0047 export const NS_IBB = 'http://jabber.org/protocol/ibb'; // XEP-0048 export const NS_BOOKMARKS = 'storage:bookmarks'; // XEP-0049 export const NS_PRIVATE = 'jabber:iq:private'; // XEP-0050 export const NS_ADHOC_COMMANDS = 'http://jabber.org/protocol/commands'; // XEP-0054 export const NS_VCARD_TEMP = 'vcard-temp'; // XEP-0055 export const NS_SEARCH = 'jabber:iq:search'; // XEP-0059 export const NS_RSM = 'http://jabber.org/protocol/rsm'; // XEP-0060 export const NS_PUBSUB = 'http://jabber.org/protocol/pubsub'; export const NS_PUBSUB_ERRORS = 'http://jabber.org/protocol/pubsub#errors'; export const NS_PUBSUB_EVENT = 'http://jabber.org/protocol/pubsub#event'; export const NS_PUBSUB_OWNER = 'http://jabber.org/protocol/pubsub#owner'; // XEP-0065 export const NS_SOCKS5 = 'http://jabber.org/protocol/bytestreams'; // XEP-0066 export const NS_OOB = 'jabber:x:oob'; export const NS_OOB_TRANSFER = 'jabber:iq:oob'; // XEP-0070 export const NS_HTTP_AUTH = 'http://jabber.org/protocol/http-auth'; // XEP-0071 export const NS_XHTML = 'http://www.w3.org/1999/xhtml'; export const NS_XHTML_IM = 'http://jabber.org/protocol/xhtml-im'; // XEP-0077 export const NS_REGISTER = 'jabber:iq:register'; export const NS_INBAND_REGISTRATION = 'http://jabber.org/features/iq-register'; // XEP-0079 export const NS_AMP = 'http://jabber.org/protocol/amp'; // XEP-0080 export const NS_GEOLOC = 'http://jabber.org/protocol/geoloc'; // XEP-0083 export const NS_ROSTER_DELIMITER = 'roster:delimiter'; // XEP-0084 export const NS_AVATAR_DATA = 'urn:xmpp:avatar:data'; export const NS_AVATAR_METADATA = 'urn:xmpp:avatar:metadata'; // XEP-0085 export const NS_CHAT_STATES = 'http://jabber.org/protocol/chatstates'; // XEP-0092 export const NS_VERSION = 'jabber:iq:version'; // XEP-0107 export const NS_MOOD = 'http://jabber.org/protocol/mood'; // XEP-0108 export const NS_ACTIVITY = 'http://jabber.org/protocol/activity'; // XEP-0114 export const NS_COMPONENT = 'jabber:component:accept'; // XEP-0115 export const NS_DISCO_LEGACY_CAPS = 'http://jabber.org/protocol/caps'; // XEP-0118 export const NS_TUNE = 'http://jabber.org/protocol/tune'; // XEP-0122 export const NS_DATAFORM_VALIDATION = 'http://jabber.org/protocol/xdata-validate'; // XEP-0124 export const NS_BOSH = 'http://jabber.org/protocol/httpbind'; // XEP-0131 export const NS_SHIM = 'http://jabber.org/protocol/shim'; // XEP-0138 export const NS_COMPRESSION_FEATURE = 'http://jabber.org/features/compress'; export const NS_COMPRESSION = 'http://jabber.org/protocol/compress'; // XEP-0141 export const NS_DATAFORM_LAYOUT = 'http://jabber.org/protocol/xdata-layout'; // XEP-0144 export const NS_ROSTER_EXCHANGE = 'http://jabber.org/protocol/rosterx'; // XEP-0145 export const NS_ROSTER_NOTES = 'storage:rosternotes'; // XEP-0152 export const NS_REACH_0 = 'urn:xmpp:reach:0'; // XEP-0153 export const NS_VCARD_TEMP_UPDATE = 'vcard-temp:x:update'; // XEP-0156 export const NS_ALT_CONNECTIONS_WEBSOCKET = 'urn:xmpp:alt-connections:websocket'; export const NS_ALT_CONNECTIONS_XBOSH = 'urn:xmpp:alt-connections:xbosh'; // XEP-0158 export const NS_CAPTCHA = 'urn:xmpp:captcha'; // XEP-0163 export const NS_PEP_NOTIFY = (ns) => `${ns}+notify`; // XEP-0166 export const NS_JINGLE_1 = 'urn:xmpp:jingle:1'; export const NS_JINGLE_ERRORS_1 = 'urn:xmpp:jingle:errors:1'; // XEP-0167 export const NS_JINGLE_RTP_1 = 'urn:xmpp:jingle:apps:rtp:1'; export const NS_JINGLE_RTP_ERRORS_1 = 'urn:xmpp:jingle:apps:rtp:errors:1'; export const NS_JINGLE_RTP_INFO_1 = 'urn:xmpp:jingle:apps:rtp:info:1'; export const NS_JINGLE_RTP_AUDIO = 'urn:xmpp:jingle:apps:rtp:audio'; export const NS_JINGLE_RTP_VIDEO = 'urn:xmpp:jingle:apps:rtp:video'; // XEP-0171 export const NS_LANG_TRANS = 'urn:xmpp:langtrans'; export const NS_LANG_TRANS_ITEMS = 'urn:xmpp:langtrans:items'; // XEP-0172 export const NS_NICK = 'http://jabber.org/protocol/nick'; // XEP-0176 export const NS_JINGLE_ICE_UDP_1 = 'urn:xmpp:jingle:transports:ice-udp:1'; // XEP-0177 export const NS_JINGLE_RAW_UDP_1 = 'urn:xmpp:jingle:transports:raw-udp:1'; // XEP-0184 export const NS_RECEIPTS = 'urn:xmpp:receipts'; // XEP-0186 export const NS_INVISIBLE_0 = 'urn:xmpp:invisible:0'; // XEP-0191 export const NS_BLOCKING = 'urn:xmpp:blocking'; export const NS_BLOCKING_ERRORS = 'urn:xmpp:blocking:errors'; // XEP-0198 export const NS_SMACKS_3 = 'urn:xmpp:sm:3'; // XEP-0199 export const NS_PING = 'urn:xmpp:ping'; // XEP-0202 export const NS_TIME = 'urn:xmpp:time'; // XEP-0203 export const NS_DELAY = 'urn:xmpp:delay'; // XEP-0206 export const NS_BOSH_XMPP = 'urn:xmpp:xbosh'; // XEP-0215 export const NS_DISCO_EXTERNAL_1 = 'urn:xmpp:extdisco:1'; export const NS_DISCO_EXTERNAL_2 = 'urn:xmpp:extdisco:2'; // XEP-0221 export const NS_DATAFORM_MEDIA = 'urn:xmpp:media-element'; // XEP-0224 export const NS_ATTENTION_0 = 'urn:xmpp:attention:0'; // XEP-0231 export const NS_BOB = 'urn:xmpp:bob'; // XEP-0232 export const NS_SOFTWARE_INFO = 'urn:xmpp:dataforms:softwareinfo'; // XEP-0234 export const NS_JINGLE_FILE_TRANSFER_3 = 'urn:xmpp:jingle:apps:file-transfer:3'; export const NS_JINGLE_FILE_TRANSFER_4 = 'urn:xmpp:jingle:apps:file-transfer:4'; export const NS_JINGLE_FILE_TRANSFER_5 = 'urn:xmpp:jingle:apps:file-transfer:5'; // XEP-0247 export const NS_JINGLE_XML_0 = 'urn:xmpp:jingle:apps:xmlstream:0'; // XEP-0249 export const NS_MUC_DIRECT_INVITE = 'jabber:x:conference'; // XEP-0258 export const NS_SEC_LABEL_0 = 'urn:xmpp:sec-label:0'; export const NS_SEC_LABEL_CATALOG_2 = 'urn:xmpp:sec-label:catalog:2'; export const NS_SEC_LABEL_ESS_0 = 'urn:xmpp:sec-label:ess:0'; // XEP-0260 export const NS_JINGLE_SOCKS5_1 = 'urn:xmpp:jingle:transports:s5b:1'; // XEP-0261 export const NS_JINGLE_IBB_1 = 'urn:xmpp:jingle:transports:ibb:1'; // XEP-0262 export const NS_JINGLE_RTP_ZRTP_1 = 'urn:xmpp:jingle:apps:rtp:zrtp:1'; // XEP-0264 export const NS_THUMBS_0 = 'urn:xmpp:thumbs:0'; export const NS_THUMBS_1 = 'urn:xmpp:thumbs:1'; // XEP-0276 export const NS_DECLOAKING_0 = 'urn:xmpp:decloaking:0'; // XEP-0280 export const NS_CARBONS_2 = 'urn:xmpp:carbons:2'; // XEP-0293 export const NS_JINGLE_RTP_RTCP_FB_0 = 'urn:xmpp:jingle:apps:rtp:rtcp-fb:0'; // XEP-0294 export const NS_JINGLE_RTP_HDREXT_0 = 'urn:xmpp:jingle:apps:rtp:rtp-hdrext:0'; // XEP-0297 export const NS_FORWARD_0 = 'urn:xmpp:forward:0'; // XEP-0300 export const NS_HASHES_1 = 'urn:xmpp:hashes:1'; export const NS_HASHES_2 = 'urn:xmpp:hashes:2'; export const NS_HASH_NAME = (name) => `urn:xmpp:hash-function-text-names:${name}`; // XEP-0301 export const NS_RTT_0 = 'urn:xmpp:rtt:0'; // XEP-0307 export const NS_MUC_UNIQUE = 'http://jabber.org/protocol/muc#unique'; // XEP-308 export const NS_CORRECTION_0 = 'urn:xmpp:message-correct:0'; // XEP-0310 export const NS_PSA = 'urn:xmpp:psa'; // XEP-0313 export const NS_MAM_TMP = 'urn:xmpp:mam:tmp'; export const NS_MAM_0 = 'urn:xmpp:mam:0'; export const NS_MAM_1 = 'urn:xmpp:mam:1'; export const NS_MAM_2 = 'urn:xmpp:mam:2'; // XEP-0317 export const NS_HATS_0 = 'urn:xmpp:hats:0'; // XEP-0319 export const NS_IDLE_1 = 'urn:xmpp:idle:1'; // XEP-0320 export const NS_JINGLE_DTLS_0 = 'urn:xmpp:jingle:apps:dtls:0'; // XEP-0333 export const NS_CHAT_MARKERS_0 = 'urn:xmpp:chat-markers:0'; // XEP-0334 export const NS_HINTS = 'urn:xmpp:hints'; // XEP-0335 export const NS_JSON_0 = 'urn:xmpp:json:0'; // XEP-0338 export const NS_JINGLE_GROUPING_0 = 'urn:xmpp:jingle:apps:grouping:0'; // XEP-0339 export const NS_JINGLE_RTP_SSMA_0 = 'urn:xmpp:jingle:apps:rtp:ssma:0'; // XEP-0343 export const NS_JINGLE_DTLS_SCTP_1 = 'urn:xmpp:jingle:transports:dtls-sctp:1'; // XEP-0352 export const NS_CSI_0 = 'urn:xmpp:csi:0'; // XEP-0353 export const NS_JINGLE_MSG_INITIATE_0 = 'urn:xmpp:jingle:jingle-message:0'; // XEP-0355 export const NS_DELEGATION_1 = 'urn:xmpp:delegation:1'; // XEP-0357 export const NS_PUSH_0 = 'urn:xmpp:push:0'; // XEP-0358 export const NS_JINGLE_PUB_1 = 'urn:xmpp:jinglepub:1'; // XEP-0359 export const NS_SID_0 = 'urn:xmpp:sid:0'; // XEP-0363 export const NS_HTTP_UPLOAD_0 = 'urn:xmpp:http:upload:0'; // XEP-0370 export const NS_JINGLE_HTTP_0 = 'urn:xmpp:jingle:transports:http:0'; export const NS_JINGLE_HTTP_UPLOAD_0 = 'urn:xmpp:jingle:transports:http:upload:0'; // XEP-0371 export const NS_JINGLE_ICE_0 = 'urn:xmpp:jingle:transports:ice:0'; // XEP-0372 export const NS_REFERENCE_0 = 'urn:xmpp:reference:0'; // XEP-0380 export const NS_EME_0 = 'urn:xmpp:eme:0'; // XEP-0382 export const NS_SPOILER_0 = 'urn:xmpp:spoiler:0'; // XEP-0384 export const NS_OMEMO_AXOLOTL = 'eu.siacs.conversations.axolotl'; export const NS_OMEMO_AXOLOTL_DEVICELIST = 'eu.siacs.conversations.axolotl.devicelist'; export const NS_OMEMO_AXOLOTL_BUNDLES = 'eu.siacs.conversations.axolotl.bundles'; // istanbul ignore next export const NS_OMEMO_AXOLOTL_BUNDLE = (deviceId) => `${NS_OMEMO_AXOLOTL_BUNDLES}:${deviceId}`; // XEP-0432 export const NS_JSON_MESSAGE_0 = 'urn:xmpp:json-msg:0'; // ================================================================ // Other Standards // ================================================================ // Extensible Resource Descriptor (XRD) Version 1.0 // http://docs.oasis-open.org/xri/xrd/v1.0/xrd-1.0.html export const NS_XRD = 'http://docs.oasis-open.org/ns/xri/xrd-1.0'; // ==================================================================== // Not yet standardized // ==================================================================== export const NS_JINGLE_RTP_MSID_0 = 'urn:xmpp:jingle:apps:rtp:msid:0';