network-protocol-xmpp-0.4.8: Client library for the XMPP protocol.

Safe HaskellNone
LanguageHaskell98

Network.Protocol.XMPP

Contents

Synopsis

JIDs

data JID Source #

Constructors

JID 

Instances

Eq JID Source # 

Methods

(==) :: JID -> JID -> Bool #

(/=) :: JID -> JID -> Bool #

Show JID Source # 

Methods

showsPrec :: Int -> JID -> ShowS #

show :: JID -> String #

showList :: [JID] -> ShowS #

IsString JID Source # 

Methods

fromString :: String -> JID #

data Node Source #

Instances

Eq Node Source # 

Methods

(==) :: Node -> Node -> Bool #

(/=) :: Node -> Node -> Bool #

Show Node Source # 

Methods

showsPrec :: Int -> Node -> ShowS #

show :: Node -> String #

showList :: [Node] -> ShowS #

data Domain Source #

Instances

Stanzas

data IQType Source #

Constructors

IQGet 
IQSet 
IQResult 
IQError 

Instances

The XMPP monad

data XMPP a Source #

Instances

Monad XMPP Source # 

Methods

(>>=) :: XMPP a -> (a -> XMPP b) -> XMPP b #

(>>) :: XMPP a -> XMPP b -> XMPP b #

return :: a -> XMPP a #

fail :: String -> XMPP a #

Functor XMPP Source # 

Methods

fmap :: (a -> b) -> XMPP a -> XMPP b #

(<$) :: a -> XMPP b -> XMPP a #

MonadFix XMPP Source # 

Methods

mfix :: (a -> XMPP a) -> XMPP a #

Applicative XMPP Source # 

Methods

pure :: a -> XMPP a #

(<*>) :: XMPP (a -> b) -> XMPP a -> XMPP b #

liftA2 :: (a -> b -> c) -> XMPP a -> XMPP b -> XMPP c #

(*>) :: XMPP a -> XMPP b -> XMPP b #

(<*) :: XMPP a -> XMPP b -> XMPP a #

MonadIO XMPP Source # 

Methods

liftIO :: IO a -> XMPP a #

MonadError XMPP Source # 

Associated Types

type ErrorType (XMPP :: * -> *) :: * #

Methods

throwError :: ErrorType XMPP -> XMPP a #

catchError :: XMPP a -> (ErrorType XMPP -> XMPP a) -> XMPP a #

type ErrorType XMPP Source # 

data Error Source #

Constructors

AuthenticationFailure Element

The remote host refused the specified authentication credentials.

The included XML element is the error value that the server provided. It may contain additional information about why authentication failed.

AuthenticationError Text

There was an error while authenticating with the remote host.

InvalidStanza Element

An unrecognized or malformed Stanza was received from the remote host.

InvalidBindResult ReceivedStanza

The remote host sent an invalid reply to a resource bind request.

TransportError Text

There was an error with the underlying transport.

NoComponentStreamID

The remote host did not send a stream ID when accepting a component connection.

Instances

runClient Source #

Arguments

:: Server 
-> JID

Client JID

-> Text

Username

-> Text

Password

-> XMPP a 
-> IO (Either Error a) 

runComponent Source #

Arguments

:: Server 
-> Text

Server secret

-> XMPP a 
-> IO (Either Error a) 

putStanza :: Stanza a => a -> XMPP () Source #

bindJID :: JID -> XMPP JID Source #

Send a <bind> message for the given JID, returning the server's reply. In most cases the reply will be the same as the input. However, if the input has no Resource, the returned JID will contain a generated Resource.

Clients must bind a JID before sending any Stanzas.

Resuming sessions