This file is indexed.

/usr/share/doc/libghc-network-protocol-xmpp-doc/html/Network-Protocol-XMPP.html is in libghc-network-protocol-xmpp-doc 0.4.8-5build3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Network.Protocol.XMPP</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="file:///usr/share/javascript/mathjax/MathJax.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Network-Protocol-XMPP.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Network-Protocol-XMPP.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">network-protocol-xmpp-0.4.8: Client library for the XMPP protocol.</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Network.Protocol.XMPP</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">JIDs</a></li><li><a href="#g:2">Stanzas</a></li><li><a href="#g:3">The XMPP monad</a><ul><li><a href="#g:4">Resuming sessions</a></li></ul></li></ul></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">data</span> <a href="#t:JID">JID</a> = <a href="#v:JID">JID</a> {<ul class="subs"><li><a href="#v:jidNode">jidNode</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:Node">Node</a></li><li><a href="#v:jidDomain">jidDomain</a> :: <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a></li><li><a href="#v:jidResource">jidResource</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a></li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:Node">Node</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:Domain">Domain</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:Resource">Resource</a></li><li class="src short"><a href="#v:strNode">strNode</a> :: <a href="Network-Protocol-XMPP.html#t:Node">Node</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li class="src short"><a href="#v:strDomain">strDomain</a> :: <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li class="src short"><a href="#v:strResource">strResource</a> :: <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li class="src short"><a href="#v:parseJID">parseJID</a> :: <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></li><li class="src short"><a href="#v:formatJID">formatJID</a> :: <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li class="src short"><span class="keyword">class</span> <a href="#t:Stanza">Stanza</a> a <span class="keyword">where</span><ul class="subs"></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:ReceivedStanza">ReceivedStanza</a><ul class="subs"><li>= <a href="#v:ReceivedMessage">ReceivedMessage</a> <a href="Network-Protocol-XMPP.html#t:Message">Message</a></li><li>| <a href="#v:ReceivedPresence">ReceivedPresence</a> <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a></li><li>| <a href="#v:ReceivedIQ">ReceivedIQ</a> <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a></li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:Message">Message</a> = <a href="#v:Message">Message</a> {<ul class="subs"><li><a href="#v:messageType">messageType</a> :: <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a></li><li><a href="#v:messageTo">messageTo</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></li><li><a href="#v:messageFrom">messageFrom</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></li><li><a href="#v:messageID">messageID</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li><a href="#v:messageLang">messageLang</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li><a href="#v:messagePayloads">messagePayloads</a> :: [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>]</li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:Presence">Presence</a> = <a href="#v:Presence">Presence</a> {<ul class="subs"><li><a href="#v:presenceType">presenceType</a> :: <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a></li><li><a href="#v:presenceTo">presenceTo</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></li><li><a href="#v:presenceFrom">presenceFrom</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></li><li><a href="#v:presenceID">presenceID</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li><a href="#v:presenceLang">presenceLang</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li><a href="#v:presencePayloads">presencePayloads</a> :: [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>]</li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:IQ">IQ</a> = <a href="#v:IQ">IQ</a> {<ul class="subs"><li><a href="#v:iqType">iqType</a> :: <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a></li><li><a href="#v:iqTo">iqTo</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></li><li><a href="#v:iqFrom">iqFrom</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></li><li><a href="#v:iqID">iqID</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li><a href="#v:iqLang">iqLang</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li><a href="#v:iqPayload">iqPayload</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:MessageType">MessageType</a><ul class="subs"><li>= <a href="#v:MessageNormal">MessageNormal</a></li><li>| <a href="#v:MessageChat">MessageChat</a></li><li>| <a href="#v:MessageGroupChat">MessageGroupChat</a></li><li>| <a href="#v:MessageHeadline">MessageHeadline</a></li><li>| <a href="#v:MessageError">MessageError</a></li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:PresenceType">PresenceType</a><ul class="subs"><li>= <a href="#v:PresenceAvailable">PresenceAvailable</a></li><li>| <a href="#v:PresenceUnavailable">PresenceUnavailable</a></li><li>| <a href="#v:PresenceSubscribe">PresenceSubscribe</a></li><li>| <a href="#v:PresenceSubscribed">PresenceSubscribed</a></li><li>| <a href="#v:PresenceUnsubscribe">PresenceUnsubscribe</a></li><li>| <a href="#v:PresenceUnsubscribed">PresenceUnsubscribed</a></li><li>| <a href="#v:PresenceProbe">PresenceProbe</a></li><li>| <a href="#v:PresenceError">PresenceError</a></li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:IQType">IQType</a><ul class="subs"><li>= <a href="#v:IQGet">IQGet</a></li><li>| <a href="#v:IQSet">IQSet</a></li><li>| <a href="#v:IQResult">IQResult</a></li><li>| <a href="#v:IQError">IQError</a></li></ul></li><li class="src short"><a href="#v:emptyMessage">emptyMessage</a> :: <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Message">Message</a></li><li class="src short"><a href="#v:emptyPresence">emptyPresence</a> :: <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a></li><li class="src short"><a href="#v:emptyIQ">emptyIQ</a> :: <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:XMPP">XMPP</a> a</li><li class="src short"><span class="keyword">data</span> <a href="#t:Server">Server</a> = <a href="#v:Server">Server</a> {<ul class="subs"><li><a href="#v:serverJID">serverJID</a> :: <a href="Network-Protocol-XMPP.html#t:JID">JID</a></li><li><a href="#v:serverHostname">serverHostname</a> :: <a href="file:///usr/share/doc/libghc-network-doc/html/Network-Socket.html#t:HostName">HostName</a></li><li><a href="#v:serverPort">serverPort</a> :: <a href="file:///usr/share/doc/libghc-network-doc/html/Network.html#t:PortID">PortID</a></li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:Error">Error</a><ul class="subs"><li>= <a href="#v:AuthenticationFailure">AuthenticationFailure</a> <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></li><li>| <a href="#v:AuthenticationError">AuthenticationError</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li>| <a href="#v:InvalidStanza">InvalidStanza</a> <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></li><li>| <a href="#v:InvalidBindResult">InvalidBindResult</a> <a href="Network-Protocol-XMPP.html#t:ReceivedStanza">ReceivedStanza</a></li><li>| <a href="#v:TransportError">TransportError</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></li><li>| <a href="#v:NoComponentStreamID">NoComponentStreamID</a></li></ul></li><li class="src short"><a href="#v:runClient">runClient</a> :: <a href="Network-Protocol-XMPP.html#t:Server">Server</a> -&gt; <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Either.html#t:Either">Either</a> <a href="Network-Protocol-XMPP.html#t:Error">Error</a> a)</li><li class="src short"><a href="#v:runComponent">runComponent</a> :: <a href="Network-Protocol-XMPP.html#t:Server">Server</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Either.html#t:Either">Either</a> <a href="Network-Protocol-XMPP.html#t:Error">Error</a> a)</li><li class="src short"><a href="#v:putStanza">putStanza</a> :: <a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a> a =&gt; a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> ()</li><li class="src short"><a href="#v:getStanza">getStanza</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> <a href="Network-Protocol-XMPP.html#t:ReceivedStanza">ReceivedStanza</a></li><li class="src short"><a href="#v:bindJID">bindJID</a> :: <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:Session">Session</a></li><li class="src short"><a href="#v:getSession">getSession</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> <a href="Network-Protocol-XMPP.html#t:Session">Session</a></li><li class="src short"><a href="#v:sessionIsSecure">sessionIsSecure</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:runXMPP">runXMPP</a> :: <a href="Network-Protocol-XMPP.html#t:Session">Session</a> -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Either.html#t:Either">Either</a> <a href="Network-Protocol-XMPP.html#t:Error">Error</a> a)</li></ul></div><div id="interface"><h1 id="g:1">JIDs</h1><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:JID" class="def">JID</a> <a href="src/Network-Protocol-XMPP-JID.html#JID" class="link">Source</a> <a href="#t:JID" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:JID" class="def">JID</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:jidNode" class="def">jidNode</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:Node">Node</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:jidDomain" class="def">jidDomain</a> :: <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:jidResource" class="def">jidResource</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><p id="control.i:JID" class="caption collapser" onclick="toggleSection('i:JID')">Instances</p><div id="section.i:JID" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:JID:Eq:1" class="instance expander" onclick="toggleSection('i:id:JID:Eq:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></span> <a href="src/Network-Protocol-XMPP-JID.html#line-65" class="link">Source</a> <a href="#t:JID" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:JID:Eq:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:JID:Show:2" class="instance expander" onclick="toggleSection('i:id:JID:Show:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></span> <a href="src/Network-Protocol-XMPP-JID.html#line-67" class="link">Source</a> <a href="#t:JID" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:JID:Show:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:JID">JID</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:JID:IsString:3" class="instance expander" onclick="toggleSection('i:id:JID:IsString:3')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:IsString">IsString</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></span> <a href="src/Network-Protocol-XMPP-JID.html#line-71" class="link">Source</a> <a href="#t:JID" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:JID:IsString:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fromString">fromString</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> -&gt; <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="#v:fromString" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Node" class="def">Node</a> <a href="src/Network-Protocol-XMPP-JID.html#Node" class="link">Source</a> <a href="#t:Node" class="selflink">#</a></p><div class="subs instances"><p id="control.i:Node" class="caption collapser" onclick="toggleSection('i:Node')">Instances</p><div id="section.i:Node" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Node:Eq:1" class="instance expander" onclick="toggleSection('i:id:Node:Eq:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> <a href="Network-Protocol-XMPP.html#t:Node">Node</a></span> <a href="src/Network-Protocol-XMPP-JID.html#line-51" class="link">Source</a> <a href="#t:Node" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Node:Eq:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Network-Protocol-XMPP.html#t:Node">Node</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Node">Node</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Network-Protocol-XMPP.html#t:Node">Node</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Node">Node</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Node:Show:2" class="instance expander" onclick="toggleSection('i:id:Node:Show:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:Node">Node</a></span> <a href="src/Network-Protocol-XMPP-JID.html#line-39" class="link">Source</a> <a href="#t:Node" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Node:Show:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Node">Node</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:Node">Node</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:Node">Node</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Domain" class="def">Domain</a> <a href="src/Network-Protocol-XMPP-JID.html#Domain" class="link">Source</a> <a href="#t:Domain" class="selflink">#</a></p><div class="subs instances"><p id="control.i:Domain" class="caption collapser" onclick="toggleSection('i:Domain')">Instances</p><div id="section.i:Domain" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Domain:Eq:1" class="instance expander" onclick="toggleSection('i:id:Domain:Eq:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a></span> <a href="src/Network-Protocol-XMPP-JID.html#line-54" class="link">Source</a> <a href="#t:Domain" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Domain:Eq:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Domain:Show:2" class="instance expander" onclick="toggleSection('i:id:Domain:Show:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a></span> <a href="src/Network-Protocol-XMPP-JID.html#line-43" class="link">Source</a> <a href="#t:Domain" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Domain:Show:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:Domain">Domain</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Resource" class="def">Resource</a> <a href="src/Network-Protocol-XMPP-JID.html#Resource" class="link">Source</a> <a href="#t:Resource" class="selflink">#</a></p><div class="subs instances"><p id="control.i:Resource" class="caption collapser" onclick="toggleSection('i:Resource')">Instances</p><div id="section.i:Resource" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Resource:Eq:1" class="instance expander" onclick="toggleSection('i:id:Resource:Eq:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a></span> <a href="src/Network-Protocol-XMPP-JID.html#line-57" class="link">Source</a> <a href="#t:Resource" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Resource:Eq:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Resource:Show:2" class="instance expander" onclick="toggleSection('i:id:Resource:Show:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a></span> <a href="src/Network-Protocol-XMPP-JID.html#line-47" class="link">Source</a> <a href="#t:Resource" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Resource:Show:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:Resource">Resource</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><a id="v:strNode" class="def">strNode</a> :: <a href="Network-Protocol-XMPP.html#t:Node">Node</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-JID.html#strNode" class="link">Source</a> <a href="#v:strNode" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:strDomain" class="def">strDomain</a> :: <a href="Network-Protocol-XMPP.html#t:Domain">Domain</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-JID.html#strDomain" class="link">Source</a> <a href="#v:strDomain" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:strResource" class="def">strResource</a> :: <a href="Network-Protocol-XMPP.html#t:Resource">Resource</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-JID.html#strResource" class="link">Source</a> <a href="#v:strResource" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:parseJID" class="def">parseJID</a> :: <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-JID.html#parseJID" class="link">Source</a> <a href="#v:parseJID" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:formatJID" class="def">formatJID</a> :: <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-JID.html#formatJID" class="link">Source</a> <a href="#v:formatJID" class="selflink">#</a></p></div><h1 id="g:2">Stanzas</h1><div class="top"><p class="src"><span class="keyword">class</span> <a id="t:Stanza" class="def">Stanza</a> a <span class="keyword">where</span> <a href="src/Network-Protocol-XMPP-Stanza.html#Stanza" class="link">Source</a> <a href="#t:Stanza" class="selflink">#</a></p><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Network-Protocol-XMPP.html#v:stanzaTo">stanzaTo</a>, <a href="Network-Protocol-XMPP.html#v:stanzaFrom">stanzaFrom</a>, <a href="Network-Protocol-XMPP.html#v:stanzaID">stanzaID</a>, <a href="Network-Protocol-XMPP.html#v:stanzaLang">stanzaLang</a>, <a href="Network-Protocol-XMPP.html#v:stanzaPayloads">stanzaPayloads</a>, stanzaToElement</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a id="v:stanzaTo" class="def">stanzaTo</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaTo" class="link">Source</a> <a href="#v:stanzaTo" class="selflink">#</a></p><p class="src"><a id="v:stanzaFrom" class="def">stanzaFrom</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaFrom" class="link">Source</a> <a href="#v:stanzaFrom" class="selflink">#</a></p><p class="src"><a id="v:stanzaID" class="def">stanzaID</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaID" class="link">Source</a> <a href="#v:stanzaID" class="selflink">#</a></p><p class="src"><a id="v:stanzaLang" class="def">stanzaLang</a> :: a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaLang" class="link">Source</a> <a href="#v:stanzaLang" class="selflink">#</a></p><p class="src"><a id="v:stanzaPayloads" class="def">stanzaPayloads</a> :: a -&gt; [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>] <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaPayloads" class="link">Source</a> <a href="#v:stanzaPayloads" class="selflink">#</a></p></div><div class="subs instances"><p id="control.i:Stanza" class="caption collapser" onclick="toggleSection('i:Stanza')">Instances</p><div id="section.i:Stanza" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Stanza:Stanza:1" class="instance expander" onclick="toggleSection('i:ic:Stanza:Stanza:1')"></span> <a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a> <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-156" class="link">Source</a> <a href="#t:Stanza" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Stanza:Stanza:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:stanzaTo">stanzaTo</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaTo" class="link">Source</a> <a href="#v:stanzaTo" class="selflink">#</a></p><p class="src"><a href="#v:stanzaFrom">stanzaFrom</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaFrom" class="link">Source</a> <a href="#v:stanzaFrom" class="selflink">#</a></p><p class="src"><a href="#v:stanzaID">stanzaID</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaID" class="link">Source</a> <a href="#v:stanzaID" class="selflink">#</a></p><p class="src"><a href="#v:stanzaLang">stanzaLang</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaLang" class="link">Source</a> <a href="#v:stanzaLang" class="selflink">#</a></p><p class="src"><a href="#v:stanzaPayloads">stanzaPayloads</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>] <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaPayloads" class="link">Source</a> <a href="#v:stanzaPayloads" class="selflink">#</a></p><p class="src"><a href="#v:stanzaToElement">stanzaToElement</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Stanza:Stanza:2" class="instance expander" onclick="toggleSection('i:ic:Stanza:Stanza:2')"></span> <a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a> <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-108" class="link">Source</a> <a href="#t:Stanza" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Stanza:Stanza:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:stanzaTo">stanzaTo</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaTo" class="link">Source</a> <a href="#v:stanzaTo" class="selflink">#</a></p><p class="src"><a href="#v:stanzaFrom">stanzaFrom</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaFrom" class="link">Source</a> <a href="#v:stanzaFrom" class="selflink">#</a></p><p class="src"><a href="#v:stanzaID">stanzaID</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaID" class="link">Source</a> <a href="#v:stanzaID" class="selflink">#</a></p><p class="src"><a href="#v:stanzaLang">stanzaLang</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaLang" class="link">Source</a> <a href="#v:stanzaLang" class="selflink">#</a></p><p class="src"><a href="#v:stanzaPayloads">stanzaPayloads</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>] <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaPayloads" class="link">Source</a> <a href="#v:stanzaPayloads" class="selflink">#</a></p><p class="src"><a href="#v:stanzaToElement">stanzaToElement</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Stanza:Stanza:3" class="instance expander" onclick="toggleSection('i:ic:Stanza:Stanza:3')"></span> <a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a> <a href="Network-Protocol-XMPP.html#t:Message">Message</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-66" class="link">Source</a> <a href="#t:Stanza" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:ic:Stanza:Stanza:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:stanzaTo">stanzaTo</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaTo" class="link">Source</a> <a href="#v:stanzaTo" class="selflink">#</a></p><p class="src"><a href="#v:stanzaFrom">stanzaFrom</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaFrom" class="link">Source</a> <a href="#v:stanzaFrom" class="selflink">#</a></p><p class="src"><a href="#v:stanzaID">stanzaID</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaID" class="link">Source</a> <a href="#v:stanzaID" class="selflink">#</a></p><p class="src"><a href="#v:stanzaLang">stanzaLang</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaLang" class="link">Source</a> <a href="#v:stanzaLang" class="selflink">#</a></p><p class="src"><a href="#v:stanzaPayloads">stanzaPayloads</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>] <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaPayloads" class="link">Source</a> <a href="#v:stanzaPayloads" class="selflink">#</a></p><p class="src"><a href="#v:stanzaToElement">stanzaToElement</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:ReceivedStanza" class="def">ReceivedStanza</a> <a href="src/Network-Protocol-XMPP-Stanza.html#ReceivedStanza" class="link">Source</a> <a href="#t:ReceivedStanza" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:ReceivedMessage" class="def">ReceivedMessage</a> <a href="Network-Protocol-XMPP.html#t:Message">Message</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:ReceivedPresence" class="def">ReceivedPresence</a> <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:ReceivedIQ" class="def">ReceivedIQ</a> <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:ReceivedStanza" class="caption collapser" onclick="toggleSection('i:ReceivedStanza')">Instances</p><div id="section.i:ReceivedStanza" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:ReceivedStanza:Show:1" class="instance expander" onclick="toggleSection('i:id:ReceivedStanza:Show:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:ReceivedStanza">ReceivedStanza</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-54" class="link">Source</a> <a href="#t:ReceivedStanza" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:ReceivedStanza:Show:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:ReceivedStanza">ReceivedStanza</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:ReceivedStanza">ReceivedStanza</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:ReceivedStanza">ReceivedStanza</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Message" class="def">Message</a> <a href="src/Network-Protocol-XMPP-Stanza.html#Message" class="link">Source</a> <a href="#t:Message" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Message" class="def">Message</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:messageType" class="def">messageType</a> :: <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:messageTo" class="def">messageTo</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:messageFrom" class="def">messageFrom</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:messageID" class="def">messageID</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:messageLang" class="def">messageLang</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:messagePayloads" class="def">messagePayloads</a> :: [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>]</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><p id="control.i:Message" class="caption collapser" onclick="toggleSection('i:Message')">Instances</p><div id="section.i:Message" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Message:Show:1" class="instance expander" onclick="toggleSection('i:id:Message:Show:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:Message">Message</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-64" class="link">Source</a> <a href="#t:Message" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Message:Show:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:Message">Message</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Message:Stanza:2" class="instance expander" onclick="toggleSection('i:id:Message:Stanza:2')"></span> <a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a> <a href="Network-Protocol-XMPP.html#t:Message">Message</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-66" class="link">Source</a> <a href="#t:Message" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Message:Stanza:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:stanzaTo">stanzaTo</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaTo" class="link">Source</a> <a href="#v:stanzaTo" class="selflink">#</a></p><p class="src"><a href="#v:stanzaFrom">stanzaFrom</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaFrom" class="link">Source</a> <a href="#v:stanzaFrom" class="selflink">#</a></p><p class="src"><a href="#v:stanzaID">stanzaID</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaID" class="link">Source</a> <a href="#v:stanzaID" class="selflink">#</a></p><p class="src"><a href="#v:stanzaLang">stanzaLang</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaLang" class="link">Source</a> <a href="#v:stanzaLang" class="selflink">#</a></p><p class="src"><a href="#v:stanzaPayloads">stanzaPayloads</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>] <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaPayloads" class="link">Source</a> <a href="#v:stanzaPayloads" class="selflink">#</a></p><p class="src"><a href="#v:stanzaToElement">stanzaToElement</a> :: <a href="Network-Protocol-XMPP.html#t:Message">Message</a> -&gt; <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Presence" class="def">Presence</a> <a href="src/Network-Protocol-XMPP-Stanza.html#Presence" class="link">Source</a> <a href="#t:Presence" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Presence" class="def">Presence</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:presenceType" class="def">presenceType</a> :: <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:presenceTo" class="def">presenceTo</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:presenceFrom" class="def">presenceFrom</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:presenceID" class="def">presenceID</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:presenceLang" class="def">presenceLang</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:presencePayloads" class="def">presencePayloads</a> :: [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>]</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><p id="control.i:Presence" class="caption collapser" onclick="toggleSection('i:Presence')">Instances</p><div id="section.i:Presence" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Presence:Show:1" class="instance expander" onclick="toggleSection('i:id:Presence:Show:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-106" class="link">Source</a> <a href="#t:Presence" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Presence:Show:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:Presence">Presence</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Presence:Stanza:2" class="instance expander" onclick="toggleSection('i:id:Presence:Stanza:2')"></span> <a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a> <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-108" class="link">Source</a> <a href="#t:Presence" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Presence:Stanza:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:stanzaTo">stanzaTo</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaTo" class="link">Source</a> <a href="#v:stanzaTo" class="selflink">#</a></p><p class="src"><a href="#v:stanzaFrom">stanzaFrom</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaFrom" class="link">Source</a> <a href="#v:stanzaFrom" class="selflink">#</a></p><p class="src"><a href="#v:stanzaID">stanzaID</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaID" class="link">Source</a> <a href="#v:stanzaID" class="selflink">#</a></p><p class="src"><a href="#v:stanzaLang">stanzaLang</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaLang" class="link">Source</a> <a href="#v:stanzaLang" class="selflink">#</a></p><p class="src"><a href="#v:stanzaPayloads">stanzaPayloads</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>] <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaPayloads" class="link">Source</a> <a href="#v:stanzaPayloads" class="selflink">#</a></p><p class="src"><a href="#v:stanzaToElement">stanzaToElement</a> :: <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> -&gt; <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:IQ" class="def">IQ</a> <a href="src/Network-Protocol-XMPP-Stanza.html#IQ" class="link">Source</a> <a href="#t:IQ" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:IQ" class="def">IQ</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:iqType" class="def">iqType</a> :: <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:iqTo" class="def">iqTo</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:iqFrom" class="def">iqFrom</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:iqID" class="def">iqID</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:iqLang" class="def">iqLang</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:iqPayload" class="def">iqPayload</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><p id="control.i:IQ" class="caption collapser" onclick="toggleSection('i:IQ')">Instances</p><div id="section.i:IQ" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:IQ:Show:1" class="instance expander" onclick="toggleSection('i:id:IQ:Show:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-154" class="link">Source</a> <a href="#t:IQ" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:IQ:Show:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:IQ">IQ</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:IQ:Stanza:2" class="instance expander" onclick="toggleSection('i:id:IQ:Stanza:2')"></span> <a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a> <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-156" class="link">Source</a> <a href="#t:IQ" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:IQ:Stanza:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:stanzaTo">stanzaTo</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaTo" class="link">Source</a> <a href="#v:stanzaTo" class="selflink">#</a></p><p class="src"><a href="#v:stanzaFrom">stanzaFrom</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaFrom" class="link">Source</a> <a href="#v:stanzaFrom" class="selflink">#</a></p><p class="src"><a href="#v:stanzaID">stanzaID</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaID" class="link">Source</a> <a href="#v:stanzaID" class="selflink">#</a></p><p class="src"><a href="#v:stanzaLang">stanzaLang</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a> <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaLang" class="link">Source</a> <a href="#v:stanzaLang" class="selflink">#</a></p><p class="src"><a href="#v:stanzaPayloads">stanzaPayloads</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; [<a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a>] <a href="src/Network-Protocol-XMPP-Stanza.html#stanzaPayloads" class="link">Source</a> <a href="#v:stanzaPayloads" class="selflink">#</a></p><p class="src"><a href="#v:stanzaToElement">stanzaToElement</a> :: <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> -&gt; <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:MessageType" class="def">MessageType</a> <a href="src/Network-Protocol-XMPP-Stanza.html#MessageType" class="link">Source</a> <a href="#t:MessageType" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:MessageNormal" class="def">MessageNormal</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:MessageChat" class="def">MessageChat</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:MessageGroupChat" class="def">MessageGroupChat</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:MessageHeadline" class="def">MessageHeadline</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:MessageError" class="def">MessageError</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:MessageType" class="caption collapser" onclick="toggleSection('i:MessageType')">Instances</p><div id="section.i:MessageType" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:MessageType:Eq:1" class="instance expander" onclick="toggleSection('i:id:MessageType:Eq:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-86" class="link">Source</a> <a href="#t:MessageType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:MessageType:Eq:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:MessageType:Show:2" class="instance expander" onclick="toggleSection('i:id:MessageType:Show:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-86" class="link">Source</a> <a href="#t:MessageType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:MessageType:Show:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:PresenceType" class="def">PresenceType</a> <a href="src/Network-Protocol-XMPP-Stanza.html#PresenceType" class="link">Source</a> <a href="#t:PresenceType" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:PresenceAvailable" class="def">PresenceAvailable</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:PresenceUnavailable" class="def">PresenceUnavailable</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:PresenceSubscribe" class="def">PresenceSubscribe</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:PresenceSubscribed" class="def">PresenceSubscribed</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:PresenceUnsubscribe" class="def">PresenceUnsubscribe</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:PresenceUnsubscribed" class="def">PresenceUnsubscribed</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:PresenceProbe" class="def">PresenceProbe</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:PresenceError" class="def">PresenceError</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:PresenceType" class="caption collapser" onclick="toggleSection('i:PresenceType')">Instances</p><div id="section.i:PresenceType" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PresenceType:Eq:1" class="instance expander" onclick="toggleSection('i:id:PresenceType:Eq:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-134" class="link">Source</a> <a href="#t:PresenceType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PresenceType:Eq:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:PresenceType:Show:2" class="instance expander" onclick="toggleSection('i:id:PresenceType:Show:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-134" class="link">Source</a> <a href="#t:PresenceType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:PresenceType:Show:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:IQType" class="def">IQType</a> <a href="src/Network-Protocol-XMPP-Stanza.html#IQType" class="link">Source</a> <a href="#t:IQType" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:IQGet" class="def">IQGet</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:IQSet" class="def">IQSet</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:IQResult" class="def">IQResult</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:IQError" class="def">IQError</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:IQType" class="caption collapser" onclick="toggleSection('i:IQType')">Instances</p><div id="section.i:IQType" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:IQType:Eq:1" class="instance expander" onclick="toggleSection('i:id:IQType:Eq:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-176" class="link">Source</a> <a href="#t:IQType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:IQType:Eq:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:IQType:Show:2" class="instance expander" onclick="toggleSection('i:id:IQType:Show:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a></span> <a href="src/Network-Protocol-XMPP-Stanza.html#line-176" class="link">Source</a> <a href="#t:IQType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:IQType:Show:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:IQType">IQType</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><a id="v:emptyMessage" class="def">emptyMessage</a> :: <a href="Network-Protocol-XMPP.html#t:MessageType">MessageType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Message">Message</a> <a href="src/Network-Protocol-XMPP-Stanza.html#emptyMessage" class="link">Source</a> <a href="#v:emptyMessage" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:emptyPresence" class="def">emptyPresence</a> :: <a href="Network-Protocol-XMPP.html#t:PresenceType">PresenceType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Presence">Presence</a> <a href="src/Network-Protocol-XMPP-Stanza.html#emptyPresence" class="link">Source</a> <a href="#v:emptyPresence" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:emptyIQ" class="def">emptyIQ</a> :: <a href="Network-Protocol-XMPP.html#t:IQType">IQType</a> -&gt; <a href="Network-Protocol-XMPP.html#t:IQ">IQ</a> <a href="src/Network-Protocol-XMPP-Stanza.html#emptyIQ" class="link">Source</a> <a href="#v:emptyIQ" class="selflink">#</a></p></div><h1 id="g:3">The XMPP monad</h1><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:XMPP" class="def">XMPP</a> a <a href="src/Network-Protocol-XMPP-Monad.html#XMPP" class="link">Source</a> <a href="#t:XMPP" class="selflink">#</a></p><div class="subs instances"><p id="control.i:XMPP" class="caption collapser" onclick="toggleSection('i:XMPP')">Instances</p><div id="section.i:XMPP" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:XMPP:Monad:1" class="instance expander" onclick="toggleSection('i:id:XMPP:Monad:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a></span> <a href="src/Network-Protocol-XMPP-Monad.html#line-97" class="link">Source</a> <a href="#t:XMPP" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:XMPP:Monad:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; (a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b) -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:XMPP:Functor:2" class="instance expander" onclick="toggleSection('i:id:XMPP:Functor:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a></span> <a href="src/Network-Protocol-XMPP-Monad.html#line-94" class="link">Source</a> <a href="#t:XMPP" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:XMPP:Functor:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fmap">fmap</a> :: (a -&gt; b) -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b <a href="#v:fmap" class="selflink">#</a></p><p class="src"><a href="#v:-60--36-">(&lt;$)</a> :: a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a <a href="#v:-60--36-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:XMPP:MonadFix:3" class="instance expander" onclick="toggleSection('i:id:XMPP:MonadFix:3')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad-Fix.html#t:MonadFix">MonadFix</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a></span> <a href="src/Network-Protocol-XMPP-Monad.html#line-113" class="link">Source</a> <a href="#t:XMPP" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:XMPP:MonadFix:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mfix">mfix</a> :: (a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a) -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a <a href="#v:mfix" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:XMPP:Applicative:4" class="instance expander" onclick="toggleSection('i:id:XMPP:Applicative:4')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a></span> <a href="src/Network-Protocol-XMPP-Monad.html#line-109" class="link">Source</a> <a href="#t:XMPP" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:XMPP:Applicative:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:pure">pure</a> :: a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a <a href="#v:pure" class="selflink">#</a></p><p class="src"><a href="#v:-60--42--62-">(&lt;*&gt;)</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> (a -&gt; b) -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b <a href="#v:-60--42--62-" class="selflink">#</a></p><p class="src"><a href="#v:-42--62-">(*&gt;)</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b <a href="#v:-42--62-" class="selflink">#</a></p><p class="src"><a href="#v:-60--42-">(&lt;*)</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> b -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a <a href="#v:-60--42-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:XMPP:MonadIO:5" class="instance expander" onclick="toggleSection('i:id:XMPP:MonadIO:5')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a></span> <a href="src/Network-Protocol-XMPP-Monad.html#line-101" class="link">Source</a> <a href="#t:XMPP" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:XMPP:MonadIO:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:liftIO">liftIO</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a <a href="#v:liftIO" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:XMPP:MonadError:6" class="instance expander" onclick="toggleSection('i:id:XMPP:MonadError:6')"></span> <a href="file:///usr/share/doc/libghc-monads-tf-doc/html/Control-Monad-Error-Class.html#t:MonadError">MonadError</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a></span> <a href="src/Network-Protocol-XMPP-Monad.html#line-104" class="link">Source</a> <a href="#t:XMPP" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:XMPP:MonadError:6" class="inst-details hide"><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="file:///usr/share/doc/libghc-monads-tf-doc/html/Control-Monad-Error-Class.html#t:ErrorType">ErrorType</a> (<a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a>) :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="#t:ErrorType" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:throwError">throwError</a> :: <a href="file:///usr/share/doc/libghc-monads-tf-doc/html/Control-Monad-Error-Class.html#t:ErrorType">ErrorType</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a <a href="#v:throwError" class="selflink">#</a></p><p class="src"><a href="#v:catchError">catchError</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; (<a href="file:///usr/share/doc/libghc-monads-tf-doc/html/Control-Monad-Error-Class.html#t:ErrorType">ErrorType</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a) -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a <a href="#v:catchError" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:XMPP:ErrorType:7" class="instance expander" onclick="toggleSection('i:id:XMPP:ErrorType:7')"></span> <span class="keyword">type</span> <a href="file:///usr/share/doc/libghc-monads-tf-doc/html/Control-Monad-Error-Class.html#t:ErrorType">ErrorType</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a></span> <a href="src/Network-Protocol-XMPP-Monad.html#line-105" class="link">Source</a> <a href="#t:XMPP" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:XMPP:ErrorType:7" class="inst-details hide"><div class="src"><span class="keyword">type</span> <a href="file:///usr/share/doc/libghc-monads-tf-doc/html/Control-Monad-Error-Class.html#t:ErrorType">ErrorType</a> <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> = <a href="Network-Protocol-XMPP.html#t:Error">Error</a></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Server" class="def">Server</a> <a href="src/Network-Protocol-XMPP-Connections.html#Server" class="link">Source</a> <a href="#t:Server" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Server" class="def">Server</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:serverJID" class="def">serverJID</a> :: <a href="Network-Protocol-XMPP.html#t:JID">JID</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:serverHostname" class="def">serverHostname</a> :: <a href="file:///usr/share/doc/libghc-network-doc/html/Network-Socket.html#t:HostName">HostName</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:serverPort" class="def">serverPort</a> :: <a href="file:///usr/share/doc/libghc-network-doc/html/Network.html#t:PortID">PortID</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Error" class="def">Error</a> <a href="src/Network-Protocol-XMPP-Monad.html#Error" class="link">Source</a> <a href="#t:Error" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:AuthenticationFailure" class="def">AuthenticationFailure</a> <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></td><td class="doc"><p>The remote host refused the specified authentication credentials.</p><p>The included XML element is the error value that the server
 provided. It may contain additional information about why
 authentication failed.</p></td></tr><tr><td class="src"><a id="v:AuthenticationError" class="def">AuthenticationError</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></td><td class="doc"><p>There was an error while authenticating with the remote host.</p></td></tr><tr><td class="src"><a id="v:InvalidStanza" class="def">InvalidStanza</a> <a href="file:///usr/share/doc/libghc-xml-types-doc/html/Data-XML-Types.html#t:Element">Element</a></td><td class="doc"><p>An unrecognized or malformed <code><a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a></code> was received from the remote
 host.</p></td></tr><tr><td class="src"><a id="v:InvalidBindResult" class="def">InvalidBindResult</a> <a href="Network-Protocol-XMPP.html#t:ReceivedStanza">ReceivedStanza</a></td><td class="doc"><p>The remote host sent an invalid reply to a resource bind request.</p></td></tr><tr><td class="src"><a id="v:TransportError" class="def">TransportError</a> <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></td><td class="doc"><p>There was an error with the underlying transport.</p></td></tr><tr><td class="src"><a id="v:NoComponentStreamID" class="def">NoComponentStreamID</a></td><td class="doc"><p>The remote host did not send a stream ID when accepting a component
 connection.</p></td></tr></table></div><div class="subs instances"><p id="control.i:Error" class="caption collapser" onclick="toggleSection('i:Error')">Instances</p><div id="section.i:Error" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Error:Show:1" class="instance expander" onclick="toggleSection('i:id:Error:Show:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Network-Protocol-XMPP.html#t:Error">Error</a></span> <a href="src/Network-Protocol-XMPP-Monad.html#line-82" class="link">Source</a> <a href="#t:Error" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Error:Show:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Protocol-XMPP.html#t:Error">Error</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Network-Protocol-XMPP.html#t:Error">Error</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Network-Protocol-XMPP.html#t:Error">Error</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><a id="v:runClient" class="def">runClient</a> <a href="src/Network-Protocol-XMPP-Client.html#runClient" class="link">Source</a> <a href="#v:runClient" class="selflink">#</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="Network-Protocol-XMPP.html#t:Server">Server</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="Network-Protocol-XMPP.html#t:JID">JID</a></td><td class="doc"><p>Client JID</p></td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></td><td class="doc"><p>Username</p></td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></td><td class="doc"><p>Password</p></td></tr><tr><td class="src">-&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Either.html#t:Either">Either</a> <a href="Network-Protocol-XMPP.html#t:Error">Error</a> a)</td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><a id="v:runComponent" class="def">runComponent</a> <a href="src/Network-Protocol-XMPP-Component.html#runComponent" class="link">Source</a> <a href="#v:runComponent" class="selflink">#</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="Network-Protocol-XMPP.html#t:Server">Server</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/libghc-text-doc/html/Data-Text.html#t:Text">Text</a></td><td class="doc"><p>Server secret</p></td></tr><tr><td class="src">-&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Either.html#t:Either">Either</a> <a href="Network-Protocol-XMPP.html#t:Error">Error</a> a)</td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><a id="v:putStanza" class="def">putStanza</a> :: <a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a> a =&gt; a -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> () <a href="src/Network-Protocol-XMPP-Monad.html#putStanza" class="link">Source</a> <a href="#v:putStanza" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:getStanza" class="def">getStanza</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> <a href="Network-Protocol-XMPP.html#t:ReceivedStanza">ReceivedStanza</a> <a href="src/Network-Protocol-XMPP-Monad.html#getStanza" class="link">Source</a> <a href="#v:getStanza" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:bindJID" class="def">bindJID</a> :: <a href="Network-Protocol-XMPP.html#t:JID">JID</a> -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> <a href="Network-Protocol-XMPP.html#t:JID">JID</a> <a href="src/Network-Protocol-XMPP-Client.html#bindJID" class="link">Source</a> <a href="#v:bindJID" class="selflink">#</a></p><div class="doc"><p>Send a <code>&lt;bind&gt;</code> message for the given <code><a href="Network-Protocol-XMPP.html#t:JID">JID</a></code>, returning the server's reply. In
 most cases the reply will be the same as the input. However, if the input has no
 <code><a href="Network-Protocol-XMPP.html#t:Resource">Resource</a></code>, the returned <code><a href="Network-Protocol-XMPP.html#t:JID">JID</a></code> will contain a generated <code><a href="Network-Protocol-XMPP.html#t:Resource">Resource</a></code>.</p><p>Clients must bind a <code><a href="Network-Protocol-XMPP.html#t:JID">JID</a></code> before sending any <code><a href="Network-Protocol-XMPP.html#t:Stanza">Stanza</a></code>s.</p></div></div><h2 id="g:4">Resuming sessions</h2><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Session" class="def">Session</a> <a href="src/Network-Protocol-XMPP-Monad.html#Session" class="link">Source</a> <a href="#t:Session" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:getSession" class="def">getSession</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> <a href="Network-Protocol-XMPP.html#t:Session">Session</a> <a href="src/Network-Protocol-XMPP-Monad.html#getSession" class="link">Source</a> <a href="#v:getSession" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:sessionIsSecure" class="def">sessionIsSecure</a> :: <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Network-Protocol-XMPP-Monad.html#sessionIsSecure" class="link">Source</a> <a href="#v:sessionIsSecure" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:runXMPP" class="def">runXMPP</a> :: <a href="Network-Protocol-XMPP.html#t:Session">Session</a> -&gt; <a href="Network-Protocol-XMPP.html#t:XMPP">XMPP</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Either.html#t:Either">Either</a> <a href="Network-Protocol-XMPP.html#t:Error">Error</a> a) <a href="src/Network-Protocol-XMPP-Monad.html#runXMPP" class="link">Source</a> <a href="#v:runXMPP" class="selflink">#</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.3</p></div></body></html>