ascii-chat
Binary v0.15.83-53-gb711d8720
Library lib/v0.3.2-701-gb711d8720
Video chat in your terminal
Loading...
Searching...
No Matches
send.h
Go to the documentation of this file.
1
20
21#pragma once
22
25#include "../../network/packet/packet.h" // For packet_type_t
27#include <stdint.h>
28#include <stddef.h>
29#include <stdbool.h>
30
31// =============================================================================
32// Generic Packet Sending
33// =============================================================================
34
51 const socket_buffer_t *payload, size_t count, uint32_t client_id);
52
54 size_t payload_len, uint32_t client_id);
55
71 size_t *payload_len, void **alloc_buffer);
72
73// Video/ASCII frame functions moved to:
74// - acip_send_ascii_frame → lib/network/acip/server.h
75// - acip_send_image_frame → lib/network/acip/client.h
76
77// =============================================================================
78// Audio Sending
79// =============================================================================
80
90asciichat_error_t acip_send_audio_batch(acip_transport_t *transport, const float *samples, uint32_t num_samples,
91 uint32_t batch_count);
92
101asciichat_error_t acip_send_audio_opus(acip_transport_t *transport, const void *opus_data, size_t opus_len);
102
115asciichat_error_t acip_send_audio_opus_batch(acip_transport_t *transport, const void *opus_data, size_t opus_len,
116 const uint16_t *frame_sizes, uint32_t frame_count, uint32_t sample_rate,
117 uint32_t frame_duration);
118
119// =============================================================================
120// Control/Signaling
121// =============================================================================
122
130
138
139// Client control functions moved to lib/network/acip/client.h:
140// - acip_send_stream_start, acip_send_stream_stop
141// - acip_send_capabilities, acip_send_protocol_version
142//
143// Server control functions moved to lib/network/acip/server.h:
144// - acip_send_clear_console, acip_send_server_state
145
146// =============================================================================
147// Messages/Errors
148// =============================================================================
149
158asciichat_error_t acip_send_error(acip_transport_t *transport, uint32_t error_code, const char *message);
159
170 const char *message);
171
172// =============================================================================
173// ACDS (Discovery Server) Response Sending
174// =============================================================================
175
184
193
Synchronized per-thread pending error stacks and value snapshots. SET_ERRNO pushes,...
unsigned short uint16_t
Definition common.h:61
unsigned int uint32_t
Definition common.h:62
unsigned char uint8_t
Definition common.h:60
asciichat_error_t
Error and exit codes - unified status values (0-255).
Definition error_codes.h:44
acip_session_joined_t
Definition acds.h:479
acip_session_created_t
Definition acds.h:274
acip_session_info_t
Definition acds.h:360
packet_type_t
Network protocol packet type enumeration.
Definition packet.h:301
struct acip_transport acip_transport_t
Forward declaration of ACIP transport.
Definition host.h:506
Transport abstraction layer for ACIP protocol.
ACIP protocol message structures and helpers.
asciichat_error_t acip_send_audio_opus(acip_transport_t *transport, const void *opus_data, size_t opus_len)
Send Opus-encoded audio packet.
Definition send.c:337
asciichat_error_t packet_receive_via_transport(acip_transport_t *transport, packet_type_t *type, void **payload, size_t *payload_len, void **alloc_buffer)
Receive a packet via transport with header parsing and validation.
Definition send.c:200
asciichat_error_t acip_send_ping(acip_transport_t *transport)
Send ping packet.
Definition send.c:385
asciichat_error_t acip_send_session_joined(acip_transport_t *transport, const acip_session_joined_t *response)
Send SESSION_JOINED response packet.
Definition send.c:511
asciichat_error_t acip_send_remote_log(acip_transport_t *transport, uint8_t log_level, uint8_t direction, const char *message)
Send remote log packet.
Definition send.c:459
asciichat_error_t acip_send_error(acip_transport_t *transport, uint32_t error_code, const char *message)
Send error message packet.
Definition send.c:415
asciichat_error_t acip_send_session_created(acip_transport_t *transport, const acip_session_created_t *response)
Send SESSION_CREATED response packet.
Definition send.c:495
asciichat_error_t acip_send_pong(acip_transport_t *transport)
Send pong packet.
Definition send.c:395
asciichat_error_t packet_send_via_transportv(acip_transport_t *transport, packet_type_t type, const socket_buffer_t *payload, size_t count, uint32_t client_id)
Send arbitrary packet via transport (generic packet sender).
Definition send.c:155
asciichat_error_t acip_send_audio_opus_batch(acip_transport_t *transport, const void *opus_data, size_t opus_len, const uint16_t *frame_sizes, uint32_t frame_count, uint32_t sample_rate, uint32_t frame_duration)
Send batched Opus-encoded audio frames.
Definition send.c:350
asciichat_error_t acip_send_audio_batch(acip_transport_t *transport, const float *samples, uint32_t num_samples, uint32_t batch_count)
Send audio batch packet.
Definition send.c:295
asciichat_error_t acip_send_session_info(acip_transport_t *transport, const acip_session_info_t *info)
Send SESSION_INFO response packet.
Definition send.c:503
asciichat_error_t packet_send_via_transport(acip_transport_t *transport, packet_type_t type, const void *payload, size_t payload_len, uint32_t client_id)
Definition send.c:190