Module escalus_stanza

Data Types

attrs()

attrs() = #{binary() => binary() | undefined}

caps_version()

caps_version() = v1 | v2

context()

context() = [{atom(), binary() | list() | exml:element()}]

xml_snippet()

xml_snippet() = string() | binary()

Function Index

adhoc_request/1
adhoc_request/2
auth/1
auth/2
auth_response/0
auth_response/1
bind/1
caps/3
caps_to_node/1
carbons_disable/0
carbons_enable/0
chat/3
chat_marker/3
chat_to/2
chat_to_short_jid/2
chat_to_with_id/2
chat_to_with_id_and_timestamp/2
chat_without_carbon_to/2
compress/1
disco_info/1
disco_info/2
disco_items/1
disco_items/2
enable_sm/0
enable_sm/1
error_element/2
feature/1
field_el/3
from/2
from_template/2
from_xml/1An xml_snippet() is a textual representation of XML, possibly with formatting parameters (places where to insert substitutions).
get_registration_fields/0
groupchat_to/2
id/0
identity/3
identity/4
iq/2
iq/3
iq_get/2
iq_result/1
iq_result/2
iq_set/2
iq_set_nonquery/2
last_activity/1
mam_archive_query/1
mam_lookup_messages_iq/4
mam_lookup_messages_iq/5
mam_lookup_messages_iq/6
markable/1
message/2
message/4
ns_caps/1
ping_request/1
presence/1
presence/2
presence_direct/2
presence_direct/3
presence_show/1
privacy_activate/1
privacy_deactivate/0
privacy_get_all/0
privacy_get_lists/1
privacy_list/2
privacy_list_item/3
privacy_list_item/5
privacy_list_jid_item/4
privacy_no_default/0
privacy_set_default/1
privacy_set_list/1
private_get/2
private_set/1
query_el/2
query_el/3
receipt_conf/1
receipt_req/1
register_account/1
remove_account/0
resume/2
roster_add_contact/3
roster_add_contacts/1
roster_get/0
roster_get/1
roster_remove_contact/1
search_fields/1
search_fields_iq/1
search_iq/2
service_discovery/1
session/0
set_id/2
setattr/3
sm_ack/1
sm_request/0
starttls/0
stream_end/0
stream_start/1
stream_start/2
tags/1
to/2
uuid_v4/0
vcard_request/0
vcard_request/1
vcard_update/1
vcard_update/2
ws_close/0
ws_close/1
ws_open/1
ws_open/2
x_data_form/2

Function Details

adhoc_request/1

adhoc_request(Node::binary()) -> exml:element()

adhoc_request/2

adhoc_request(Node::binary(), Payload::[exml:cdata() | exml:element()]) -> exml:element()

auth/1

auth(Mechanism::binary()) -> exml:element()

auth/2

auth(Mechanism::binary(), Children::[exml:cdata() | exml:element()]) -> exml:element()

auth_response/0

auth_response() -> exml:element()

auth_response/1

auth_response(Children::[exml:cdata() | exml:element()]) -> exml:element()

bind/1

bind(Resource::binary()) -> exml:element()

caps/3

caps(HashAlg::binary(), HashValue::binary(), X3::caps_version()) -> exml:element()

caps_to_node/1

caps_to_node(Xmlel::exml:element()) -> binary()

carbons_disable/0

carbons_disable() -> exml:element()

carbons_enable/0

carbons_enable() -> exml:element()

chat/3

chat(Sender::escalus_utils:jid_spec(), Recipient::escalus_utils:jid_spec(), Msg::binary()) -> exml:element()

chat_marker/3

chat_marker(To::escalus_utils:jid_spec(), MarkerName::binary(), MessageId::binary()) -> exml:element()

chat_to/2

chat_to(Recipient::escalus_utils:jid_spec(), Msg::binary()) -> exml:element()

chat_to_short_jid/2

chat_to_short_jid(Recipient::escalus_utils:jid_spec(), Msg::binary()) -> exml:element()

chat_to_with_id/2

chat_to_with_id(Recipient::escalus_utils:jid_spec(), Msg::binary()) -> exml:element()

chat_to_with_id_and_timestamp/2

chat_to_with_id_and_timestamp(Recipient::escalus_utils:jid_spec(), Msg::binary()) -> exml:element()

chat_without_carbon_to/2

chat_without_carbon_to(Recipient::escalus_utils:jid_spec(), Msg::binary()) -> exml:element()

compress/1

compress(Method::binary()) -> exml:element()

disco_info/1

disco_info(JID::escalus_utils:jid_spec()) -> exml:element()

disco_info/2

disco_info(JID::escalus_utils:jid_spec(), Node::binary()) -> exml:element()

disco_items/1

disco_items(JID::escalus_utils:jid_spec()) -> exml:element()

disco_items/2

disco_items(JID::escalus_utils:jid_spec(), Node::binary()) -> exml:element()

enable_sm/0

enable_sm() -> exml:element()

enable_sm/1

enable_sm(Opts::proplists:proplist()) -> exml:element()

error_element/2

error_element(Type::binary(), Condition::binary()) -> exml:element()

feature/1

feature(Feature::binary()) -> exml:element()

field_el/3

field_el(Name::binary(), Type::undefined | binary(), Values::undefined | binary() | [binary()]) -> undefined | exml:element()

from/2

from(Stanza::exml:element(), Recipient::escalus_utils:jid_spec()) -> exml:element()

from_template/2

from_template(Snippet, Ctx) -> Term

from_xml/1

from_xml(Snippet) -> Term

An xml_snippet() is a textual representation of XML, possibly with formatting parameters (places where to insert substitutions). It may be a string() or a binary(). A parameterless snippet might look like:

    <example_element/>

Snippet with formatting parameters will look like:

    <example_element some_attr="{{attr_value}}"/>

Parameter names must be valid atoms, so if you want to use punctuation use single quotes:

    <example_element some_attr="{{'fancy:param-name'}}"/>

If the argument you pass as the parameter value is an xmlterm() then use triple brackets at the parameter expansion site. Otherwise, the argument term will end up HTML-encoded after expansion.

    <example_element>
       {{{argument_will_be_xmlterm}}}
    </example_element>

It's also possible to substitute whole attributes, not just their values:

    <example_element {{myattr}}/>
Refer to escalus_stanza_SUITE for usage examples.

get_registration_fields/0

get_registration_fields() -> exml:element()

groupchat_to/2

groupchat_to(Recipient::escalus_utils:jid_spec(), Msg::binary()) -> exml:element()

id/0

id() -> binary()

identity/3

identity(Category::binary() | undefined, Type::binary() | undefined, Name::binary() | undefined) -> exml:element()

identity/4

identity(Category::binary() | undefined, Type::binary() | undefined, Name::binary() | undefined, ExtraAttrs::#{binary() => binary()}) -> exml:element()

iq/2

iq(Type::binary(), Body::[exml:cdata() | exml:element()]) -> exml:element()

iq/3

iq(To::escalus_utils:jid_spec(), Type::binary(), Body::[exml:cdata() | exml:element()]) -> exml:element()

iq_get/2

iq_get(NS::binary(), Payload::[exml:cdata() | exml:element()]) -> exml:element()

iq_result/1

iq_result(Request::exml:element()) -> exml:element()

iq_result/2

iq_result(Request::exml:element(), Payload::[exml:cdata() | exml:element()]) -> exml:element()

iq_set/2

iq_set(NS::binary(), Payload::[exml:cdata() | exml:element()]) -> exml:element()

iq_set_nonquery/2

iq_set_nonquery(NS::binary(), Payload::[exml:cdata() | exml:element()]) -> exml:element()

last_activity/1

last_activity(User::escalus_utils:jid_spec()) -> exml:element()

mam_archive_query/1

mam_archive_query(QueryId::binary()) -> exml:element()

mam_lookup_messages_iq/4

mam_lookup_messages_iq(QueryId::binary(), Start::binary(), End::binary(), WithJID::binary()) -> exml:element()

mam_lookup_messages_iq/5

mam_lookup_messages_iq(QueryId::binary(), Start::binary(), End::binary(), WithJID::binary(), Simple::term()) -> exml:element()

mam_lookup_messages_iq/6

mam_lookup_messages_iq(QueryId::binary(), Start::binary(), End::binary(), WithJID::binary(), DirectionWMessageId::term(), Simple::boolean()) -> exml:element()

markable/1

markable(Message::exml:element()) -> exml:element()

message/2

message(Text::binary(), Attrs) -> exml:element()

message/4

message(From, Recipient, Type, Msg) -> exml:element()

ns_caps/1

ns_caps(X1::caps_version()) -> binary()

ping_request/1

ping_request(To::escalus_utils:jid_spec()) -> exml:element()

presence/1

presence(Type::binary()) -> exml:element()

presence/2

presence(Type::binary(), Children::[exml:element() | exml:cdata()]) -> exml:element()

presence_direct/2

presence_direct(Recipient::escalus_utils:jid_spec(), Type::binary()) -> exml:element()

presence_direct/3

presence_direct(Client::escalus_utils:jid_spec(), Type::binary(), Body::[exml:element() | exml:cdata()]) -> exml:element()

presence_show/1

presence_show(Show::binary()) -> exml:element()

privacy_activate/1

privacy_activate(ListName::term()) -> exml:element()

privacy_deactivate/0

privacy_deactivate() -> exml:element()

privacy_get_all/0

privacy_get_all() -> exml:element()

privacy_get_lists/1

privacy_get_lists(ListNames::[term()]) -> exml:element()

privacy_list/2

privacy_list(Name::binary(), Items::[exml:cdata() | exml:element()]) -> exml:element()

privacy_list_item/3

privacy_list_item(Order::binary(), Action::binary(), Content::[binary()]) -> exml:element()

privacy_list_item/5

privacy_list_item(Order::binary(), Action::binary(), Type::binary(), Value::binary(), Content::[binary()]) -> exml:element()

privacy_list_jid_item/4

privacy_list_jid_item(Order::binary(), Action::binary(), Who::escalus_utils:jid_spec(), Contents::[binary()]) -> exml:element()

privacy_no_default/0

privacy_no_default() -> exml:element()

privacy_set_default/1

privacy_set_default(ListName::term()) -> exml:element()

privacy_set_list/1

privacy_set_list(PrivacyList::exml:element()) -> exml:element()

private_get/2

private_get(NS::term(), Name::term()) -> exml:element()

private_set/1

private_set(Element::exml:element()) -> exml:element()

query_el/2

query_el(NS::binary(), Children::[exml:cdata() | exml:element()]) -> exml:element()

query_el/3

query_el(NS::binary(), Attrs::exml:attrs(), Children::[exml:cdata() | exml:element()]) -> exml:element()

receipt_conf/1

receipt_conf(Xmlel::exml:element()) -> exml:element()

receipt_req/1

receipt_req(Xmlel::exml:element()) -> exml:element()

register_account/1

register_account(Body::[exml:cdata() | exml:element()]) -> exml:element()

remove_account/0

remove_account() -> exml:element()

resume/2

resume(SMID::binary(), PrevH::integer()) -> exml:element()

roster_add_contact/3

roster_add_contact(User::escalus_utils:jid_spec(), Groups::[binary()], Nick::binary()) -> exml:element()

roster_add_contacts/1

roster_add_contacts(ItemSpecs::[{escalus_utils:jid_spec(), list(), binary()}]) -> exml:element()

roster_get/0

roster_get() -> exml:element()

roster_get/1

roster_get(Ver::binary()) -> exml:element()

roster_remove_contact/1

roster_remove_contact(User::escalus_utils:jid_spec()) -> exml:element()

search_fields/1

search_fields(Rest::[null | {binary(), binary()} | term()]) -> [exml:element()]

search_fields_iq/1

search_fields_iq(JID::escalus_utils:jid_spec()) -> exml:element()

search_iq/2

search_iq(JID::escalus_utils:jid_spec(), Fields::[exml:cdata() | exml:element()]) -> exml:element()

service_discovery/1

service_discovery(Server::binary()) -> exml:element()

session/0

session() -> exml:element()

set_id/2

set_id(Stanza::exml:element(), ID::binary()) -> exml:element()

setattr/3

setattr(Stanza::exml:element(), Key::binary(), Val::binary()) -> exml:element()

sm_ack/1

sm_ack(H::integer()) -> exml:element()

sm_request/0

sm_request() -> exml:element()

starttls/0

starttls() -> exml:element()

stream_end/0

stream_end() -> exml_stream:stop()

stream_start/1

stream_start(To::binary() | undefined) -> exml_stream:start()

stream_start/2

stream_start(To::binary() | undefined, ExtraAttrs::attrs()) -> exml_stream:start()

tags/1

tags(KVs::[{binary(), binary()}]) -> [exml:element()]

to/2

to(Stanza::exml:element(), Recipient::escalus_utils:jid_spec()) -> exml:element()

uuid_v4/0

uuid_v4() -> binary()

vcard_request/0

vcard_request() -> exml:element()

vcard_request/1

vcard_request(JID::binary()) -> exml:element()

vcard_update/1

vcard_update(Fields::list()) -> exml:element()

vcard_update/2

vcard_update(JID::binary(), Fields::list()) -> exml:element()

ws_close/0

ws_close() -> exml:element()

ws_close/1

ws_close(ExtraAttrs::attrs()) -> exml:element()

ws_open/1

ws_open(To::binary() | undefined) -> exml:element()

ws_open/2

ws_open(To::binary() | undefined, ExtraAttrs::attrs()) -> exml:element()

x_data_form/2

x_data_form(Type::binary(), Children::[exml:cdata() | exml:element()]) -> exml:element()


Generated by EDoc