xmpipe-0.0.0.4: XMPP implementation using simple-PIPE

Safe HaskellNone

Network.XMPiPe.Core.C2S.Server

Contents

Synopsis

Types and Values

data Mpi Source

Instances

Eq Mpi 
Show Mpi 

data Jid Source

Constructors

Jid ByteString ByteString (Maybe ByteString) 

Instances

Eq Jid 
Show Jid 

data Tags Source

Constructors

Tags 

Fields

tagId :: Maybe ByteString
 
tagType :: Maybe ByteString
 
tagFrom :: Maybe Jid
 
tagTo :: Maybe Jid
 
tagLang :: Maybe ByteString
 
tagOthers :: [(QName, ByteString)]
 

Instances

Eq Tags 
Show Tags 

tagsType :: ByteString -> TagsSource

class SaslState xs => XmppState xs whereSource

Methods

getXmppState :: xs -> (Jid, [ByteString])Source

putXmppState :: (Jid, [ByteString]) -> xs -> xsSource

data Retrieve m Source

Constructors

RTPlain (ByteString -> ByteString -> ByteString -> m ()) 
RTExternal (ByteString -> m ()) 
RTDigestMd5 (ByteString -> m ByteString) 
RTScramSha1 (ByteString -> m (ByteString, ByteString, ByteString, Int)) 

Functions

starttls :: (MonadState m, [ByteString] ~ StateType m) => ByteString -> Pipe ByteString ByteString m ()Source

sasl :: (MonadState m, XmppState (StateType m), MonadError m, SaslError (ErrorType m)) => ByteString -> [Retrieve m] -> Pipe ByteString ByteString m ()Source

bind :: (MonadState m, XmppState (StateType m), MonadError m, SaslError (ErrorType m)) => ByteString -> [Feature] -> Pipe ByteString ByteString m [Xmlns]Source

input :: Monad m => [Xmlns] -> Pipe ByteString Mpi m ()Source

output :: Monad m => Pipe Mpi ByteString m ()Source