Owns one Vox RTC gRPC control stream.
The process serializes every outgoing control message and delivers incoming
events to subscribers as {:vox_rtc, session, event} messages.
Summary
Functions
Returns a specification to start this module under a supervisor.
Types
@type t() :: pid()
Functions
@spec append_response_text(t(), String.t(), VoxRtcServer.ResponseOptions.t()) :: :ok | {:error, term()}
@spec cancel_response(t(), VoxRtcServer.ResponseOptions.t()) :: :ok | {:error, term()}
@spec child_spec(keyword()) :: Supervisor.child_spec()
Returns a specification to start this module under a supervisor.
See Supervisor.
@spec commit_response(t(), VoxRtcServer.ResponseOptions.t()) :: :ok | {:error, term()}
@spec configure(t(), VoxRtcServer.SessionConfig.t()) :: :ok | {:error, term()}
@spec replace_response_text(t(), String.t(), VoxRtcServer.ResponseOptions.t()) :: :ok | {:error, term()}
@spec send_ice_candidate( t(), VoxRtcServer.IceCandidate.t() | :complete, pos_integer() | nil ) :: :ok | {:error, term()}
@spec send_offer( t(), VoxRtcServer.SessionDescription.t(), boolean(), pos_integer() | nil ) :: :ok | {:error, term()}
@spec start_link(keyword()) :: GenServer.on_start()
@spec start_response(t(), VoxRtcServer.ResponseOptions.t()) :: :ok | {:error, term()}
@spec start_response_and_wait( t(), VoxRtcServer.ResponseOptions.t(), non_neg_integer() ) :: {:ok, VoxRtcServer.StartAck.t()} | {:error, VoxRtcServer.ErrorEvent.t()} | {:error, term()}