Crate xmpp_parsers[−][src]
A crate parsing common XMPP elements into Rust structures.
Each module implements the TryFrom<Element>
trait, which takes a
minidom Element
and returns a Result
whose value is Ok
if the
element parsed correctly, Err(error::Error)
otherwise.
The returned structure can be manipuled as any Rust structure, with each
field being public. You can also create the same structure manually, with
some having new()
and with_*()
helper methods to create them.
Once you are happy with your structure, you can serialise it back to an
Element
, using either From
or Into<Element>
, which give you what
you want to be sending on the wire.
Modules
attention |
XEP-0224: Attention |
bind |
RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core |
blocking |
XEP-0191: Blocking Command |
bookmarks |
XEP-0048: Bookmarks |
caps |
XEP-0115: Entity Capabilities |
chatstates |
XEP-0085: Chat State Notifications |
component |
XEP-0114: Jabber Component Protocol |
data_forms |
XEP-0004: Data Forms |
date |
XEP-0082: XMPP Date and Time Profiles |
delay |
XEP-0203: Delayed Delivery |
disco |
XEP-0030: Service Discovery |
ecaps2 |
XEP-0390: Entity Capabilities 2.0 |
eme |
XEP-0380: Explicit Message Encryption |
error |
Error type returned by every parser on failure. |
forwarding |
XEP-0297: Stanza Forwarding |
hashes |
XEP-0300: Use of Cryptographic Hash Functions in XMPP |
ibb |
XEP-0047: In-Band Bytestreams |
ibr |
XEP-0077: In-Band Registration |
idle |
XEP-0319: Last User Interaction in Presence |
iq |
RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core |
jingle |
XEP-0166: Jingle |
jingle_ft |
XEP-0234: Jingle File Transfer |
jingle_ibb |
XEP-0261: Jingle In-Band Bytestreams Transport Method |
jingle_message |
XEP-0353: Jingle Message Initiation |
jingle_s5b |
XEP-0260: Jingle SOCKS5 Bytestreams Transport Method |
mam |
XEP-0313: Message Archive Management |
media_element |
XEP-0221: Data Forms Media Element |
message |
RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core |
message_correct |
XEP-0308: Last Message Correction |
mood |
XEP-0107: User Mood |
muc |
XEP-0045: Multi-User Chat |
nick |
XEP-0172: User Nickname |
ns |
XML namespace definitions used through XMPP. |
ping |
XEP-0199: XMPP Ping |
presence |
RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core |
pubsub |
XEP-0060: Publish-Subscribe |
receipts |
XEP-0184: Message Delivery Receipts |
roster |
RFC 6121: Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence |
rsm |
XEP-0059: Result Set Management |
sasl |
RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core |
sm |
XEP-0198: Stream Management |
stanza_error |
RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core |
stanza_id |
XEP-0359: Unique and Stable Stanza IDs |
stream |
RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core |
version |
XEP-0092: Software Version |
websocket |
RFC 7395: An Extensible Messaging and Presence Protocol (XMPP) Subprotocol for WebSocket |
Structs
Element |
A struct representing a DOM Element. |