lib.rs

 1//! A crate parsing common XMPP elements into Rust structures.
 2//!
 3//! Each module implements a `parse` function, which takes a minidom
 4//! `Element` reference and returns `Some(MessagePayload)` if the parsing
 5//! succeeded, None otherwise.
 6//!
 7//! Parsed structs can then be manipulated internally, and serialised back
 8//! before being sent over the wire.
 9
10extern crate minidom;
11extern crate jid;
12extern crate base64;
13
14/// Error type returned by every parser on failure.
15pub mod error;
16/// XML namespace definitions used through XMPP.
17pub mod ns;
18
19/// RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core
20pub mod message;
21/// RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core
22pub mod body;
23
24/// XEP-0004: Data Forms
25pub mod data_forms;
26
27/// XEP-0030: Service Discovery
28pub mod disco;
29
30/// XEP-0047: In-Band Bytestreams
31pub mod ibb;
32
33/// XEP-0085: Chat State Notifications
34pub mod chatstates;
35
36/// XEP-0166: Jingle
37pub mod jingle;
38
39/// XEP-0184: Message Delivery Receipts
40pub mod receipts;
41
42/// XEP-0199: XMPP Ping
43pub mod ping;
44
45/// XEP-0203: Delayed Delivery
46pub mod delay;
47
48/// XEP-0221: Data Forms Media Element
49pub mod media_element;
50
51/// XEP-0224: Attention
52pub mod attention;
53
54/// XEP-0234: Jingle File Transfer
55pub mod jingle_ft;
56
57/// XEP-0261: Jingle In-Band Bytestreams Transport Method
58pub mod jingle_ibb;
59
60/// XEP-0300: Use of Cryptographic Hash Functions in XMPP
61pub mod hashes;
62
63/// XEP-0308: Last Message Correction
64pub mod message_correct;
65
66/// XEP-0380: Explicit Message Encryption
67pub mod eme;
68
69/// XEP-0390: Entity Capabilities 2.0
70pub mod ecaps2;