Network.XMPP.Types
- type HostName = String
- type Password = String
- type PortNumber = Integer
- type Resource = String
- type UserName = String
- data EnumeratorEvent
- data Challenge = Chal String
- data Success = Succ String
- data TLSState
- = NoTLS
- | PreProceed
- | PreHandshake
- | PostHandshake TLSCtx
- data JID = JID {}
- data StanzaID = SID String
- type From = JID
- type To = JID
- type XMLLang = String
- data Stanza = Stanza {}
- data MessageType
- data Message
- = Message { }
- | MessageError { }
- data PresenceType
- = Subscribe
- | Subscribed
- | Unsubscribe
- | Unsubscribed
- | Probe
- | Available
- | Unavailable
- data Presence
- data IQ
- data InternalEvent s m
- = IEC (ClientEvent s m)
- | IEE EnumeratorEvent
- | IET (TimeoutEvent s m)
- data XMLEvent
- = XEBeginStream String
- | XEFeatures String
- | XEChallenge Challenge
- | XESuccess Success
- | XEEndStream
- | XEIQ IQ
- | XEPresence Presence
- | XEMessage Message
- | XEProceed
- | XEOther String
- data ConnectionState
- data ClientEvent s m
- = CEOpenStream HostName PortNumber (OpenStreamResult -> StateT s m ())
- | CESecureWithTLS Certificate (Certificate -> Bool) (SecureWithTLSResult -> StateT s m ())
- | CEAuthenticate UserName Password (Maybe Resource) (AuthenticateResult -> StateT s m ())
- | CEMessage Message (Maybe (Message -> StateT s m Bool)) (Maybe (Timeout, StateT s m ())) (Maybe (StreamError -> StateT s m ()))
- | CEPresence Presence (Maybe (Presence -> StateT s m Bool)) (Maybe (Timeout, StateT s m ())) (Maybe (StreamError -> StateT s m ()))
- | CEIQ IQ (Maybe (IQ -> StateT s m Bool)) (Maybe (Timeout, StateT s m ())) (Maybe (StreamError -> StateT s m ()))
- | CEAction (Maybe (StateT s m Bool)) (StateT s m ())
- data StreamState
- = PreStream
- | PreFeatures StreamProperties
- | PostFeatures StreamProperties StreamFeatures
- data AuthenticationState
- type Certificate = String
- data ConnectResult
- = ConnectSuccess StreamProperties StreamFeatures (Maybe Resource)
- | ConnectOpenStreamFailure
- | ConnectSecureWithTLSFailure
- | ConnectAuthenticateFailure
- data OpenStreamResult
- = OpenStreamSuccess StreamProperties StreamFeatures
- | OpenStreamFailure
- data SecureWithTLSResult
- = SecureWithTLSSuccess StreamProperties StreamFeatures
- | SecureWithTLSFailure
- data AuthenticateResult
- = AuthenticateSuccess StreamProperties StreamFeatures Resource
- | AuthenticateFailure
- data ServerAddress = ServerAddress HostName PortNumber
- data XMPPError = UncaughtEvent
- data StanzaError = StanzaError {}
- data StanzaErrorType
- data StanzaErrorCondition
- = BadRequest
- | Conflict
- | FeatureNotImplemented
- | Forbidden
- | Gone
- | InternalServerError
- | ItemNotFound
- | JIDMalformed
- | NotAcceptable
- | NotAllowed
- | NotAuthorized
- | PaymentRequired
- | RecipientUnavailable
- | Redirect
- | RegistrationRequired
- | RemoteServerNotFound
- | RemoteServerTimeout
- | ResourceConstraint
- | ServiceUnavailable
- | SubscriptionRequired
- | UndefinedCondition
- | UnexpectedRequest
- type Timeout = Int
- data TimeoutEvent s m = TimeoutEvent StanzaID Timeout (StateT s m ())
- data StreamError = StreamError
- type XMLString = String
Documentation
type PortNumber = IntegerSource
Readability type for port number Integers.
data EnumeratorEvent Source
Instances
Constructors
| NoTLS | |
| PreProceed | |
| PreHandshake | |
| PostHandshake TLSCtx |
Constructors
| Stanza | |
data MessageType Source
Instances
Constructors
| Message | |
Fields
| |
| MessageError | |
Fields | |
data PresenceType Source
Constructors
| Subscribe | Sender wants to subscribe to presence |
| Subscribed | Sender has approved the subscription |
| Unsubscribe | Sender is unsubscribing from presence |
| Unsubscribed | Sender has denied or cancelled a subscription |
| Probe | Sender requests current presence; should only be used by servers PresenceError | -- ^ Processing or delivery of previously sent presence stanza failed |
| Available | |
| Unavailable |
Instances
Presence stanzas are used to express an entity's network availability.
Constructors
| Presence | |
Fields | |
| PresenceError | |
Fields | |
Constructors
| IQGet | |
Fields
| |
| IQSet | |
Fields
| |
| IQResult | |
Fields | |
| IQError | |
Fields | |
data InternalEvent s m Source
Constructors
| IEC (ClientEvent s m) | |
| IEE EnumeratorEvent | |
| IET (TimeoutEvent s m) |
Instances
| Show (InternalEvent s m) |
data ClientEvent s m Source
Constructors
| CEOpenStream HostName PortNumber (OpenStreamResult -> StateT s m ()) | |
| CESecureWithTLS Certificate (Certificate -> Bool) (SecureWithTLSResult -> StateT s m ()) | |
| CEAuthenticate UserName Password (Maybe Resource) (AuthenticateResult -> StateT s m ()) | |
| CEMessage Message (Maybe (Message -> StateT s m Bool)) (Maybe (Timeout, StateT s m ())) (Maybe (StreamError -> StateT s m ())) | |
| CEPresence Presence (Maybe (Presence -> StateT s m Bool)) (Maybe (Timeout, StateT s m ())) (Maybe (StreamError -> StateT s m ())) | |
| CEIQ IQ (Maybe (IQ -> StateT s m Bool)) (Maybe (Timeout, StateT s m ())) (Maybe (StreamError -> StateT s m ())) | |
| CEAction (Maybe (StateT s m Bool)) (StateT s m ()) |
Instances
| Show (ClientEvent s m) |
data StreamState Source
Constructors
| PreStream | |
| PreFeatures StreamProperties | |
| PostFeatures StreamProperties StreamFeatures |
type Certificate = StringSource
data ConnectResult Source
Constructors
| ConnectSuccess StreamProperties StreamFeatures (Maybe Resource) | |
| ConnectOpenStreamFailure | |
| ConnectSecureWithTLSFailure | |
| ConnectAuthenticateFailure |
data OpenStreamResult Source
Constructors
| OpenStreamSuccess StreamProperties StreamFeatures | |
| OpenStreamFailure |
data SecureWithTLSResult Source
Constructors
| SecureWithTLSSuccess StreamProperties StreamFeatures | |
| SecureWithTLSFailure |
data AuthenticateResult Source
Constructors
| AuthenticateSuccess StreamProperties StreamFeatures Resource | |
| AuthenticateFailure |
data StanzaErrorType Source
All stanzas (IQ, message, presence) can cause errors, which looks like stanza-kind to='sender' type='error'. These errors are of one of the types listed below.
Constructors
| Cancel | Error is unrecoverable - do not retry |
| Continue | Conditition was a warning - proceed |
| Modify | Change the data and retry |
| Auth | Provide credentials and retry |
| Wait | Error is temporary - wait and retry |
Instances
data StanzaErrorCondition Source
The stanza errors are accommodated with one of the error conditions listed below. The ones that are not self-explainatory should be documented below.
Constructors
| BadRequest | Malformed XML |
| Conflict | Resource or session with name already exists |
| FeatureNotImplemented | |
| Forbidden | Insufficient permissions |
| Gone | Entity can no longer be contacted at this address |
| InternalServerError | |
| ItemNotFound | |
| JIDMalformed | |
| NotAcceptable | Does not meet policy criteria |
| NotAllowed | No entity may perform this action |
| NotAuthorized | Must provide proper credentials |
| PaymentRequired | |
| RecipientUnavailable | Temporarily unavailable |
| Redirect | Redirecting to other entity, usually temporarily |
| RegistrationRequired | |
| RemoteServerNotFound | |
| RemoteServerTimeout | |
| ResourceConstraint | Entity lacks the necessary system resources |
| ServiceUnavailable | |
| SubscriptionRequired | |
| UndefinedCondition | Application-specific condition |
| UnexpectedRequest | Badly timed request |
Instances
data TimeoutEvent s m Source
Constructors
| TimeoutEvent StanzaID Timeout (StateT s m ()) |
Instances
| Show (TimeoutEvent s m) |
data StreamError Source
Constructors
| StreamError |