webrtc_signal_server/
lib.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Clone, Debug, Deserialize, Serialize)]
4pub struct SessionInfo {
5 pub session_id: String,
6 pub total: usize,
7 pub threshold: usize,
8 pub participants: Vec<String>,
9}
10
11#[derive(Debug, Deserialize, Serialize)]
12#[serde(tag = "type", rename_all = "snake_case")]
13pub enum ServerMsg {
14 Peers {
15 peers: Vec<String>,
16 },
17 Relay {
18 from: String,
19 data: serde_json::Value,
20 },
21 Error {
22 error: String,
23 },
24}
25
26#[derive(Debug, Deserialize, Serialize)]
27#[serde(tag = "type", rename_all = "snake_case")]
28pub enum ClientMsg {
29 Register { peer_id: String },
30 ListPeers,
31 Relay { to: String, data: serde_json::Value },
32}