ascii-chat 0.11.33
Video chat in your terminal
Loading...
Searching...
No Matches
acip_server_callbacks_t Struct Reference

Server-side packet handler callbacks. More...

#include <include/ascii-chat/network/acip/handlers.h>

Data Fields

void(* on_protocol_version )(const protocol_version_packet_t *version, void *client_ctx, void *app_ctx)
 Called when client sends protocol version.
 
void(* on_image_frame )(const image_frame_packet_t *header, const void *pixel_data, size_t data_len, void *client_ctx, void *app_ctx)
 Called when client sends image frame.
 
void(* on_image_frame_h265 )(uint32_t width, uint32_t height, uint8_t flags, const void *h265_data, size_t data_len, void *client_ctx, void *app_ctx)
 Called when client sends H.265-encoded image frame.
 
void(* on_audio )(const void *audio_data, size_t audio_len, void *client_ctx, void *app_ctx)
 Called when client sends raw audio.
 
void(* on_audio_batch )(const audio_batch_packet_t *header, const float *samples, size_t num_samples, void *client_ctx, void *app_ctx)
 Called when client sends audio batch.
 
void(* on_audio_opus )(const void *opus_data, size_t opus_len, void *client_ctx, void *app_ctx)
 Called when client sends Opus audio.
 
void(* on_audio_opus_batch )(const void *batch_data, size_t batch_len, void *client_ctx, void *app_ctx)
 Called when client sends Opus batch.
 
void(* on_client_join )(const void *join_data, size_t data_len, void *client_ctx, void *app_ctx)
 Called when client joins.
 
void(* on_client_leave )(void *client_ctx, void *app_ctx)
 Called when client leaves.
 
void(* on_stream_start )(uint32_t stream_types, void *client_ctx, void *app_ctx)
 Called when client starts streaming.
 
void(* on_stream_stop )(uint32_t stream_types, void *client_ctx, void *app_ctx)
 Called when client stops streaming.
 
void(* on_capabilities )(const void *cap_data, size_t data_len, void *client_ctx, void *app_ctx)
 Called when client sends capabilities.
 
void(* on_ping )(void *client_ctx, void *app_ctx)
 Called when ping received (should send pong)
 
void(* on_pong )(void *client_ctx, void *app_ctx)
 Called when pong received from client.
 
void(* on_error )(const error_packet_t *header, const char *message, void *client_ctx, void *app_ctx)
 Called when error message received from client.
 
void(* on_remote_log )(const remote_log_packet_t *header, const char *message, void *client_ctx, void *app_ctx)
 Called when remote log received from client.
 
void(* on_crypto_rekey_request )(const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)
 Called when client sends crypto rekey request.
 
void(* on_crypto_rekey_response )(const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)
 Called when client sends crypto rekey response.
 
void(* on_crypto_rekey_complete )(const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)
 Called when client sends crypto rekey complete.
 
void(* on_crypto_key_exchange_resp )(packet_type_t type, const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)
 Called when client sends KEY_EXCHANGE_RESP (crypto handshake)
 
void(* on_crypto_auth_response )(packet_type_t type, const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)
 Called when client sends AUTH_RESPONSE (crypto handshake)
 
void(* on_crypto_no_encryption )(packet_type_t type, const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)
 Called when client sends NO_ENCRYPTION (crypto handshake rejection)
 
void * app_ctx
 Application context (passed to all callbacks)
 

Detailed Description

Server-side packet handler callbacks.

Applications implement these callbacks to handle incoming packets. NULL callbacks are skipped (no-op).

Definition at line 148 of file handlers.h.

Field Documentation

◆ app_ctx

void* acip_server_callbacks_t::app_ctx

Application context (passed to all callbacks)

Definition at line 222 of file handlers.h.

◆ on_audio

void(* acip_server_callbacks_t::on_audio) (const void *audio_data, size_t audio_len, void *client_ctx, void *app_ctx)

Called when client sends raw audio.

Definition at line 161 of file handlers.h.

◆ on_audio_batch

void(* acip_server_callbacks_t::on_audio_batch) (const audio_batch_packet_t *header, const float *samples, size_t num_samples, void *client_ctx, void *app_ctx)

Called when client sends audio batch.

Definition at line 164 of file handlers.h.

◆ on_audio_opus

void(* acip_server_callbacks_t::on_audio_opus) (const void *opus_data, size_t opus_len, void *client_ctx, void *app_ctx)

Called when client sends Opus audio.

Definition at line 168 of file handlers.h.

◆ on_audio_opus_batch

void(* acip_server_callbacks_t::on_audio_opus_batch) (const void *batch_data, size_t batch_len, void *client_ctx, void *app_ctx)

Called when client sends Opus batch.

Definition at line 171 of file handlers.h.

◆ on_capabilities

void(* acip_server_callbacks_t::on_capabilities) (const void *cap_data, size_t data_len, void *client_ctx, void *app_ctx)

Called when client sends capabilities.

Definition at line 186 of file handlers.h.

◆ on_client_join

void(* acip_server_callbacks_t::on_client_join) (const void *join_data, size_t data_len, void *client_ctx, void *app_ctx)

Called when client joins.

Definition at line 174 of file handlers.h.

◆ on_client_leave

void(* acip_server_callbacks_t::on_client_leave) (void *client_ctx, void *app_ctx)

Called when client leaves.

Definition at line 177 of file handlers.h.

◆ on_crypto_auth_response

void(* acip_server_callbacks_t::on_crypto_auth_response) (packet_type_t type, const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)

Called when client sends AUTH_RESPONSE (crypto handshake)

Definition at line 214 of file handlers.h.

◆ on_crypto_key_exchange_resp

void(* acip_server_callbacks_t::on_crypto_key_exchange_resp) (packet_type_t type, const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)

Called when client sends KEY_EXCHANGE_RESP (crypto handshake)

Definition at line 210 of file handlers.h.

◆ on_crypto_no_encryption

void(* acip_server_callbacks_t::on_crypto_no_encryption) (packet_type_t type, const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)

Called when client sends NO_ENCRYPTION (crypto handshake rejection)

Definition at line 218 of file handlers.h.

◆ on_crypto_rekey_complete

void(* acip_server_callbacks_t::on_crypto_rekey_complete) (const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)

Called when client sends crypto rekey complete.

Definition at line 207 of file handlers.h.

◆ on_crypto_rekey_request

void(* acip_server_callbacks_t::on_crypto_rekey_request) (const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)

Called when client sends crypto rekey request.

Definition at line 201 of file handlers.h.

◆ on_crypto_rekey_response

void(* acip_server_callbacks_t::on_crypto_rekey_response) (const void *payload, size_t payload_len, void *client_ctx, void *app_ctx)

Called when client sends crypto rekey response.

Definition at line 204 of file handlers.h.

◆ on_error

void(* acip_server_callbacks_t::on_error) (const error_packet_t *header, const char *message, void *client_ctx, void *app_ctx)

Called when error message received from client.

Definition at line 195 of file handlers.h.

◆ on_image_frame

void(* acip_server_callbacks_t::on_image_frame) (const image_frame_packet_t *header, const void *pixel_data, size_t data_len, void *client_ctx, void *app_ctx)

Called when client sends image frame.

Definition at line 153 of file handlers.h.

◆ on_image_frame_h265

void(* acip_server_callbacks_t::on_image_frame_h265) (uint32_t width, uint32_t height, uint8_t flags, const void *h265_data, size_t data_len, void *client_ctx, void *app_ctx)

Called when client sends H.265-encoded image frame.

Definition at line 157 of file handlers.h.

◆ on_ping

void(* acip_server_callbacks_t::on_ping) (void *client_ctx, void *app_ctx)

Called when ping received (should send pong)

Definition at line 189 of file handlers.h.

◆ on_pong

void(* acip_server_callbacks_t::on_pong) (void *client_ctx, void *app_ctx)

Called when pong received from client.

Definition at line 192 of file handlers.h.

◆ on_protocol_version

void(* acip_server_callbacks_t::on_protocol_version) (const protocol_version_packet_t *version, void *client_ctx, void *app_ctx)

Called when client sends protocol version.

Definition at line 150 of file handlers.h.

◆ on_remote_log

void(* acip_server_callbacks_t::on_remote_log) (const remote_log_packet_t *header, const char *message, void *client_ctx, void *app_ctx)

Called when remote log received from client.

Definition at line 198 of file handlers.h.

◆ on_stream_start

void(* acip_server_callbacks_t::on_stream_start) (uint32_t stream_types, void *client_ctx, void *app_ctx)

Called when client starts streaming.

Definition at line 180 of file handlers.h.

◆ on_stream_stop

void(* acip_server_callbacks_t::on_stream_stop) (uint32_t stream_types, void *client_ctx, void *app_ctx)

Called when client stops streaming.

Definition at line 183 of file handlers.h.


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