videocall_cli/consumers/
mod.rs1use camera_synk::CameraSynk;
2use dead_synk::DeadSynk;
3use quic::QUICClient;
4
5pub mod camera_synk;
6pub mod dead_synk;
7pub mod local_window_synk;
8pub mod quic;
9
10pub enum CameraSynks {
11 DeadSynk(DeadSynk),
12 CameraSynk(QUICClient),
13 }
15
16impl CameraSynk for CameraSynks {
17 async fn connect(&mut self) -> anyhow::Result<()> {
18 match self {
19 CameraSynks::DeadSynk(dead_synk) => dead_synk.connect().await,
20 CameraSynks::CameraSynk(client) => client.connect().await,
21 }
22 }
23
24 async fn send_packet(&self, data: Vec<u8>) -> anyhow::Result<()> {
25 match self {
26 CameraSynks::CameraSynk(client) => client.send_packet(data).await,
27 CameraSynks::DeadSynk(dead_synk) => dead_synk.send_packet(data).await,
28 }
29 }
30}