mirror of
https://github.com/processone/ejabberd.git
synced 2024-12-08 16:52:59 +01:00
18660 lines
654 KiB
Erlang
18660 lines
654 KiB
Erlang
%% Created automatically by XML generator (xml_gen.erl)
|
|
%% Source: xmpp_codec.spec
|
|
|
|
-module(xmpp_codec).
|
|
|
|
-compile({nowarn_unused_function,
|
|
[{dec_int, 3}, {dec_int, 1}, {dec_enum, 2},
|
|
{enc_int, 1}, {get_attr, 2}, {enc_enum, 1}]}).
|
|
|
|
-export([pp/1, format_error/1, decode/1, decode/2,
|
|
is_known_tag/1, encode/1, get_ns/1]).
|
|
|
|
decode(_el) -> decode(_el, []).
|
|
|
|
decode({xmlel, _name, _attrs, _} = _el, Opts) ->
|
|
IgnoreEls = proplists:get_bool(ignore_els, Opts),
|
|
case {_name, get_attr(<<"xmlns">>, _attrs)} of
|
|
{<<"failed">>, <<"urn:xmpp:sm:2">>} ->
|
|
decode_sm_failed(<<"urn:xmpp:sm:2">>, IgnoreEls, _el);
|
|
{<<"failed">>, <<"urn:xmpp:sm:3">>} ->
|
|
decode_sm_failed(<<"urn:xmpp:sm:3">>, IgnoreEls, _el);
|
|
{<<"a">>, <<"urn:xmpp:sm:2">>} ->
|
|
decode_sm_a(<<"urn:xmpp:sm:2">>, IgnoreEls, _el);
|
|
{<<"a">>, <<"urn:xmpp:sm:3">>} ->
|
|
decode_sm_a(<<"urn:xmpp:sm:3">>, IgnoreEls, _el);
|
|
{<<"r">>, <<"urn:xmpp:sm:2">>} ->
|
|
decode_sm_r(<<"urn:xmpp:sm:2">>, IgnoreEls, _el);
|
|
{<<"r">>, <<"urn:xmpp:sm:3">>} ->
|
|
decode_sm_r(<<"urn:xmpp:sm:3">>, IgnoreEls, _el);
|
|
{<<"resumed">>, <<"urn:xmpp:sm:2">>} ->
|
|
decode_sm_resumed(<<"urn:xmpp:sm:2">>, IgnoreEls, _el);
|
|
{<<"resumed">>, <<"urn:xmpp:sm:3">>} ->
|
|
decode_sm_resumed(<<"urn:xmpp:sm:3">>, IgnoreEls, _el);
|
|
{<<"resume">>, <<"urn:xmpp:sm:2">>} ->
|
|
decode_sm_resume(<<"urn:xmpp:sm:2">>, IgnoreEls, _el);
|
|
{<<"resume">>, <<"urn:xmpp:sm:3">>} ->
|
|
decode_sm_resume(<<"urn:xmpp:sm:3">>, IgnoreEls, _el);
|
|
{<<"enabled">>, <<"urn:xmpp:sm:2">>} ->
|
|
decode_sm_enabled(<<"urn:xmpp:sm:2">>, IgnoreEls, _el);
|
|
{<<"enabled">>, <<"urn:xmpp:sm:3">>} ->
|
|
decode_sm_enabled(<<"urn:xmpp:sm:3">>, IgnoreEls, _el);
|
|
{<<"enable">>, <<"urn:xmpp:sm:2">>} ->
|
|
decode_sm_enable(<<"urn:xmpp:sm:2">>, IgnoreEls, _el);
|
|
{<<"enable">>, <<"urn:xmpp:sm:3">>} ->
|
|
decode_sm_enable(<<"urn:xmpp:sm:3">>, IgnoreEls, _el);
|
|
{<<"sm">>, <<"urn:xmpp:sm:2">>} ->
|
|
decode_feature_sm(<<"urn:xmpp:sm:2">>, IgnoreEls, _el);
|
|
{<<"sm">>, <<"urn:xmpp:sm:3">>} ->
|
|
decode_feature_sm(<<"urn:xmpp:sm:3">>, IgnoreEls, _el);
|
|
{<<"inactive">>, <<"urn:xmpp:csi:0">>} ->
|
|
decode_csi_inactive(<<"urn:xmpp:csi:0">>, IgnoreEls,
|
|
_el);
|
|
{<<"active">>, <<"urn:xmpp:csi:0">>} ->
|
|
decode_csi_active(<<"urn:xmpp:csi:0">>, IgnoreEls, _el);
|
|
{<<"csi">>, <<"urn:xmpp:csi:0">>} ->
|
|
decode_feature_csi(<<"urn:xmpp:csi:0">>, IgnoreEls,
|
|
_el);
|
|
{<<"sent">>, <<"urn:xmpp:carbons:2">>} ->
|
|
decode_carbons_sent(<<"urn:xmpp:carbons:2">>, IgnoreEls,
|
|
_el);
|
|
{<<"received">>, <<"urn:xmpp:carbons:2">>} ->
|
|
decode_carbons_received(<<"urn:xmpp:carbons:2">>,
|
|
IgnoreEls, _el);
|
|
{<<"private">>, <<"urn:xmpp:carbons:2">>} ->
|
|
decode_carbons_private(<<"urn:xmpp:carbons:2">>,
|
|
IgnoreEls, _el);
|
|
{<<"enable">>, <<"urn:xmpp:carbons:2">>} ->
|
|
decode_carbons_enable(<<"urn:xmpp:carbons:2">>,
|
|
IgnoreEls, _el);
|
|
{<<"disable">>, <<"urn:xmpp:carbons:2">>} ->
|
|
decode_carbons_disable(<<"urn:xmpp:carbons:2">>,
|
|
IgnoreEls, _el);
|
|
{<<"forwarded">>, <<"urn:xmpp:forward:0">>} ->
|
|
decode_forwarded(<<"urn:xmpp:forward:0">>, IgnoreEls,
|
|
_el);
|
|
{<<"x">>, <<"http://jabber.org/protocol/muc">>} ->
|
|
decode_muc(<<"http://jabber.org/protocol/muc">>,
|
|
IgnoreEls, _el);
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
decode_muc_admin(<<"http://jabber.org/protocol/muc#admin">>,
|
|
IgnoreEls, _el);
|
|
{<<"reason">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
decode_muc_admin_reason(<<"http://jabber.org/protocol/muc#admin">>,
|
|
IgnoreEls, _el);
|
|
{<<"continue">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
decode_muc_admin_continue(<<"http://jabber.org/protocol/muc#admin">>,
|
|
IgnoreEls, _el);
|
|
{<<"actor">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
decode_muc_admin_actor(<<"http://jabber.org/protocol/muc#admin">>,
|
|
IgnoreEls, _el);
|
|
{<<"item">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
decode_muc_admin_item(<<"http://jabber.org/protocol/muc#admin">>,
|
|
IgnoreEls, _el);
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/muc#owner">>} ->
|
|
decode_muc_owner(<<"http://jabber.org/protocol/muc#owner">>,
|
|
IgnoreEls, _el);
|
|
{<<"destroy">>,
|
|
<<"http://jabber.org/protocol/muc#owner">>} ->
|
|
decode_muc_owner_destroy(<<"http://jabber.org/protocol/muc#owner">>,
|
|
IgnoreEls, _el);
|
|
{<<"reason">>,
|
|
<<"http://jabber.org/protocol/muc#owner">>} ->
|
|
decode_muc_owner_reason(<<"http://jabber.org/protocol/muc#owner">>,
|
|
IgnoreEls, _el);
|
|
{<<"password">>,
|
|
<<"http://jabber.org/protocol/muc#owner">>} ->
|
|
decode_muc_owner_password(<<"http://jabber.org/protocol/muc#owner">>,
|
|
IgnoreEls, _el);
|
|
{<<"x">>, <<"http://jabber.org/protocol/muc#user">>} ->
|
|
decode_muc_user(<<"http://jabber.org/protocol/muc#user">>,
|
|
IgnoreEls, _el);
|
|
{<<"item">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
decode_muc_user_item(<<"http://jabber.org/protocol/muc#user">>,
|
|
IgnoreEls, _el);
|
|
{<<"status">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
decode_muc_user_status(<<"http://jabber.org/protocol/muc#user">>,
|
|
IgnoreEls, _el);
|
|
{<<"continue">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
decode_muc_user_continue(<<"http://jabber.org/protocol/muc#user">>,
|
|
IgnoreEls, _el);
|
|
{<<"actor">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
decode_muc_user_actor(<<"http://jabber.org/protocol/muc#user">>,
|
|
IgnoreEls, _el);
|
|
{<<"invite">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
decode_muc_user_invite(<<"http://jabber.org/protocol/muc#user">>,
|
|
IgnoreEls, _el);
|
|
{<<"destroy">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
decode_muc_user_destroy(<<"http://jabber.org/protocol/muc#user">>,
|
|
IgnoreEls, _el);
|
|
{<<"decline">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
decode_muc_user_decline(<<"http://jabber.org/protocol/muc#user">>,
|
|
IgnoreEls, _el);
|
|
{<<"reason">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
decode_muc_user_reason(<<"http://jabber.org/protocol/muc#user">>,
|
|
IgnoreEls, _el);
|
|
{<<"history">>, <<"http://jabber.org/protocol/muc">>} ->
|
|
decode_muc_history(<<"http://jabber.org/protocol/muc">>,
|
|
IgnoreEls, _el);
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/bytestreams">>} ->
|
|
decode_bytestreams(<<"http://jabber.org/protocol/bytestreams">>,
|
|
IgnoreEls, _el);
|
|
{<<"activate">>,
|
|
<<"http://jabber.org/protocol/bytestreams">>} ->
|
|
decode_bytestreams_activate(<<"http://jabber.org/protocol/bytestreams">>,
|
|
IgnoreEls, _el);
|
|
{<<"streamhost-used">>,
|
|
<<"http://jabber.org/protocol/bytestreams">>} ->
|
|
decode_bytestreams_streamhost_used(<<"http://jabber.org/protocol/bytestreams">>,
|
|
IgnoreEls, _el);
|
|
{<<"streamhost">>,
|
|
<<"http://jabber.org/protocol/bytestreams">>} ->
|
|
decode_bytestreams_streamhost(<<"http://jabber.org/protocol/bytestreams">>,
|
|
IgnoreEls, _el);
|
|
{<<"x">>, <<"jabber:x:delay">>} ->
|
|
decode_legacy_delay(<<"jabber:x:delay">>, IgnoreEls,
|
|
_el);
|
|
{<<"delay">>, <<"urn:xmpp:delay">>} ->
|
|
decode_delay(<<"urn:xmpp:delay">>, IgnoreEls, _el);
|
|
{<<"paused">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
decode_chatstate_paused(<<"http://jabber.org/protocol/chatstates">>,
|
|
IgnoreEls, _el);
|
|
{<<"inactive">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
decode_chatstate_inactive(<<"http://jabber.org/protocol/chatstates">>,
|
|
IgnoreEls, _el);
|
|
{<<"gone">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
decode_chatstate_gone(<<"http://jabber.org/protocol/chatstates">>,
|
|
IgnoreEls, _el);
|
|
{<<"composing">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
decode_chatstate_composing(<<"http://jabber.org/protocol/chatstates">>,
|
|
IgnoreEls, _el);
|
|
{<<"active">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
decode_chatstate_active(<<"http://jabber.org/protocol/chatstates">>,
|
|
IgnoreEls, _el);
|
|
{<<"headers">>,
|
|
<<"http://jabber.org/protocol/shim">>} ->
|
|
decode_shim_headers(<<"http://jabber.org/protocol/shim">>,
|
|
IgnoreEls, _el);
|
|
{<<"header">>, <<"http://jabber.org/protocol/shim">>} ->
|
|
decode_shim_header(<<"http://jabber.org/protocol/shim">>,
|
|
IgnoreEls, _el);
|
|
{<<"pubsub">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"retract">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_retract(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"options">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_options(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"publish">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_publish(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"unsubscribe">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_unsubscribe(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"subscribe">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_subscribe(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"affiliations">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_affiliations(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"subscriptions">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_subscriptions(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"event">>,
|
|
<<"http://jabber.org/protocol/pubsub#event">>} ->
|
|
decode_pubsub_event(<<"http://jabber.org/protocol/pubsub#event">>,
|
|
IgnoreEls, _el);
|
|
{<<"items">>,
|
|
<<"http://jabber.org/protocol/pubsub#event">>} ->
|
|
decode_pubsub_event_items(<<"http://jabber.org/protocol/pubsub#event">>,
|
|
IgnoreEls, _el);
|
|
{<<"item">>,
|
|
<<"http://jabber.org/protocol/pubsub#event">>} ->
|
|
decode_pubsub_event_item(<<"http://jabber.org/protocol/pubsub#event">>,
|
|
IgnoreEls, _el);
|
|
{<<"retract">>,
|
|
<<"http://jabber.org/protocol/pubsub#event">>} ->
|
|
decode_pubsub_event_retract(<<"http://jabber.org/protocol/pubsub#event">>,
|
|
IgnoreEls, _el);
|
|
{<<"items">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_items(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"item">>, <<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_item(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"affiliation">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_affiliation(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"subscription">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
decode_pubsub_subscription(<<"http://jabber.org/protocol/pubsub">>,
|
|
IgnoreEls, _el);
|
|
{<<"x">>, <<"jabber:x:data">>} ->
|
|
decode_xdata(<<"jabber:x:data">>, IgnoreEls, _el);
|
|
{<<"item">>, <<"jabber:x:data">>} ->
|
|
decode_xdata_item(<<"jabber:x:data">>, IgnoreEls, _el);
|
|
{<<"reported">>, <<"jabber:x:data">>} ->
|
|
decode_xdata_reported(<<"jabber:x:data">>, IgnoreEls,
|
|
_el);
|
|
{<<"title">>, <<"jabber:x:data">>} ->
|
|
decode_xdata_title(<<"jabber:x:data">>, IgnoreEls, _el);
|
|
{<<"instructions">>, <<"jabber:x:data">>} ->
|
|
decode_xdata_instructions(<<"jabber:x:data">>,
|
|
IgnoreEls, _el);
|
|
{<<"field">>, <<"jabber:x:data">>} ->
|
|
decode_xdata_field(<<"jabber:x:data">>, IgnoreEls, _el);
|
|
{<<"option">>, <<"jabber:x:data">>} ->
|
|
decode_xdata_field_option(<<"jabber:x:data">>,
|
|
IgnoreEls, _el);
|
|
{<<"value">>, <<"jabber:x:data">>} ->
|
|
decode_xdata_field_value(<<"jabber:x:data">>, IgnoreEls,
|
|
_el);
|
|
{<<"desc">>, <<"jabber:x:data">>} ->
|
|
decode_xdata_field_desc(<<"jabber:x:data">>, IgnoreEls,
|
|
_el);
|
|
{<<"required">>, <<"jabber:x:data">>} ->
|
|
decode_xdata_field_required(<<"jabber:x:data">>,
|
|
IgnoreEls, _el);
|
|
{<<"x">>, <<"vcard-temp:x:update">>} ->
|
|
decode_vcard_xupdate(<<"vcard-temp:x:update">>,
|
|
IgnoreEls, _el);
|
|
{<<"photo">>, <<"vcard-temp:x:update">>} ->
|
|
decode_vcard_xupdate_photo(<<"vcard-temp:x:update">>,
|
|
IgnoreEls, _el);
|
|
{<<"vCard">>, <<"vcard-temp">>} ->
|
|
decode_vcard(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"CLASS">>, <<"vcard-temp">>} ->
|
|
decode_vcard_CLASS(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"CATEGORIES">>, <<"vcard-temp">>} ->
|
|
decode_vcard_CATEGORIES(<<"vcard-temp">>, IgnoreEls,
|
|
_el);
|
|
{<<"KEY">>, <<"vcard-temp">>} ->
|
|
decode_vcard_KEY(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"SOUND">>, <<"vcard-temp">>} ->
|
|
decode_vcard_SOUND(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"ORG">>, <<"vcard-temp">>} ->
|
|
decode_vcard_ORG(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PHOTO">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PHOTO(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"LOGO">>, <<"vcard-temp">>} ->
|
|
decode_vcard_LOGO(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"BINVAL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_BINVAL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"GEO">>, <<"vcard-temp">>} ->
|
|
decode_vcard_GEO(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"EMAIL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_EMAIL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"TEL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_TEL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"LABEL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_LABEL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"ADR">>, <<"vcard-temp">>} ->
|
|
decode_vcard_ADR(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"N">>, <<"vcard-temp">>} ->
|
|
decode_vcard_N(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"CONFIDENTIAL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_CONFIDENTIAL(<<"vcard-temp">>, IgnoreEls,
|
|
_el);
|
|
{<<"PRIVATE">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PRIVATE(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PUBLIC">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PUBLIC(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"EXTVAL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_EXTVAL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"TYPE">>, <<"vcard-temp">>} ->
|
|
decode_vcard_TYPE(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"DESC">>, <<"vcard-temp">>} ->
|
|
decode_vcard_DESC(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"URL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_URL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"UID">>, <<"vcard-temp">>} ->
|
|
decode_vcard_UID(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"SORT-STRING">>, <<"vcard-temp">>} ->
|
|
decode_vcard_SORT_STRING(<<"vcard-temp">>, IgnoreEls,
|
|
_el);
|
|
{<<"REV">>, <<"vcard-temp">>} ->
|
|
decode_vcard_REV(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PRODID">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PRODID(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"NOTE">>, <<"vcard-temp">>} ->
|
|
decode_vcard_NOTE(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"KEYWORD">>, <<"vcard-temp">>} ->
|
|
decode_vcard_KEYWORD(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"ROLE">>, <<"vcard-temp">>} ->
|
|
decode_vcard_ROLE(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"TITLE">>, <<"vcard-temp">>} ->
|
|
decode_vcard_TITLE(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"TZ">>, <<"vcard-temp">>} ->
|
|
decode_vcard_TZ(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"MAILER">>, <<"vcard-temp">>} ->
|
|
decode_vcard_MAILER(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"JABBERID">>, <<"vcard-temp">>} ->
|
|
decode_vcard_JABBERID(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"BDAY">>, <<"vcard-temp">>} ->
|
|
decode_vcard_BDAY(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"NICKNAME">>, <<"vcard-temp">>} ->
|
|
decode_vcard_NICKNAME(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"FN">>, <<"vcard-temp">>} ->
|
|
decode_vcard_FN(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"VERSION">>, <<"vcard-temp">>} ->
|
|
decode_vcard_VERSION(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"CRED">>, <<"vcard-temp">>} ->
|
|
decode_vcard_CRED(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PHONETIC">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PHONETIC(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"ORGUNIT">>, <<"vcard-temp">>} ->
|
|
decode_vcard_ORGUNIT(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"ORGNAME">>, <<"vcard-temp">>} ->
|
|
decode_vcard_ORGNAME(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"LON">>, <<"vcard-temp">>} ->
|
|
decode_vcard_LON(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"LAT">>, <<"vcard-temp">>} ->
|
|
decode_vcard_LAT(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"USERID">>, <<"vcard-temp">>} ->
|
|
decode_vcard_USERID(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"NUMBER">>, <<"vcard-temp">>} ->
|
|
decode_vcard_NUMBER(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"LINE">>, <<"vcard-temp">>} ->
|
|
decode_vcard_LINE(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"CTRY">>, <<"vcard-temp">>} ->
|
|
decode_vcard_CTRY(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PCODE">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PCODE(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"REGION">>, <<"vcard-temp">>} ->
|
|
decode_vcard_REGION(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"LOCALITY">>, <<"vcard-temp">>} ->
|
|
decode_vcard_LOCALITY(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"STREET">>, <<"vcard-temp">>} ->
|
|
decode_vcard_STREET(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"EXTADD">>, <<"vcard-temp">>} ->
|
|
decode_vcard_EXTADD(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"POBOX">>, <<"vcard-temp">>} ->
|
|
decode_vcard_POBOX(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"SUFFIX">>, <<"vcard-temp">>} ->
|
|
decode_vcard_SUFFIX(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PREFIX">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PREFIX(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"MIDDLE">>, <<"vcard-temp">>} ->
|
|
decode_vcard_MIDDLE(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"GIVEN">>, <<"vcard-temp">>} ->
|
|
decode_vcard_GIVEN(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"FAMILY">>, <<"vcard-temp">>} ->
|
|
decode_vcard_FAMILY(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"X400">>, <<"vcard-temp">>} ->
|
|
decode_vcard_X400(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"INTERNET">>, <<"vcard-temp">>} ->
|
|
decode_vcard_INTERNET(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PREF">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PREF(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"INTL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_INTL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"DOM">>, <<"vcard-temp">>} ->
|
|
decode_vcard_DOM(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PARCEL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PARCEL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"POSTAL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_POSTAL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PCS">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PCS(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"ISDN">>, <<"vcard-temp">>} ->
|
|
decode_vcard_ISDN(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"MODEM">>, <<"vcard-temp">>} ->
|
|
decode_vcard_MODEM(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"BBS">>, <<"vcard-temp">>} ->
|
|
decode_vcard_BBS(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"VIDEO">>, <<"vcard-temp">>} ->
|
|
decode_vcard_VIDEO(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"CELL">>, <<"vcard-temp">>} ->
|
|
decode_vcard_CELL(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"MSG">>, <<"vcard-temp">>} ->
|
|
decode_vcard_MSG(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"PAGER">>, <<"vcard-temp">>} ->
|
|
decode_vcard_PAGER(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"FAX">>, <<"vcard-temp">>} ->
|
|
decode_vcard_FAX(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"VOICE">>, <<"vcard-temp">>} ->
|
|
decode_vcard_VOICE(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"WORK">>, <<"vcard-temp">>} ->
|
|
decode_vcard_WORK(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"HOME">>, <<"vcard-temp">>} ->
|
|
decode_vcard_HOME(<<"vcard-temp">>, IgnoreEls, _el);
|
|
{<<"stream:error">>,
|
|
<<"http://etherx.jabber.org/streams">>} ->
|
|
decode_stream_error(<<"http://etherx.jabber.org/streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"unsupported-version">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_unsupported_version(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"unsupported-stanza-type">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_unsupported_stanza_type(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"unsupported-encoding">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_unsupported_encoding(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"undefined-condition">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_undefined_condition(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"system-shutdown">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_system_shutdown(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"see-other-host">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_see_other_host(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"restricted-xml">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_restricted_xml(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"resource-constraint">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_resource_constraint(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"reset">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_reset(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"remote-connection-failed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_remote_connection_failed(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"policy-violation">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_policy_violation(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"not-well-formed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_not_well_formed(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"not-authorized">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_not_authorized(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"invalid-xml">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_invalid_xml(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"invalid-namespace">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_invalid_namespace(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"invalid-id">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_invalid_id(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"invalid-from">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_invalid_from(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"internal-server-error">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_internal_server_error(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"improper-addressing">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_improper_addressing(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"host-unknown">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_host_unknown(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"host-gone">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_host_gone(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"connection-timeout">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_connection_timeout(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"conflict">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_conflict(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"bad-namespace-prefix">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_bad_namespace_prefix(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"bad-format">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_bad_format(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"text">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
decode_stream_error_text(<<"urn:ietf:params:xml:ns:xmpp-streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"time">>, <<"urn:xmpp:time">>} ->
|
|
decode_time(<<"urn:xmpp:time">>, IgnoreEls, _el);
|
|
{<<"tzo">>, <<"urn:xmpp:time">>} ->
|
|
decode_time_tzo(<<"urn:xmpp:time">>, IgnoreEls, _el);
|
|
{<<"utc">>, <<"urn:xmpp:time">>} ->
|
|
decode_time_utc(<<"urn:xmpp:time">>, IgnoreEls, _el);
|
|
{<<"ping">>, <<"urn:xmpp:ping">>} ->
|
|
decode_ping(<<"urn:xmpp:ping">>, IgnoreEls, _el);
|
|
{<<"session">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-session">>} ->
|
|
decode_session(<<"urn:ietf:params:xml:ns:xmpp-session">>,
|
|
IgnoreEls, _el);
|
|
{<<"query">>, <<"jabber:iq:register">>} ->
|
|
decode_register(<<"jabber:iq:register">>, IgnoreEls,
|
|
_el);
|
|
{<<"key">>, <<"jabber:iq:register">>} ->
|
|
decode_register_key(<<"jabber:iq:register">>, IgnoreEls,
|
|
_el);
|
|
{<<"text">>, <<"jabber:iq:register">>} ->
|
|
decode_register_text(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"misc">>, <<"jabber:iq:register">>} ->
|
|
decode_register_misc(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"date">>, <<"jabber:iq:register">>} ->
|
|
decode_register_date(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"url">>, <<"jabber:iq:register">>} ->
|
|
decode_register_url(<<"jabber:iq:register">>, IgnoreEls,
|
|
_el);
|
|
{<<"phone">>, <<"jabber:iq:register">>} ->
|
|
decode_register_phone(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"zip">>, <<"jabber:iq:register">>} ->
|
|
decode_register_zip(<<"jabber:iq:register">>, IgnoreEls,
|
|
_el);
|
|
{<<"state">>, <<"jabber:iq:register">>} ->
|
|
decode_register_state(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"city">>, <<"jabber:iq:register">>} ->
|
|
decode_register_city(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"address">>, <<"jabber:iq:register">>} ->
|
|
decode_register_address(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"email">>, <<"jabber:iq:register">>} ->
|
|
decode_register_email(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"last">>, <<"jabber:iq:register">>} ->
|
|
decode_register_last(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"first">>, <<"jabber:iq:register">>} ->
|
|
decode_register_first(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"name">>, <<"jabber:iq:register">>} ->
|
|
decode_register_name(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"password">>, <<"jabber:iq:register">>} ->
|
|
decode_register_password(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"nick">>, <<"jabber:iq:register">>} ->
|
|
decode_register_nick(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"username">>, <<"jabber:iq:register">>} ->
|
|
decode_register_username(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"instructions">>, <<"jabber:iq:register">>} ->
|
|
decode_register_instructions(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"remove">>, <<"jabber:iq:register">>} ->
|
|
decode_register_remove(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"registered">>, <<"jabber:iq:register">>} ->
|
|
decode_register_registered(<<"jabber:iq:register">>,
|
|
IgnoreEls, _el);
|
|
{<<"register">>,
|
|
<<"http://jabber.org/features/iq-register">>} ->
|
|
decode_feature_register(<<"http://jabber.org/features/iq-register">>,
|
|
IgnoreEls, _el);
|
|
{<<"c">>, <<"http://jabber.org/protocol/caps">>} ->
|
|
decode_caps(<<"http://jabber.org/protocol/caps">>,
|
|
IgnoreEls, _el);
|
|
{<<"ack">>, <<"p1:ack">>} ->
|
|
decode_p1_ack(<<"p1:ack">>, IgnoreEls, _el);
|
|
{<<"rebind">>, <<"p1:rebind">>} ->
|
|
decode_p1_rebind(<<"p1:rebind">>, IgnoreEls, _el);
|
|
{<<"push">>, <<"p1:push">>} ->
|
|
decode_p1_push(<<"p1:push">>, IgnoreEls, _el);
|
|
{<<"stream:features">>,
|
|
<<"http://etherx.jabber.org/streams">>} ->
|
|
decode_stream_features(<<"http://etherx.jabber.org/streams">>,
|
|
IgnoreEls, _el);
|
|
{<<"compression">>,
|
|
<<"http://jabber.org/features/compress">>} ->
|
|
decode_compression(<<"http://jabber.org/features/compress">>,
|
|
IgnoreEls, _el);
|
|
{<<"method">>,
|
|
<<"http://jabber.org/features/compress">>} ->
|
|
decode_compression_method(<<"http://jabber.org/features/compress">>,
|
|
IgnoreEls, _el);
|
|
{<<"compressed">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
decode_compressed(<<"http://jabber.org/protocol/compress">>,
|
|
IgnoreEls, _el);
|
|
{<<"compress">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
decode_compress(<<"http://jabber.org/protocol/compress">>,
|
|
IgnoreEls, _el);
|
|
{<<"method">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
decode_compress_method(<<"http://jabber.org/protocol/compress">>,
|
|
IgnoreEls, _el);
|
|
{<<"failure">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
decode_compress_failure(<<"http://jabber.org/protocol/compress">>,
|
|
IgnoreEls, _el);
|
|
{<<"unsupported-method">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
decode_compress_failure_unsupported_method(<<"http://jabber.org/protocol/compress">>,
|
|
IgnoreEls, _el);
|
|
{<<"processing-failed">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
decode_compress_failure_processing_failed(<<"http://jabber.org/protocol/compress">>,
|
|
IgnoreEls, _el);
|
|
{<<"setup-failed">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
decode_compress_failure_setup_failed(<<"http://jabber.org/protocol/compress">>,
|
|
IgnoreEls, _el);
|
|
{<<"failure">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>} ->
|
|
decode_starttls_failure(<<"urn:ietf:params:xml:ns:xmpp-tls">>,
|
|
IgnoreEls, _el);
|
|
{<<"proceed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>} ->
|
|
decode_starttls_proceed(<<"urn:ietf:params:xml:ns:xmpp-tls">>,
|
|
IgnoreEls, _el);
|
|
{<<"starttls">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>} ->
|
|
decode_starttls(<<"urn:ietf:params:xml:ns:xmpp-tls">>,
|
|
IgnoreEls, _el);
|
|
{<<"required">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>} ->
|
|
decode_starttls_required(<<"urn:ietf:params:xml:ns:xmpp-tls">>,
|
|
IgnoreEls, _el);
|
|
{<<"mechanisms">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_mechanisms(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"mechanism">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_mechanism(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"failure">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"temporary-auth-failure">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_temporary_auth_failure(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"not-authorized">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_not_authorized(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"mechanism-too-weak">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_mechanism_too_weak(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"malformed-request">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_malformed_request(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"invalid-mechanism">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_invalid_mechanism(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"invalid-authzid">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_invalid_authzid(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"incorrect-encoding">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_incorrect_encoding(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"encryption-required">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_encryption_required(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"credentials-expired">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_credentials_expired(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"account-disabled">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_account_disabled(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"aborted">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_aborted(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"text">>, <<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_failure_text(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"success">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_success(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"response">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_response(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"challenge">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_challenge(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"abort">>, <<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_abort(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"auth">>, <<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
decode_sasl_auth(<<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
|
IgnoreEls, _el);
|
|
{<<"bind">>, <<"urn:ietf:params:xml:ns:xmpp-bind">>} ->
|
|
decode_bind(<<"urn:ietf:params:xml:ns:xmpp-bind">>,
|
|
IgnoreEls, _el);
|
|
{<<"resource">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-bind">>} ->
|
|
decode_bind_resource(<<"urn:ietf:params:xml:ns:xmpp-bind">>,
|
|
IgnoreEls, _el);
|
|
{<<"jid">>, <<"urn:ietf:params:xml:ns:xmpp-bind">>} ->
|
|
decode_bind_jid(<<"urn:ietf:params:xml:ns:xmpp-bind">>,
|
|
IgnoreEls, _el);
|
|
{<<"error">>, <<"jabber:client">>} ->
|
|
decode_error(<<"jabber:client">>, IgnoreEls, _el);
|
|
{<<"text">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_text(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"unexpected-request">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_unexpected_request(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"undefined-condition">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_undefined_condition(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"subscription-required">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_subscription_required(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"service-unavailable">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_service_unavailable(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"resource-constraint">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_resource_constraint(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"remote-server-timeout">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_remote_server_timeout(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"remote-server-not-found">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_remote_server_not_found(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"registration-required">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_registration_required(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"redirect">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_redirect(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"recipient-unavailable">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_recipient_unavailable(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"policy-violation">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_policy_violation(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"not-authorized">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_not_authorized(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"not-allowed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_not_allowed(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"not-acceptable">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_not_acceptable(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"jid-malformed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_jid_malformed(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"item-not-found">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_item_not_found(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"internal-server-error">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_internal_server_error(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"gone">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_gone(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"forbidden">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_forbidden(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"feature-not-implemented">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_feature_not_implemented(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"conflict">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_conflict(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"bad-request">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
decode_error_bad_request(<<"urn:ietf:params:xml:ns:xmpp-stanzas">>,
|
|
IgnoreEls, _el);
|
|
{<<"presence">>, <<"jabber:client">>} ->
|
|
decode_presence(<<"jabber:client">>, IgnoreEls, _el);
|
|
{<<"priority">>, <<"jabber:client">>} ->
|
|
decode_presence_priority(<<"jabber:client">>, IgnoreEls,
|
|
_el);
|
|
{<<"status">>, <<"jabber:client">>} ->
|
|
decode_presence_status(<<"jabber:client">>, IgnoreEls,
|
|
_el);
|
|
{<<"show">>, <<"jabber:client">>} ->
|
|
decode_presence_show(<<"jabber:client">>, IgnoreEls,
|
|
_el);
|
|
{<<"message">>, <<"jabber:client">>} ->
|
|
decode_message(<<"jabber:client">>, IgnoreEls, _el);
|
|
{<<"thread">>, <<"jabber:client">>} ->
|
|
decode_message_thread(<<"jabber:client">>, IgnoreEls,
|
|
_el);
|
|
{<<"body">>, <<"jabber:client">>} ->
|
|
decode_message_body(<<"jabber:client">>, IgnoreEls,
|
|
_el);
|
|
{<<"subject">>, <<"jabber:client">>} ->
|
|
decode_message_subject(<<"jabber:client">>, IgnoreEls,
|
|
_el);
|
|
{<<"iq">>, <<"jabber:client">>} ->
|
|
decode_iq(<<"jabber:client">>, IgnoreEls, _el);
|
|
{<<"query">>, <<"http://jabber.org/protocol/stats">>} ->
|
|
decode_stats(<<"http://jabber.org/protocol/stats">>,
|
|
IgnoreEls, _el);
|
|
{<<"stat">>, <<"http://jabber.org/protocol/stats">>} ->
|
|
decode_stat(<<"http://jabber.org/protocol/stats">>,
|
|
IgnoreEls, _el);
|
|
{<<"error">>, <<"http://jabber.org/protocol/stats">>} ->
|
|
decode_stat_error(<<"http://jabber.org/protocol/stats">>,
|
|
IgnoreEls, _el);
|
|
{<<"storage">>, <<"storage:bookmarks">>} ->
|
|
decode_bookmarks_storage(<<"storage:bookmarks">>,
|
|
IgnoreEls, _el);
|
|
{<<"url">>, <<"storage:bookmarks">>} ->
|
|
decode_bookmark_url(<<"storage:bookmarks">>, IgnoreEls,
|
|
_el);
|
|
{<<"conference">>, <<"storage:bookmarks">>} ->
|
|
decode_bookmark_conference(<<"storage:bookmarks">>,
|
|
IgnoreEls, _el);
|
|
{<<"password">>, <<"storage:bookmarks">>} ->
|
|
decode_conference_password(<<"storage:bookmarks">>,
|
|
IgnoreEls, _el);
|
|
{<<"nick">>, <<"storage:bookmarks">>} ->
|
|
decode_conference_nick(<<"storage:bookmarks">>,
|
|
IgnoreEls, _el);
|
|
{<<"query">>, <<"jabber:iq:private">>} ->
|
|
decode_private(<<"jabber:iq:private">>, IgnoreEls, _el);
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/disco#items">>} ->
|
|
decode_disco_items(<<"http://jabber.org/protocol/disco#items">>,
|
|
IgnoreEls, _el);
|
|
{<<"item">>,
|
|
<<"http://jabber.org/protocol/disco#items">>} ->
|
|
decode_disco_item(<<"http://jabber.org/protocol/disco#items">>,
|
|
IgnoreEls, _el);
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/disco#info">>} ->
|
|
decode_disco_info(<<"http://jabber.org/protocol/disco#info">>,
|
|
IgnoreEls, _el);
|
|
{<<"feature">>,
|
|
<<"http://jabber.org/protocol/disco#info">>} ->
|
|
decode_disco_feature(<<"http://jabber.org/protocol/disco#info">>,
|
|
IgnoreEls, _el);
|
|
{<<"identity">>,
|
|
<<"http://jabber.org/protocol/disco#info">>} ->
|
|
decode_disco_identity(<<"http://jabber.org/protocol/disco#info">>,
|
|
IgnoreEls, _el);
|
|
{<<"blocklist">>, <<"urn:xmpp:blocking">>} ->
|
|
decode_block_list(<<"urn:xmpp:blocking">>, IgnoreEls,
|
|
_el);
|
|
{<<"unblock">>, <<"urn:xmpp:blocking">>} ->
|
|
decode_unblock(<<"urn:xmpp:blocking">>, IgnoreEls, _el);
|
|
{<<"block">>, <<"urn:xmpp:blocking">>} ->
|
|
decode_block(<<"urn:xmpp:blocking">>, IgnoreEls, _el);
|
|
{<<"item">>, <<"urn:xmpp:blocking">>} ->
|
|
decode_block_item(<<"urn:xmpp:blocking">>, IgnoreEls,
|
|
_el);
|
|
{<<"query">>, <<"jabber:iq:privacy">>} ->
|
|
decode_privacy(<<"jabber:iq:privacy">>, IgnoreEls, _el);
|
|
{<<"active">>, <<"jabber:iq:privacy">>} ->
|
|
decode_privacy_active_list(<<"jabber:iq:privacy">>,
|
|
IgnoreEls, _el);
|
|
{<<"default">>, <<"jabber:iq:privacy">>} ->
|
|
decode_privacy_default_list(<<"jabber:iq:privacy">>,
|
|
IgnoreEls, _el);
|
|
{<<"list">>, <<"jabber:iq:privacy">>} ->
|
|
decode_privacy_list(<<"jabber:iq:privacy">>, IgnoreEls,
|
|
_el);
|
|
{<<"item">>, <<"jabber:iq:privacy">>} ->
|
|
decode_privacy_item(<<"jabber:iq:privacy">>, IgnoreEls,
|
|
_el);
|
|
{<<"presence-out">>, <<"jabber:iq:privacy">>} ->
|
|
decode_privacy_presence_out(<<"jabber:iq:privacy">>,
|
|
IgnoreEls, _el);
|
|
{<<"presence-in">>, <<"jabber:iq:privacy">>} ->
|
|
decode_privacy_presence_in(<<"jabber:iq:privacy">>,
|
|
IgnoreEls, _el);
|
|
{<<"iq">>, <<"jabber:iq:privacy">>} ->
|
|
decode_privacy_iq(<<"jabber:iq:privacy">>, IgnoreEls,
|
|
_el);
|
|
{<<"message">>, <<"jabber:iq:privacy">>} ->
|
|
decode_privacy_message(<<"jabber:iq:privacy">>,
|
|
IgnoreEls, _el);
|
|
{<<"query">>, <<"jabber:iq:roster">>} ->
|
|
decode_roster(<<"jabber:iq:roster">>, IgnoreEls, _el);
|
|
{<<"item">>, <<"jabber:iq:roster">>} ->
|
|
decode_roster_item(<<"jabber:iq:roster">>, IgnoreEls,
|
|
_el);
|
|
{<<"group">>, <<"jabber:iq:roster">>} ->
|
|
decode_roster_group(<<"jabber:iq:roster">>, IgnoreEls,
|
|
_el);
|
|
{<<"query">>, <<"jabber:iq:version">>} ->
|
|
decode_version(<<"jabber:iq:version">>, IgnoreEls, _el);
|
|
{<<"os">>, <<"jabber:iq:version">>} ->
|
|
decode_version_os(<<"jabber:iq:version">>, IgnoreEls,
|
|
_el);
|
|
{<<"version">>, <<"jabber:iq:version">>} ->
|
|
decode_version_ver(<<"jabber:iq:version">>, IgnoreEls,
|
|
_el);
|
|
{<<"name">>, <<"jabber:iq:version">>} ->
|
|
decode_version_name(<<"jabber:iq:version">>, IgnoreEls,
|
|
_el);
|
|
{<<"query">>, <<"jabber:iq:last">>} ->
|
|
decode_last(<<"jabber:iq:last">>, IgnoreEls, _el);
|
|
{_name, _xmlns} ->
|
|
erlang:error({xmpp_codec, {unknown_tag, _name, _xmlns}})
|
|
end.
|
|
|
|
is_known_tag({xmlel, _name, _attrs, _} = _el) ->
|
|
case {_name, get_attr(<<"xmlns">>, _attrs)} of
|
|
{<<"failed">>, <<"urn:xmpp:sm:2">>} -> true;
|
|
{<<"failed">>, <<"urn:xmpp:sm:3">>} -> true;
|
|
{<<"a">>, <<"urn:xmpp:sm:2">>} -> true;
|
|
{<<"a">>, <<"urn:xmpp:sm:3">>} -> true;
|
|
{<<"r">>, <<"urn:xmpp:sm:2">>} -> true;
|
|
{<<"r">>, <<"urn:xmpp:sm:3">>} -> true;
|
|
{<<"resumed">>, <<"urn:xmpp:sm:2">>} -> true;
|
|
{<<"resumed">>, <<"urn:xmpp:sm:3">>} -> true;
|
|
{<<"resume">>, <<"urn:xmpp:sm:2">>} -> true;
|
|
{<<"resume">>, <<"urn:xmpp:sm:3">>} -> true;
|
|
{<<"enabled">>, <<"urn:xmpp:sm:2">>} -> true;
|
|
{<<"enabled">>, <<"urn:xmpp:sm:3">>} -> true;
|
|
{<<"enable">>, <<"urn:xmpp:sm:2">>} -> true;
|
|
{<<"enable">>, <<"urn:xmpp:sm:3">>} -> true;
|
|
{<<"sm">>, <<"urn:xmpp:sm:2">>} -> true;
|
|
{<<"sm">>, <<"urn:xmpp:sm:3">>} -> true;
|
|
{<<"inactive">>, <<"urn:xmpp:csi:0">>} -> true;
|
|
{<<"active">>, <<"urn:xmpp:csi:0">>} -> true;
|
|
{<<"csi">>, <<"urn:xmpp:csi:0">>} -> true;
|
|
{<<"sent">>, <<"urn:xmpp:carbons:2">>} -> true;
|
|
{<<"received">>, <<"urn:xmpp:carbons:2">>} -> true;
|
|
{<<"private">>, <<"urn:xmpp:carbons:2">>} -> true;
|
|
{<<"enable">>, <<"urn:xmpp:carbons:2">>} -> true;
|
|
{<<"disable">>, <<"urn:xmpp:carbons:2">>} -> true;
|
|
{<<"forwarded">>, <<"urn:xmpp:forward:0">>} -> true;
|
|
{<<"x">>, <<"http://jabber.org/protocol/muc">>} -> true;
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
true;
|
|
{<<"reason">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
true;
|
|
{<<"continue">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
true;
|
|
{<<"actor">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
true;
|
|
{<<"item">>,
|
|
<<"http://jabber.org/protocol/muc#admin">>} ->
|
|
true;
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/muc#owner">>} ->
|
|
true;
|
|
{<<"destroy">>,
|
|
<<"http://jabber.org/protocol/muc#owner">>} ->
|
|
true;
|
|
{<<"reason">>,
|
|
<<"http://jabber.org/protocol/muc#owner">>} ->
|
|
true;
|
|
{<<"password">>,
|
|
<<"http://jabber.org/protocol/muc#owner">>} ->
|
|
true;
|
|
{<<"x">>, <<"http://jabber.org/protocol/muc#user">>} ->
|
|
true;
|
|
{<<"item">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
true;
|
|
{<<"status">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
true;
|
|
{<<"continue">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
true;
|
|
{<<"actor">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
true;
|
|
{<<"invite">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
true;
|
|
{<<"destroy">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
true;
|
|
{<<"decline">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
true;
|
|
{<<"reason">>,
|
|
<<"http://jabber.org/protocol/muc#user">>} ->
|
|
true;
|
|
{<<"history">>, <<"http://jabber.org/protocol/muc">>} ->
|
|
true;
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/bytestreams">>} ->
|
|
true;
|
|
{<<"activate">>,
|
|
<<"http://jabber.org/protocol/bytestreams">>} ->
|
|
true;
|
|
{<<"streamhost-used">>,
|
|
<<"http://jabber.org/protocol/bytestreams">>} ->
|
|
true;
|
|
{<<"streamhost">>,
|
|
<<"http://jabber.org/protocol/bytestreams">>} ->
|
|
true;
|
|
{<<"x">>, <<"jabber:x:delay">>} -> true;
|
|
{<<"delay">>, <<"urn:xmpp:delay">>} -> true;
|
|
{<<"paused">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
true;
|
|
{<<"inactive">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
true;
|
|
{<<"gone">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
true;
|
|
{<<"composing">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
true;
|
|
{<<"active">>,
|
|
<<"http://jabber.org/protocol/chatstates">>} ->
|
|
true;
|
|
{<<"headers">>,
|
|
<<"http://jabber.org/protocol/shim">>} ->
|
|
true;
|
|
{<<"header">>, <<"http://jabber.org/protocol/shim">>} ->
|
|
true;
|
|
{<<"pubsub">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"retract">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"options">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"publish">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"unsubscribe">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"subscribe">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"affiliations">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"subscriptions">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"event">>,
|
|
<<"http://jabber.org/protocol/pubsub#event">>} ->
|
|
true;
|
|
{<<"items">>,
|
|
<<"http://jabber.org/protocol/pubsub#event">>} ->
|
|
true;
|
|
{<<"item">>,
|
|
<<"http://jabber.org/protocol/pubsub#event">>} ->
|
|
true;
|
|
{<<"retract">>,
|
|
<<"http://jabber.org/protocol/pubsub#event">>} ->
|
|
true;
|
|
{<<"items">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"item">>, <<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"affiliation">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"subscription">>,
|
|
<<"http://jabber.org/protocol/pubsub">>} ->
|
|
true;
|
|
{<<"x">>, <<"jabber:x:data">>} -> true;
|
|
{<<"item">>, <<"jabber:x:data">>} -> true;
|
|
{<<"reported">>, <<"jabber:x:data">>} -> true;
|
|
{<<"title">>, <<"jabber:x:data">>} -> true;
|
|
{<<"instructions">>, <<"jabber:x:data">>} -> true;
|
|
{<<"field">>, <<"jabber:x:data">>} -> true;
|
|
{<<"option">>, <<"jabber:x:data">>} -> true;
|
|
{<<"value">>, <<"jabber:x:data">>} -> true;
|
|
{<<"desc">>, <<"jabber:x:data">>} -> true;
|
|
{<<"required">>, <<"jabber:x:data">>} -> true;
|
|
{<<"x">>, <<"vcard-temp:x:update">>} -> true;
|
|
{<<"photo">>, <<"vcard-temp:x:update">>} -> true;
|
|
{<<"vCard">>, <<"vcard-temp">>} -> true;
|
|
{<<"CLASS">>, <<"vcard-temp">>} -> true;
|
|
{<<"CATEGORIES">>, <<"vcard-temp">>} -> true;
|
|
{<<"KEY">>, <<"vcard-temp">>} -> true;
|
|
{<<"SOUND">>, <<"vcard-temp">>} -> true;
|
|
{<<"ORG">>, <<"vcard-temp">>} -> true;
|
|
{<<"PHOTO">>, <<"vcard-temp">>} -> true;
|
|
{<<"LOGO">>, <<"vcard-temp">>} -> true;
|
|
{<<"BINVAL">>, <<"vcard-temp">>} -> true;
|
|
{<<"GEO">>, <<"vcard-temp">>} -> true;
|
|
{<<"EMAIL">>, <<"vcard-temp">>} -> true;
|
|
{<<"TEL">>, <<"vcard-temp">>} -> true;
|
|
{<<"LABEL">>, <<"vcard-temp">>} -> true;
|
|
{<<"ADR">>, <<"vcard-temp">>} -> true;
|
|
{<<"N">>, <<"vcard-temp">>} -> true;
|
|
{<<"CONFIDENTIAL">>, <<"vcard-temp">>} -> true;
|
|
{<<"PRIVATE">>, <<"vcard-temp">>} -> true;
|
|
{<<"PUBLIC">>, <<"vcard-temp">>} -> true;
|
|
{<<"EXTVAL">>, <<"vcard-temp">>} -> true;
|
|
{<<"TYPE">>, <<"vcard-temp">>} -> true;
|
|
{<<"DESC">>, <<"vcard-temp">>} -> true;
|
|
{<<"URL">>, <<"vcard-temp">>} -> true;
|
|
{<<"UID">>, <<"vcard-temp">>} -> true;
|
|
{<<"SORT-STRING">>, <<"vcard-temp">>} -> true;
|
|
{<<"REV">>, <<"vcard-temp">>} -> true;
|
|
{<<"PRODID">>, <<"vcard-temp">>} -> true;
|
|
{<<"NOTE">>, <<"vcard-temp">>} -> true;
|
|
{<<"KEYWORD">>, <<"vcard-temp">>} -> true;
|
|
{<<"ROLE">>, <<"vcard-temp">>} -> true;
|
|
{<<"TITLE">>, <<"vcard-temp">>} -> true;
|
|
{<<"TZ">>, <<"vcard-temp">>} -> true;
|
|
{<<"MAILER">>, <<"vcard-temp">>} -> true;
|
|
{<<"JABBERID">>, <<"vcard-temp">>} -> true;
|
|
{<<"BDAY">>, <<"vcard-temp">>} -> true;
|
|
{<<"NICKNAME">>, <<"vcard-temp">>} -> true;
|
|
{<<"FN">>, <<"vcard-temp">>} -> true;
|
|
{<<"VERSION">>, <<"vcard-temp">>} -> true;
|
|
{<<"CRED">>, <<"vcard-temp">>} -> true;
|
|
{<<"PHONETIC">>, <<"vcard-temp">>} -> true;
|
|
{<<"ORGUNIT">>, <<"vcard-temp">>} -> true;
|
|
{<<"ORGNAME">>, <<"vcard-temp">>} -> true;
|
|
{<<"LON">>, <<"vcard-temp">>} -> true;
|
|
{<<"LAT">>, <<"vcard-temp">>} -> true;
|
|
{<<"USERID">>, <<"vcard-temp">>} -> true;
|
|
{<<"NUMBER">>, <<"vcard-temp">>} -> true;
|
|
{<<"LINE">>, <<"vcard-temp">>} -> true;
|
|
{<<"CTRY">>, <<"vcard-temp">>} -> true;
|
|
{<<"PCODE">>, <<"vcard-temp">>} -> true;
|
|
{<<"REGION">>, <<"vcard-temp">>} -> true;
|
|
{<<"LOCALITY">>, <<"vcard-temp">>} -> true;
|
|
{<<"STREET">>, <<"vcard-temp">>} -> true;
|
|
{<<"EXTADD">>, <<"vcard-temp">>} -> true;
|
|
{<<"POBOX">>, <<"vcard-temp">>} -> true;
|
|
{<<"SUFFIX">>, <<"vcard-temp">>} -> true;
|
|
{<<"PREFIX">>, <<"vcard-temp">>} -> true;
|
|
{<<"MIDDLE">>, <<"vcard-temp">>} -> true;
|
|
{<<"GIVEN">>, <<"vcard-temp">>} -> true;
|
|
{<<"FAMILY">>, <<"vcard-temp">>} -> true;
|
|
{<<"X400">>, <<"vcard-temp">>} -> true;
|
|
{<<"INTERNET">>, <<"vcard-temp">>} -> true;
|
|
{<<"PREF">>, <<"vcard-temp">>} -> true;
|
|
{<<"INTL">>, <<"vcard-temp">>} -> true;
|
|
{<<"DOM">>, <<"vcard-temp">>} -> true;
|
|
{<<"PARCEL">>, <<"vcard-temp">>} -> true;
|
|
{<<"POSTAL">>, <<"vcard-temp">>} -> true;
|
|
{<<"PCS">>, <<"vcard-temp">>} -> true;
|
|
{<<"ISDN">>, <<"vcard-temp">>} -> true;
|
|
{<<"MODEM">>, <<"vcard-temp">>} -> true;
|
|
{<<"BBS">>, <<"vcard-temp">>} -> true;
|
|
{<<"VIDEO">>, <<"vcard-temp">>} -> true;
|
|
{<<"CELL">>, <<"vcard-temp">>} -> true;
|
|
{<<"MSG">>, <<"vcard-temp">>} -> true;
|
|
{<<"PAGER">>, <<"vcard-temp">>} -> true;
|
|
{<<"FAX">>, <<"vcard-temp">>} -> true;
|
|
{<<"VOICE">>, <<"vcard-temp">>} -> true;
|
|
{<<"WORK">>, <<"vcard-temp">>} -> true;
|
|
{<<"HOME">>, <<"vcard-temp">>} -> true;
|
|
{<<"stream:error">>,
|
|
<<"http://etherx.jabber.org/streams">>} ->
|
|
true;
|
|
{<<"unsupported-version">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"unsupported-stanza-type">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"unsupported-encoding">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"undefined-condition">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"system-shutdown">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"see-other-host">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"restricted-xml">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"resource-constraint">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"reset">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"remote-connection-failed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"policy-violation">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"not-well-formed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"not-authorized">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"invalid-xml">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"invalid-namespace">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"invalid-id">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"invalid-from">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"internal-server-error">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"improper-addressing">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"host-unknown">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"host-gone">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"connection-timeout">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"conflict">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"bad-namespace-prefix">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"bad-format">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"text">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>} ->
|
|
true;
|
|
{<<"time">>, <<"urn:xmpp:time">>} -> true;
|
|
{<<"tzo">>, <<"urn:xmpp:time">>} -> true;
|
|
{<<"utc">>, <<"urn:xmpp:time">>} -> true;
|
|
{<<"ping">>, <<"urn:xmpp:ping">>} -> true;
|
|
{<<"session">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-session">>} ->
|
|
true;
|
|
{<<"query">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"key">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"text">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"misc">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"date">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"url">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"phone">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"zip">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"state">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"city">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"address">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"email">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"last">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"first">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"name">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"password">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"nick">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"username">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"instructions">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"remove">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"registered">>, <<"jabber:iq:register">>} -> true;
|
|
{<<"register">>,
|
|
<<"http://jabber.org/features/iq-register">>} ->
|
|
true;
|
|
{<<"c">>, <<"http://jabber.org/protocol/caps">>} ->
|
|
true;
|
|
{<<"ack">>, <<"p1:ack">>} -> true;
|
|
{<<"rebind">>, <<"p1:rebind">>} -> true;
|
|
{<<"push">>, <<"p1:push">>} -> true;
|
|
{<<"stream:features">>,
|
|
<<"http://etherx.jabber.org/streams">>} ->
|
|
true;
|
|
{<<"compression">>,
|
|
<<"http://jabber.org/features/compress">>} ->
|
|
true;
|
|
{<<"method">>,
|
|
<<"http://jabber.org/features/compress">>} ->
|
|
true;
|
|
{<<"compressed">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
true;
|
|
{<<"compress">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
true;
|
|
{<<"method">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
true;
|
|
{<<"failure">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
true;
|
|
{<<"unsupported-method">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
true;
|
|
{<<"processing-failed">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
true;
|
|
{<<"setup-failed">>,
|
|
<<"http://jabber.org/protocol/compress">>} ->
|
|
true;
|
|
{<<"failure">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>} ->
|
|
true;
|
|
{<<"proceed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>} ->
|
|
true;
|
|
{<<"starttls">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>} ->
|
|
true;
|
|
{<<"required">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>} ->
|
|
true;
|
|
{<<"mechanisms">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"mechanism">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"failure">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"temporary-auth-failure">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"not-authorized">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"mechanism-too-weak">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"malformed-request">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"invalid-mechanism">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"invalid-authzid">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"incorrect-encoding">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"encryption-required">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"credentials-expired">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"account-disabled">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"aborted">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"text">>, <<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"success">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"response">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"challenge">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"abort">>, <<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"auth">>, <<"urn:ietf:params:xml:ns:xmpp-sasl">>} ->
|
|
true;
|
|
{<<"bind">>, <<"urn:ietf:params:xml:ns:xmpp-bind">>} ->
|
|
true;
|
|
{<<"resource">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-bind">>} ->
|
|
true;
|
|
{<<"jid">>, <<"urn:ietf:params:xml:ns:xmpp-bind">>} ->
|
|
true;
|
|
{<<"error">>, <<"jabber:client">>} -> true;
|
|
{<<"text">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"unexpected-request">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"undefined-condition">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"subscription-required">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"service-unavailable">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"resource-constraint">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"remote-server-timeout">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"remote-server-not-found">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"registration-required">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"redirect">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"recipient-unavailable">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"policy-violation">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"not-authorized">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"not-allowed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"not-acceptable">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"jid-malformed">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"item-not-found">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"internal-server-error">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"gone">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"forbidden">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"feature-not-implemented">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"conflict">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"bad-request">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>} ->
|
|
true;
|
|
{<<"presence">>, <<"jabber:client">>} -> true;
|
|
{<<"priority">>, <<"jabber:client">>} -> true;
|
|
{<<"status">>, <<"jabber:client">>} -> true;
|
|
{<<"show">>, <<"jabber:client">>} -> true;
|
|
{<<"message">>, <<"jabber:client">>} -> true;
|
|
{<<"thread">>, <<"jabber:client">>} -> true;
|
|
{<<"body">>, <<"jabber:client">>} -> true;
|
|
{<<"subject">>, <<"jabber:client">>} -> true;
|
|
{<<"iq">>, <<"jabber:client">>} -> true;
|
|
{<<"query">>, <<"http://jabber.org/protocol/stats">>} ->
|
|
true;
|
|
{<<"stat">>, <<"http://jabber.org/protocol/stats">>} ->
|
|
true;
|
|
{<<"error">>, <<"http://jabber.org/protocol/stats">>} ->
|
|
true;
|
|
{<<"storage">>, <<"storage:bookmarks">>} -> true;
|
|
{<<"url">>, <<"storage:bookmarks">>} -> true;
|
|
{<<"conference">>, <<"storage:bookmarks">>} -> true;
|
|
{<<"password">>, <<"storage:bookmarks">>} -> true;
|
|
{<<"nick">>, <<"storage:bookmarks">>} -> true;
|
|
{<<"query">>, <<"jabber:iq:private">>} -> true;
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/disco#items">>} ->
|
|
true;
|
|
{<<"item">>,
|
|
<<"http://jabber.org/protocol/disco#items">>} ->
|
|
true;
|
|
{<<"query">>,
|
|
<<"http://jabber.org/protocol/disco#info">>} ->
|
|
true;
|
|
{<<"feature">>,
|
|
<<"http://jabber.org/protocol/disco#info">>} ->
|
|
true;
|
|
{<<"identity">>,
|
|
<<"http://jabber.org/protocol/disco#info">>} ->
|
|
true;
|
|
{<<"blocklist">>, <<"urn:xmpp:blocking">>} -> true;
|
|
{<<"unblock">>, <<"urn:xmpp:blocking">>} -> true;
|
|
{<<"block">>, <<"urn:xmpp:blocking">>} -> true;
|
|
{<<"item">>, <<"urn:xmpp:blocking">>} -> true;
|
|
{<<"query">>, <<"jabber:iq:privacy">>} -> true;
|
|
{<<"active">>, <<"jabber:iq:privacy">>} -> true;
|
|
{<<"default">>, <<"jabber:iq:privacy">>} -> true;
|
|
{<<"list">>, <<"jabber:iq:privacy">>} -> true;
|
|
{<<"item">>, <<"jabber:iq:privacy">>} -> true;
|
|
{<<"presence-out">>, <<"jabber:iq:privacy">>} -> true;
|
|
{<<"presence-in">>, <<"jabber:iq:privacy">>} -> true;
|
|
{<<"iq">>, <<"jabber:iq:privacy">>} -> true;
|
|
{<<"message">>, <<"jabber:iq:privacy">>} -> true;
|
|
{<<"query">>, <<"jabber:iq:roster">>} -> true;
|
|
{<<"item">>, <<"jabber:iq:roster">>} -> true;
|
|
{<<"group">>, <<"jabber:iq:roster">>} -> true;
|
|
{<<"query">>, <<"jabber:iq:version">>} -> true;
|
|
{<<"os">>, <<"jabber:iq:version">>} -> true;
|
|
{<<"version">>, <<"jabber:iq:version">>} -> true;
|
|
{<<"name">>, <<"jabber:iq:version">>} -> true;
|
|
{<<"query">>, <<"jabber:iq:last">>} -> true;
|
|
_ -> false
|
|
end.
|
|
|
|
encode({xmlel, _, _, _} = El) -> El;
|
|
encode({last, _, _} = Query) ->
|
|
encode_last(Query,
|
|
[{<<"xmlns">>, <<"jabber:iq:last">>}]);
|
|
encode({version, _, _, _} = Query) ->
|
|
encode_version(Query,
|
|
[{<<"xmlns">>, <<"jabber:iq:version">>}]);
|
|
encode({roster_item, _, _, _, _, _} = Item) ->
|
|
encode_roster_item(Item,
|
|
[{<<"xmlns">>, <<"jabber:iq:roster">>}]);
|
|
encode({roster, _, _} = Query) ->
|
|
encode_roster(Query,
|
|
[{<<"xmlns">>, <<"jabber:iq:roster">>}]);
|
|
encode({privacy_item, _, _, _, _, _} = Item) ->
|
|
encode_privacy_item(Item,
|
|
[{<<"xmlns">>, <<"jabber:iq:privacy">>}]);
|
|
encode({privacy_list, _, _} = List) ->
|
|
encode_privacy_list(List,
|
|
[{<<"xmlns">>, <<"jabber:iq:privacy">>}]);
|
|
encode({privacy, _, _, _} = Query) ->
|
|
encode_privacy(Query,
|
|
[{<<"xmlns">>, <<"jabber:iq:privacy">>}]);
|
|
encode({block, _} = Block) ->
|
|
encode_block(Block,
|
|
[{<<"xmlns">>, <<"urn:xmpp:blocking">>}]);
|
|
encode({unblock, _} = Unblock) ->
|
|
encode_unblock(Unblock,
|
|
[{<<"xmlns">>, <<"urn:xmpp:blocking">>}]);
|
|
encode({block_list} = Blocklist) ->
|
|
encode_block_list(Blocklist,
|
|
[{<<"xmlns">>, <<"urn:xmpp:blocking">>}]);
|
|
encode({identity, _, _, _, _} = Identity) ->
|
|
encode_disco_identity(Identity,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/disco#info">>}]);
|
|
encode({disco_info, _, _, _, _} = Query) ->
|
|
encode_disco_info(Query,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/disco#info">>}]);
|
|
encode({disco_item, _, _, _} = Item) ->
|
|
encode_disco_item(Item,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/disco#items">>}]);
|
|
encode({disco_items, _, _} = Query) ->
|
|
encode_disco_items(Query,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/disco#items">>}]);
|
|
encode({private, _} = Query) ->
|
|
encode_private(Query,
|
|
[{<<"xmlns">>, <<"jabber:iq:private">>}]);
|
|
encode({bookmark_conference, _, _, _, _, _} =
|
|
Conference) ->
|
|
encode_bookmark_conference(Conference,
|
|
[{<<"xmlns">>, <<"storage:bookmarks">>}]);
|
|
encode({bookmark_url, _, _} = Url) ->
|
|
encode_bookmark_url(Url,
|
|
[{<<"xmlns">>, <<"storage:bookmarks">>}]);
|
|
encode({bookmark_storage, _, _} = Storage) ->
|
|
encode_bookmarks_storage(Storage,
|
|
[{<<"xmlns">>, <<"storage:bookmarks">>}]);
|
|
encode({stat, _, _, _, _} = Stat) ->
|
|
encode_stat(Stat,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/stats">>}]);
|
|
encode({stats, _} = Query) ->
|
|
encode_stats(Query,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/stats">>}]);
|
|
encode({iq, _, _, _, _, _, _, _} = Iq) ->
|
|
encode_iq(Iq, [{<<"xmlns">>, <<"jabber:client">>}]);
|
|
encode({message, _, _, _, _, _, _, _, _, _, _} =
|
|
Message) ->
|
|
encode_message(Message,
|
|
[{<<"xmlns">>, <<"jabber:client">>}]);
|
|
encode({presence, _, _, _, _, _, _, _, _, _, _} =
|
|
Presence) ->
|
|
encode_presence(Presence,
|
|
[{<<"xmlns">>, <<"jabber:client">>}]);
|
|
encode({gone, _} = Gone) ->
|
|
encode_error_gone(Gone,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>}]);
|
|
encode({redirect, _} = Redirect) ->
|
|
encode_error_redirect(Redirect,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-stanzas">>}]);
|
|
encode({error, _, _, _, _} = Error) ->
|
|
encode_error(Error,
|
|
[{<<"xmlns">>, <<"jabber:client">>}]);
|
|
encode({bind, _, _} = Bind) ->
|
|
encode_bind(Bind,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-bind">>}]);
|
|
encode({sasl_auth, _, _} = Auth) ->
|
|
encode_sasl_auth(Auth,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>}]);
|
|
encode({sasl_abort} = Abort) ->
|
|
encode_sasl_abort(Abort,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>}]);
|
|
encode({sasl_challenge, _} = Challenge) ->
|
|
encode_sasl_challenge(Challenge,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>}]);
|
|
encode({sasl_response, _} = Response) ->
|
|
encode_sasl_response(Response,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>}]);
|
|
encode({sasl_success, _} = Success) ->
|
|
encode_sasl_success(Success,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>}]);
|
|
encode({sasl_failure, _, _} = Failure) ->
|
|
encode_sasl_failure(Failure,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>}]);
|
|
encode({sasl_mechanisms, _} = Mechanisms) ->
|
|
encode_sasl_mechanisms(Mechanisms,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-sasl">>}]);
|
|
encode({starttls, _} = Starttls) ->
|
|
encode_starttls(Starttls,
|
|
[{<<"xmlns">>, <<"urn:ietf:params:xml:ns:xmpp-tls">>}]);
|
|
encode({starttls_proceed} = Proceed) ->
|
|
encode_starttls_proceed(Proceed,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>}]);
|
|
encode({starttls_failure} = Failure) ->
|
|
encode_starttls_failure(Failure,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-tls">>}]);
|
|
encode({compress_failure, _} = Failure) ->
|
|
encode_compress_failure(Failure,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/compress">>}]);
|
|
encode({compress, _} = Compress) ->
|
|
encode_compress(Compress,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/compress">>}]);
|
|
encode({compressed} = Compressed) ->
|
|
encode_compressed(Compressed,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/compress">>}]);
|
|
encode({compression, _} = Compression) ->
|
|
encode_compression(Compression,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/features/compress">>}]);
|
|
encode({stream_features, _} = Stream_features) ->
|
|
encode_stream_features(Stream_features,
|
|
[{<<"xmlns">>,
|
|
<<"http://etherx.jabber.org/streams">>}]);
|
|
encode({p1_push} = Push) ->
|
|
encode_p1_push(Push, [{<<"xmlns">>, <<"p1:push">>}]);
|
|
encode({p1_rebind} = Rebind) ->
|
|
encode_p1_rebind(Rebind,
|
|
[{<<"xmlns">>, <<"p1:rebind">>}]);
|
|
encode({p1_ack} = Ack) ->
|
|
encode_p1_ack(Ack, [{<<"xmlns">>, <<"p1:ack">>}]);
|
|
encode({caps, _, _, _} = C) ->
|
|
encode_caps(C,
|
|
[{<<"xmlns">>, <<"http://jabber.org/protocol/caps">>}]);
|
|
encode({feature_register} = Register) ->
|
|
encode_feature_register(Register,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/features/iq-register">>}]);
|
|
encode({register, _, _, _, _, _, _, _, _, _, _, _, _, _,
|
|
_, _, _, _, _, _, _, _} =
|
|
Query) ->
|
|
encode_register(Query,
|
|
[{<<"xmlns">>, <<"jabber:iq:register">>}]);
|
|
encode({session} = Session) ->
|
|
encode_session(Session,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-session">>}]);
|
|
encode({ping} = Ping) ->
|
|
encode_ping(Ping, [{<<"xmlns">>, <<"urn:xmpp:ping">>}]);
|
|
encode({time, _, _} = Time) ->
|
|
encode_time(Time, [{<<"xmlns">>, <<"urn:xmpp:time">>}]);
|
|
encode({text, _, _} = Text) ->
|
|
encode_stream_error_text(Text, []);
|
|
encode({'see-other-host', _} = See_other_host) ->
|
|
encode_stream_error_see_other_host(See_other_host,
|
|
[{<<"xmlns">>,
|
|
<<"urn:ietf:params:xml:ns:xmpp-streams">>}]);
|
|
encode({stream_error, _, _} = Stream_error) ->
|
|
encode_stream_error(Stream_error,
|
|
[{<<"xmlns">>,
|
|
<<"http://etherx.jabber.org/streams">>}]);
|
|
encode({vcard_name, _, _, _, _, _} = N) ->
|
|
encode_vcard_N(N, [{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_adr, _, _, _, _, _, _, _, _, _, _, _, _,
|
|
_, _} =
|
|
Adr) ->
|
|
encode_vcard_ADR(Adr,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_label, _, _, _, _, _, _, _, _} = Label) ->
|
|
encode_vcard_LABEL(Label,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_tel, _, _, _, _, _, _, _, _, _, _, _, _,
|
|
_, _} =
|
|
Tel) ->
|
|
encode_vcard_TEL(Tel,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_email, _, _, _, _, _, _} = Email) ->
|
|
encode_vcard_EMAIL(Email,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_geo, _, _} = Geo) ->
|
|
encode_vcard_GEO(Geo,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_logo, _, _, _} = Logo) ->
|
|
encode_vcard_LOGO(Logo,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_photo, _, _, _} = Photo) ->
|
|
encode_vcard_PHOTO(Photo,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_org, _, _} = Org) ->
|
|
encode_vcard_ORG(Org,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_sound, _, _, _} = Sound) ->
|
|
encode_vcard_SOUND(Sound,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_key, _, _} = Key) ->
|
|
encode_vcard_KEY(Key,
|
|
[{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard, _, _, _, _, _, _, _, _, _, _, _, _, _, _,
|
|
_, _, _, _, _, _, _, _, _, _, _, _, _, _, _} =
|
|
Vcard) ->
|
|
encode_vcard(Vcard, [{<<"xmlns">>, <<"vcard-temp">>}]);
|
|
encode({vcard_xupdate, _} = X) ->
|
|
encode_vcard_xupdate(X,
|
|
[{<<"xmlns">>, <<"vcard-temp:x:update">>}]);
|
|
encode({xdata_field, _, _, _, _, _, _, _} = Field) ->
|
|
encode_xdata_field(Field,
|
|
[{<<"xmlns">>, <<"jabber:x:data">>}]);
|
|
encode({xdata, _, _, _, _, _, _} = X) ->
|
|
encode_xdata(X, [{<<"xmlns">>, <<"jabber:x:data">>}]);
|
|
encode({pubsub_subscription, _, _, _, _} =
|
|
Subscription) ->
|
|
encode_pubsub_subscription(Subscription,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/pubsub">>}]);
|
|
encode({pubsub_affiliation, _, _} = Affiliation) ->
|
|
encode_pubsub_affiliation(Affiliation,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/pubsub">>}]);
|
|
encode({pubsub_item, _, _} = Item) ->
|
|
encode_pubsub_item(Item,
|
|
[{<<"xmlns">>,
|
|
<<"http://jabber.org/protocol/pubsub">>}]);
|
|