2using System.Collections.Generic;
3using System.Threading.Tasks;
Contains information about a stanza.
Contains information about one XMPP address.
Represents a case-insensitive string.
Interface for XMPP Server persistence layers. The persistence layer should implement caching.
Interface for XMPP Server persistence layers. The persistence layer should implement caching.
Task< bool > AddBlock(CaseInsensitiveString UserName, CaseInsensitiveString BareJid, BlockingReason Reason, string Text, string TextLanguage)
Blocks an account.
Task AccountUpdated(CaseInsensitiveString UserName)
Called when account has been updated.
new Task< IAccount > GetAccount(CaseInsensitiveString UserName)
Method to call to fetch account information.
Task< IEnumerable< CaseInsensitiveString > > GetBlockList(CaseInsensitiveString UserName)
Gets the entire block list for an account.
Task< bool > SetVCard(CaseInsensitiveString UserName, string VCard)
Sets the vCard of an account.
Task< bool > StoreOfflineMessage(string Type, string Id, XmppAddress To, XmppAddress From, string Language, string ContentXml)
Tries to save an offline message.
Task< byte[]> GetDialbackSecret()
Gets the Dialback secret, as defined in XEP-0185.
Task< KeyValuePair< IAccount, string[]> > CreateAccount(string ApiKey, CaseInsensitiveString UserName, string Password, CaseInsensitiveString EMail, CaseInsensitiveString PhoneNr, string RemoteEndpoint)
Creates an account.
Task< IEnumerable< IOfflineMessage > > GetOfflineMessages(CaseInsensitiveString ToUserName, int Max)
Gets the oldest offline messages stored for a given bare JID, up to a maximum count.
Task< bool > Unblock(CaseInsensitiveString UserName, CaseInsensitiveString BareJid)
Unblocks an account.
Task< bool > ClearBlocks(CaseInsensitiveString UserName)
Remove all blocks for an account.
Task< bool > IsPermitted(CaseInsensitiveString BareJid, string Setting)
Checks if a feature is permitted for a Bare JID.
Task< IEnumerable< IRosterItem > > GetRoster(CaseInsensitiveString UserName)
Gets the roster of an account.
Task< bool > IsBlocked(CaseInsensitiveString FromBareJid, CaseInsensitiveString ToBareJid)
Checks if a sender is blocked by a receiver.
Task< bool > SetAvatar(CaseInsensitiveString UserName, string ContentType, byte[] Data)
Sets an avatar for a user.
Task< bool > StoreOfflineMessage(string Type, string Id, XmppAddress To, XmppAddress From, string Language, Stanza Stanza)
Tries to save an offline message.
Task< bool > DeleteAccount(CaseInsensitiveString UserName, string RemoteEndpoint)
Deletes an account.
Task< IRosterItem > GetRosterItem(CaseInsensitiveString UserName, CaseInsensitiveString Jid)
Gets a roster item for an account.
Task< string > GetVCard(CaseInsensitiveString UserName)
Gets the vCard of an account.
Task< bool > RemoveRosterItem(CaseInsensitiveString UserName, CaseInsensitiveString Jid)
Removes a roster item.
Task< Tuple< string, byte[]> > GetAvatar(CaseInsensitiveString UserName)
Gets the avatar of an account.
Task< string > GetApiKeySecret(string ApiKey)
Gets the secret for a given API key.
Task DeleteOfflineMessages(IEnumerable< IOfflineMessage > Messages)
Deletes offline messages.
Task< IRosterItem > SetRosterItem(CaseInsensitiveString UserName, CaseInsensitiveString Jid, string Name, SubscriptionStatus? Subscription, bool? PendingSubscription, string[] Groups)
Sets a roster item in a users roster.
Task< bool > ChangePassword(CaseInsensitiveString UserName, string Password)
Changes the password of an account.
SubscriptionStatus
Roster item subscription status enumeration.
BlockingReason
Reason for blocking an account.
PendingSubscription
Pending subscription states.