ascii-chat 0.11.33
Video chat in your terminal
Loading...
Searching...
No Matches
participant.h File Reference

👤 Client-side session participation abstraction More...

Go to the source code of this file.

Data Structures

struct  session_participant_callbacks_t
 Callback function prototypes for session participant events. More...
 
struct  session_participant_config_t
 Configuration for session participant. More...
 

Typedefs

typedef struct session_participant session_participant_t
 Opaque session participant handle.
 
typedef struct acip_transport acip_transport_t
 Forward declaration of ACIP transport.
 

Functions

session_participant_t * session_participant_create (const session_participant_config_t *config)
 Create a new session participant.
 
void session_participant_destroy (session_participant_t *p)
 Destroy session participant and free resources.
 
asciichat_error_t session_participant_connect (session_participant_t *p)
 Connect to session server.
 
void session_participant_disconnect (session_participant_t *p)
 Disconnect from session server.
 
bool session_participant_is_connected (session_participant_t *p)
 Check if participant is connected.
 
uint32_t session_participant_get_client_id (session_participant_t *p)
 Get assigned client ID.
 
asciichat_error_t session_participant_start_video (session_participant_t *p)
 Start video capture and streaming.
 
void session_participant_stop_video (session_participant_t *p)
 Stop video capture and streaming.
 
bool session_participant_is_video_active (session_participant_t *p)
 Check if video is streaming.
 
asciichat_error_t session_participant_start_audio (session_participant_t *p)
 Start audio capture and streaming.
 
void session_participant_stop_audio (session_participant_t *p)
 Stop audio capture and streaming.
 
bool session_participant_is_audio_active (session_participant_t *p)
 Check if audio is streaming.
 
asciichat_error_t session_participant_get_settings (session_participant_t *p, session_settings_t *settings)
 Get current session settings.
 
asciichat_error_t session_participant_request_settings (session_participant_t *p, const session_settings_t *settings)
 Request session settings update (if permitted)
 
asciichat_error_t session_participant_start_video_capture (session_participant_t *p)
 Start video capture and transmission to host.
 
void session_participant_stop_video_capture (session_participant_t *p)
 Stop video capture and transmission.
 
asciichat_error_t session_participant_start_audio_capture (session_participant_t *p)
 Start audio capture and transmission to host.
 
void session_participant_stop_audio_capture (session_participant_t *p)
 Stop audio capture and transmission.
 
socket_t session_participant_get_socket (session_participant_t *p)
 Get the socket from a participant context.
 
asciichat_error_t session_participant_set_transport (session_participant_t *p, acip_transport_t *transport)
 Set an alternative transport for the participant.
 
acip_transport_t * session_participant_get_transport (session_participant_t *p)
 Get the current transport for the participant.
 
bool session_participant_has_transport (session_participant_t *p)
 Check if participant has an active alternative transport.
 

Detailed Description

👤 Client-side session participation abstraction

Definition in file participant.h.