summaryrefslogtreecommitdiff
path: root/Presence/Stanza/Parse.hs
diff options
context:
space:
mode:
authorJoe Crayne <joe@jerkface.net>2018-11-05 05:54:00 -0500
committerJoe Crayne <joe@jerkface.net>2018-11-05 16:28:25 -0500
commitdd9dad21a830e932ab873510c41ce1a098bc78b8 (patch)
tree9c8cd38ac353509c1330eecf38101a5ee10dead0 /Presence/Stanza/Parse.hs
parent361209738d454309bf93ed49d9343ea264b21fb8 (diff)
Respond to XMPP discovery queries.
Diffstat (limited to 'Presence/Stanza/Parse.hs')
-rw-r--r--Presence/Stanza/Parse.hs8
1 files changed, 8 insertions, 0 deletions
diff --git a/Presence/Stanza/Parse.hs b/Presence/Stanza/Parse.hs
index e2a9efdd..af95530f 100644
--- a/Presence/Stanza/Parse.hs
+++ b/Presence/Stanza/Parse.hs
@@ -46,6 +46,10 @@ grokStanzaIQGet stanza = do
46 case tagName tag of 46 case tagName tag of
47 "{urn:xmpp:ping}ping" -> return Ping 47 "{urn:xmpp:ping}ping" -> return Ping
48 "{jabber:iq:roster}query" -> return RequestRoster 48 "{jabber:iq:roster}query" -> return RequestRoster
49 "{http://jabber.org/protocol/disco#items}query"
50 -> return RequestItems
51 "{http://jabber.org/protocol/disco#info}query"
52 -> return RequestInfo
49 name -> return $ UnrecognizedQuery name 53 name -> return $ UnrecognizedQuery name
50 54
51grokStanzaIQResult :: XML.Event -> NestingXML o IO (Maybe StanzaType) 55grokStanzaIQResult :: XML.Event -> NestingXML o IO (Maybe StanzaType)
@@ -55,6 +59,10 @@ grokStanzaIQResult stanza = do
55 case tagName tag of 59 case tagName tag of
56 "{jabber:iq:version}query" | nameNamespace (tagName stanza)==Just "jabber:client" 60 "{jabber:iq:version}query" | nameNamespace (tagName stanza)==Just "jabber:client"
57 -> parseClientVersion 61 -> parseClientVersion
62 "{http://jabber.org/protocol/disco#items}query"
63 -> return $ Just Items
64 "{http://jabber.org/protocol/disco#info}query"
65 -> return $ Just Info
58 _ -> return Nothing 66 _ -> return Nothing
59 67
60grokStanzaIQSet :: XML.Event -> NestingXML o IO (Maybe StanzaType) 68grokStanzaIQSet :: XML.Event -> NestingXML o IO (Maybe StanzaType)