Add support for detecting ProcessOne extensions

This commit is contained in:
Mickael Remond 2019-06-11 09:20:33 +02:00
parent 30e6adc073
commit 2af9521036
No known key found for this signature in database
GPG Key ID: E6F6045D79965AA3

View File

@ -18,6 +18,10 @@ type StreamFeatures struct {
Bind BindBind
Session sessionSession
StreamManagement streamManagement
// ProcessOne Stream Features
P1Push p1Push
P1Rebind p1Rebind
p1Ack p1Ack
Any []xml.Name `xml:",any"`
}
@ -118,6 +122,24 @@ func (sf *StreamFeatures) DoesStreamManagement() (isSupported bool) {
return false
}
// P1 extensions
// Reference: https://docs.ejabberd.im/developer/mobile/core-features/
// p1:push support
type p1Push struct {
XMLName xml.Name `xml:"p1:push push"`
}
// p1:rebind suppor
type p1Rebind struct {
XMLName xml.Name `xml:"p1:rebind rebind"`
}
// p1:ack support
type p1Ack struct {
XMLName xml.Name `xml:"p1:ack ack"`
}
// ============================================================================
// StreamError Packet