Skip to main content

fcast_protocol/
v2.rs

1use std::collections::HashMap;
2
3use serde::{Deserialize, Serialize};
4use serde_with::skip_serializing_none;
5
6#[skip_serializing_none]
7#[derive(Debug, Clone, PartialEq, Deserialize, Serialize)]
8pub struct PlayMessage {
9    pub container: String,
10    pub url: Option<String>,
11    pub content: Option<String>,
12    pub time: Option<f64>,
13    pub speed: Option<f64>,
14    pub headers: Option<HashMap<String, String>>,
15}
16
17#[allow(dead_code)]
18#[derive(Debug, Clone, PartialEq, Deserialize, Serialize)]
19pub struct PlaybackUpdateMessage {
20    #[serde(rename = "generationTime")]
21    pub generation_time: u64,
22    pub time: f64,
23    pub duration: f64,
24    pub speed: f64,
25    pub state: crate::PlaybackState,
26}
27
28#[allow(dead_code)]
29#[derive(Debug, Clone, PartialEq, Deserialize, Serialize)]
30pub struct VolumeUpdateMessage {
31    #[serde(rename = "generationTime")]
32    pub generation_time: u64,
33    pub volume: f64, //(0-1)
34}