Effect boundary for outbound USync, prekey, and group-info IQ requests.
The caller supplies the transport send function. Receives and timeouts run in the caller process, preserving the existing session-worker mailbox contract.
Summary
Functions
Fetches a prekey for one device JID.
Fetches prekeys for several device JIDs in one IQ request.
Queries the linked-device map and persists the successful USync result.
Queries current group participants and addressing mode.
Types
Functions
@spec fetch_prekey( request_state(), String.t(), ExWapp.Signal.SessionStore.t(), send_node_fun() ) :: ExWapp.Session.Outbound.Prekeys.fetch_result()
Fetches a prekey for one device JID.
@spec fetch_prekeys_batch( request_state(), [String.t(), ...], ExWapp.Signal.SessionStore.t(), send_node_fun() ) :: ExWapp.Session.Outbound.Prekeys.fetch_result()
Fetches prekeys for several device JIDs in one IQ request.
@spec query_devices(request_state(), [String.t()], send_node_fun()) :: {:ok, map()} | {:error, term()}
Queries the linked-device map and persists the successful USync result.
@spec query_group_info(request_state(), String.t(), send_node_fun()) :: {:ok, ExWapp.Session.Outbound.Group.group_info()} | {:error, term()}
Queries current group participants and addressing mode.