ascii-chat 0.6.0
Real-time terminal-based video chat with ASCII art conversion
Loading...
Searching...
No Matches
acip_acds_callbacks_t Struct Reference

ACDS packet handler callbacks. More...

#include <lib/network/acip/acds_handlers.h>

Data Fields

void(* on_session_create )(const acip_session_create_t *req, int client_socket, const char *client_ip, void *app_ctx)
 Called when client requests session creation.
 
void(* on_session_lookup )(const acip_session_lookup_t *req, int client_socket, const char *client_ip, void *app_ctx)
 Called when client looks up session info.
 
void(* on_session_join )(const acip_session_join_t *req, int client_socket, const char *client_ip, void *app_ctx)
 Called when client joins a session.
 
void(* on_session_leave )(const acip_session_leave_t *req, int client_socket, const char *client_ip, void *app_ctx)
 Called when client leaves a session.
 
void(* on_webrtc_sdp )(const acip_webrtc_sdp_t *sdp, int client_socket, const char *client_ip, void *app_ctx)
 Called when client sends WebRTC SDP offer/answer.
 
void(* on_webrtc_ice )(const acip_webrtc_ice_t *ice, int client_socket, const char *client_ip, void *app_ctx)
 Called when client sends WebRTC ICE candidate.
 
void(* on_discovery_ping )(const void *payload, size_t payload_len, int client_socket, const char *client_ip, void *app_ctx)
 Called when client sends discovery ping.
 
void * app_ctx
 Application context (passed to all callbacks)
 

Detailed Description

ACDS packet handler callbacks.

Discovery server implements these callbacks to handle incoming packets. NULL callbacks are skipped (no-op).

All callbacks receive:

  • client_socket: Socket file descriptor for the client connection
  • client_ip: IP address string of the client
  • app_ctx: Application context (e.g., acds_server_t*)

Definition at line 34 of file acds_handlers.h.

Field Documentation

◆ app_ctx

void* acip_acds_callbacks_t::app_ctx

Application context (passed to all callbacks)

Definition at line 58 of file acds_handlers.h.

Referenced by acds_client_handler().

◆ on_discovery_ping

void(* acip_acds_callbacks_t::on_discovery_ping) (const void *payload, size_t payload_len, int client_socket, const char *client_ip, void *app_ctx)

Called when client sends discovery ping.

Definition at line 54 of file acds_handlers.h.

◆ on_session_create

void(* acip_acds_callbacks_t::on_session_create) (const acip_session_create_t *req, int client_socket, const char *client_ip, void *app_ctx)

Called when client requests session creation.

Definition at line 36 of file acds_handlers.h.

◆ on_session_join

void(* acip_acds_callbacks_t::on_session_join) (const acip_session_join_t *req, int client_socket, const char *client_ip, void *app_ctx)

Called when client joins a session.

Definition at line 42 of file acds_handlers.h.

◆ on_session_leave

void(* acip_acds_callbacks_t::on_session_leave) (const acip_session_leave_t *req, int client_socket, const char *client_ip, void *app_ctx)

Called when client leaves a session.

Definition at line 45 of file acds_handlers.h.

◆ on_session_lookup

void(* acip_acds_callbacks_t::on_session_lookup) (const acip_session_lookup_t *req, int client_socket, const char *client_ip, void *app_ctx)

Called when client looks up session info.

Definition at line 39 of file acds_handlers.h.

◆ on_webrtc_ice

void(* acip_acds_callbacks_t::on_webrtc_ice) (const acip_webrtc_ice_t *ice, int client_socket, const char *client_ip, void *app_ctx)

Called when client sends WebRTC ICE candidate.

Definition at line 51 of file acds_handlers.h.

◆ on_webrtc_sdp

void(* acip_acds_callbacks_t::on_webrtc_sdp) (const acip_webrtc_sdp_t *sdp, int client_socket, const char *client_ip, void *app_ctx)

Called when client sends WebRTC SDP offer/answer.

Definition at line 48 of file acds_handlers.h.


The documentation for this struct was generated from the following file: