2using System.Threading.Tasks;
26 StringBuilder sb =
new StringBuilder();
28 sb.Append(
"<error type='");
33 if (!
string.IsNullOrEmpty(ErrorText))
35 sb.Append(
"<text xmlns='");
38 if (!
string.IsNullOrEmpty(Language))
40 sb.Append(
"' xml:lang='");
49 sb.Append(
"</error>");
51 string Xml = sb.ToString();
53 if (await Sender.
IqError(Id, To, From, Xml))
223 StringBuilder Xml =
new StringBuilder();
225 Xml.Append(
"<error type='");
227 Xml.Append(ErrorXml);
229 if (!
string.IsNullOrEmpty(ErrorText))
231 Xml.Append(
"<text xmlns='");
234 if (!
string.IsNullOrEmpty(Language))
236 Xml.Append(
"' xml:lang='");
242 Xml.Append(
"</text>");
245 Xml.Append(
"</error>");
429 StringBuilder Xml =
new StringBuilder();
431 Xml.Append(
"<error type='");
434 Xml.Append(ErrorXml);
436 if (!
string.IsNullOrEmpty(ErrorText))
438 Xml.Append(
"<text xmlns='");
441 if (!
string.IsNullOrEmpty(Language))
443 Xml.Append(
"' xml:lang='");
449 Xml.Append(
"</text>");
452 Xml.Append(
"</error>");
454 return Sender.
Message(
"error", Id, To, From,
string.Empty, Xml.
ToString());
Helps with common XML-related tasks.
static string Encode(string s)
Encodes a string for use in XML.
Contains information about one XMPP address.
override string ToString()
object.ToString()
Extensions methods for returning XMPP Errors
static Task< bool > PresenceErrorConflict(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence conflict error stanza.
static Task< string > IqErrorForbidden(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq forbidden error stanza.
static Task< bool > PresenceErrorServiceUnavailable(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence service-unavailable error stanza.
static Task< bool > PresenceErrorNotAcceptable(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence not-acceptable error stanza.
static Task< bool > PresenceErrorNotAllowed(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence not-allowed error stanza.
static Task< bool > PresenceErrorForbidden(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence forbidden error stanza.
static async Task< string > IqError(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorType, string ErrorXml, string ErrorText, string Language)
Sends an IQ Error stanza.
static Task< string > IqErrorResourceConstraint(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq resource-constraint error stanza.
static Task< string > IqErrorNotAuthorized(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq not-authorized error stanza.
static Task< string > IqErrorJidMalformed(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq jid-malformed error stanza.
static Task< bool > MessageErrorNotAcceptable(this ISender Sender, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a message not-acceptable error stanza.
static Task< bool > PresenceErrorRegistrationRequired(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence registration-required error stanza.
static Task< bool > MessageErrorForbidden(this ISender Sender, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a message forbidden error stanza.
static Task< bool > MessageErrorItemNotFound(this ISender Sender, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a message item-not-found error stanza.
static Task< string > IqErrorItemNotFound(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq item-not-found error stanza.
static Task< bool > PresenceError(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorType, string ErrorXml, string ErrorText, string Language)
Sends an Presence Error stanza.
static Task< bool > MessageErrorJidMalformed(this ISender Sender, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a message jid-malformed error stanza.
static Task< bool > PresenceErrorNotAuthorized(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence not-authorized error stanza.
static Task< bool > MessageError(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorType, string ErrorXml, string ErrorText, string Language)
Sends an Message Error stanza.
static Task< bool > MessageErrorServiceUnavailable(this ISender Sender, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a message service-unavailable error stanza.
static Task< bool > MessageErrorBadRequest(this ISender Sender, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a message bad-request error stanza.
static Task< bool > PresenceErrorBadRequest(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence bad-request error stanza.
static Task< bool > PresenceErrorItemNotFound(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence item-not-found error stanza.
static Task< string > IqErrorConflict(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq conflict error stanza.
static Task< string > IqErrorNotAllowed(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq not-allowed error stanza.
static Task< bool > PresenceErrorResourceConstraint(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence resource-constraint error stanza.
static Task< bool > MessageErrorConflict(this ISender Sender, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a message conflict error stanza.
static Task< string > IqErrorServiceUnavailable(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq service-unavailable error stanza.
static Task< bool > PresenceErrorJidMalformed(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns a presence jid-malformed error stanza.
static Task< string > IqErrorNotAcceptable(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq not-acceptable error stanza.
static Task< string > IqErrorBadRequest(this ISender Sender, string Id, XmppAddress To, XmppAddress From, string ErrorText, string Language)
Returns an iq bad-request error stanza.
const string StanzaNamespace
urn:ietf:params:xml:ns:xmpp-stanzas (RFC 6120)
Interface for senders of stanzas.
Task< bool > Message(string Type, string Id, XmppAddress To, XmppAddress From, string Language, string ContentXml)
Message stanza.
Task< string > IqError(string Id, XmppAddress To, XmppAddress From, Exception ex)
Sends an IQ Error stanza.
Task< bool > PresenceError(string Id, XmppAddress To, XmppAddress From, Exception ex)
Sends an Presence Error stanza.