diff --git a/src/xmpp/chatStateNotification.go b/src/xmpp/chatStateNotification.go new file mode 100644 index 0000000..e2b80b0 --- /dev/null +++ b/src/xmpp/chatStateNotification.go @@ -0,0 +1,27 @@ +package xmpp + +import ( + "encoding/xml" +) + +const ( + NSChatStatesNotification = "http://jabber.org/protocol/chatstates" +) + +// XEP-0085: Chat States Notification + +type Active struct { + XMLName xml.Name `xml:"http://jabber.org/protocol/chatstates active"` +} +type Composing struct { + XMLName xml.Name `xml:"http://jabber.org/protocol/chatstates composing"` +} +type Paused struct { + XMLName xml.Name `xml:"http://jabber.org/protocol/chatstates paused"` +} +type Inactive struct { + XMLName xml.Name `xml:"http://jabber.org/protocol/chatstates inactive"` +} +type Gone struct { + XMLName xml.Name `xml:"http://jabber.org/protocol/chatstates gone"` +} diff --git a/src/xmpp/stanza.go b/src/xmpp/stanza.go index 33c4b0c..632da6d 100644 --- a/src/xmpp/stanza.go +++ b/src/xmpp/stanza.go @@ -76,7 +76,14 @@ type Message struct { Body string `xml:"body,omitempty"` Thread string `xml:"thread,omitempty"` Error *Error `xml:"error"` - Confir *Confirm `xml:"confirm"` + + Confir *Confirm `xml:"confirm"` // XEP-0070 + + Active *Active `xml:"active"` // XEP-0085 + Composing *Composing `xml:"composing"` // XEP-0085 + Paused *Paused `xml:"paused"` // XEP-0085 + Inactive *Inactive `xml:"inactive"` // XEP-0085 + Gone *Gone `xml:"gone"` // XEP-0085 } // XMPP stanza.