Wampex.Client.Session (wampex_client v0.2.0)
A state machine based process for managing a WAMP Session. Utilizes StatesLanguage to implement the gen_statem process. See priv/session.json for the JSON representation
Summary
Types
@type t() :: %Wampex.Client.Session{ challenge: Wampex.Roles.Peer.Challenge.t() | nil, connected: boolean(), error: binary(), event: Wampex.Roles.Broker.Event.t() | nil, goodbye: binary() | nil, id: integer() | nil, interrupt: integer() | nil, invocation: Wampex.Roles.Dealer.Invocation.t() | nil, message: Wampex.message() | nil, message_queue: [], name: module() | nil, protocol: binary(), realm: Wampex.Client.Realm.t(), request_id: integer(), requests: [], roles: [module()], serializer: module(), transport: module(), transport_pid: pid() | module() | nil, url: binary() }
Functions
See :gen_statem.call/2
.
See :gen_statem.call/3
.
See :gen_statem.cast/2
.
@spec cast_send_request(name :: atom() | pid(), request :: Wampex.message()) :: :ok
@spec cast_send_request( name :: atom() | pid(), request :: Wampex.message(), from :: pid() ) :: :ok
@spec connected?(name :: atom()) :: true | false
@spec send_request( name :: atom() | pid(), request :: Wampex.message(), timeout :: integer() ) :: term()