1// Copyright (c) 2017 Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
2// Copyright (c) 2017 Maxime “pep” Buquet <pep+code@bouah.net>
3//
4// This Source Code Form is subject to the terms of the Mozilla Public
5// License, v. 2.0. If a copy of the MPL was not distributed with this
6// file, You can obtain one at http://mozilla.org/MPL/2.0/.
7
8/// RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core
9pub const JABBER_CLIENT: &str = "jabber:client";
10/// RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core
11pub const XMPP_STANZAS: &str = "urn:ietf:params:xml:ns:xmpp-stanzas";
12/// RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core
13pub const SASL: &str = "urn:ietf:params:xml:ns:xmpp-sasl";
14/// RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core
15pub const BIND: &str = "urn:ietf:params:xml:ns:xmpp-bind";
16
17/// RFC 6121: Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence
18pub const ROSTER: &str = "jabber:iq:roster";
19
20/// RFC 7395: An Extensible Messaging and Presence Protocol (XMPP) Subprotocol for WebSocket
21pub const WEBSOCKET: &str = "urn:ietf:params:xml:ns:xmpp-framing";
22
23/// XEP-0004: Data Forms
24pub const DATA_FORMS: &str = "jabber:x:data";
25
26/// XEP-0030: Service Discovery
27pub const DISCO_INFO: &str = "http://jabber.org/protocol/disco#info";
28/// XEP-0030: Service Discovery
29pub const DISCO_ITEMS: &str = "http://jabber.org/protocol/disco#items";
30
31/// XEP-0045: Multi-User Chat
32pub const MUC: &str = "http://jabber.org/protocol/muc";
33/// XEP-0045: Multi-User Chat
34pub const MUC_USER: &str = "http://jabber.org/protocol/muc#user";
35
36/// XEP-0047: In-Band Bytestreams
37pub const IBB: &str = "http://jabber.org/protocol/ibb";
38
39/// XEP-0059: Result Set Management
40pub const RSM: &str = "http://jabber.org/protocol/rsm";
41
42/// XEP-0060: Publish-Subscribe
43pub const PUBSUB: &str = "http://jabber.org/protocol/pubsub";
44/// XEP-0060: Publish-Subscribe
45pub const PUBSUB_ERRORS: &str = "http://jabber.org/protocol/pubsub#errors";
46/// XEP-0060: Publish-Subscribe
47pub const PUBSUB_EVENT: &str = "http://jabber.org/protocol/pubsub#event";
48/// XEP-0060: Publish-Subscribe
49pub const PUBSUB_OWNER: &str = "http://jabber.org/protocol/pubsub#owner";
50
51/// XEP-0077: In-Band Registration
52pub const REGISTER: &str = "jabber:iq:register";
53
54/// XEP-0085: Chat State Notifications
55pub const CHATSTATES: &str = "http://jabber.org/protocol/chatstates";
56
57/// XEP-0092: Software Version
58pub const VERSION: &str = "jabber:iq:version";
59
60/// XEP-0107: User Mood
61pub const MOOD: &str = "http://jabber.org/protocol/mood";
62
63/// XEP-0114: Jabber Component Protocol
64pub const COMPONENT_ACCEPT: &str = "jabber:component:accept";
65
66/// XEP-0115: Entity Capabilities
67pub const CAPS: &str = "http://jabber.org/protocol/caps";
68
69/// XEP-0166: Jingle
70pub const JINGLE: &str = "urn:xmpp:jingle:1";
71
72/// XEP-0184: Message Delivery Receipts
73pub const RECEIPTS: &str = "urn:xmpp:receipts";
74
75/// XEP-0191: Blocking Command
76pub const BLOCKING: &str = "urn:xmpp:blocking";
77/// XEP-0191: Blocking Command
78pub const BLOCKING_ERRORS: &str = "urn:xmpp:blocking:errors";
79
80/// XEP-0199: XMPP Ping
81pub const PING: &str = "urn:xmpp:ping";
82
83/// XEP-0203: Delayed Delivery
84pub const DELAY: &str = "urn:xmpp:delay";
85
86/// XEP-0221: Data Forms Media Element
87pub const MEDIA_ELEMENT: &str = "urn:xmpp:media-element";
88
89/// XEP-0224: Attention
90pub const ATTENTION: &str = "urn:xmpp:attention:0";
91
92/// XEP-0234: Jingle File Transfer
93pub const JINGLE_FT: &str = "urn:xmpp:jingle:apps:file-transfer:5";
94/// XEP-0234: Jingle File Transfer
95pub const JINGLE_FT_ERROR: &str = "urn:xmpp:jingle:apps:file-transfer:errors:0";
96
97/// XEP-0260: Jingle SOCKS5 Bytestreams Transport Method
98pub const JINGLE_S5B: &str = "urn:xmpp:jingle:transports:s5b:1";
99
100/// XEP-0261: Jingle In-Band Bytestreams Transport Method
101pub const JINGLE_IBB: &str = "urn:xmpp:jingle:transports:ibb:1";
102
103/// XEP-0297: Stanza Forwarding
104pub const FORWARD: &str = "urn:xmpp:forward:0";
105
106/// XEP-0300: Use of Cryptographic Hash Functions in XMPP
107pub const HASHES: &str = "urn:xmpp:hashes:2";
108/// XEP-0300: Use of Cryptographic Hash Functions in XMPP
109pub const HASH_ALGO_SHA_256: &str = "urn:xmpp:hash-function-text-names:sha-256";
110/// XEP-0300: Use of Cryptographic Hash Functions in XMPP
111pub const HASH_ALGO_SHA_512: &str = "urn:xmpp:hash-function-text-names:sha-512";
112/// XEP-0300: Use of Cryptographic Hash Functions in XMPP
113pub const HASH_ALGO_SHA3_256: &str = "urn:xmpp:hash-function-text-names:sha3-256";
114/// XEP-0300: Use of Cryptographic Hash Functions in XMPP
115pub const HASH_ALGO_SHA3_512: &str = "urn:xmpp:hash-function-text-names:sha3-512";
116/// XEP-0300: Use of Cryptographic Hash Functions in XMPP
117pub const HASH_ALGO_BLAKE2B_256: &str = "urn:xmpp:hash-function-text-names:id-blake2b256";
118/// XEP-0300: Use of Cryptographic Hash Functions in XMPP
119pub const HASH_ALGO_BLAKE2B_512: &str = "urn:xmpp:hash-function-text-names:id-blake2b512";
120
121/// XEP-0308: Last Message Correction
122pub const MESSAGE_CORRECT: &str = "urn:xmpp:message-correct:0";
123
124/// XEP-0313: Message Archive Management
125pub const MAM: &str = "urn:xmpp:mam:2";
126
127/// XEP-0319: Last User Interaction in Presence
128pub const IDLE: &str = "urn:xmpp:idle:1";
129
130/// XEP-0353: Jingle Message Initiation
131pub const JINGLE_MESSAGE: &str = "urn:xmpp:jingle-message:0";
132
133/// XEP-0359: Unique and Stable Stanza IDs
134pub const SID: &str = "urn:xmpp:sid:0";
135
136/// XEP-0380: Explicit Message Encryption
137pub const EME: &str = "urn:xmpp:eme:0";
138
139/// XEP-0390: Entity Capabilities 2.0
140pub const ECAPS2: &str = "urn:xmpp:caps";
141/// XEP-0390: Entity Capabilities 2.0
142pub const ECAPS2_OPTIMIZE: &str = "urn:xmpp:caps:optimize";
143
144#[cfg(not(feature = "component"))]
145pub const DEFAULT_NS: &str = JABBER_CLIENT;
146#[cfg(feature = "component")]
147pub const DEFAULT_NS: &str = COMPONENT_ACCEPT;