use crate::realtime::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Info {
#[serde(rename = "code", skip_serializing_if = "Option::is_none")]
pub code: Option<i32>,
#[serde(rename = "message")]
pub message: Message,
#[serde(rename = "quality", skip_serializing_if = "Option::is_none")]
pub quality: Option<String>,
#[serde(rename = "reason")]
pub reason: String,
#[serde(rename = "seq_no", skip_serializing_if = "Option::is_none")]
pub seq_no: Option<i32>,
#[serde(rename = "type")]
pub type_value: Type,
}
impl Info {
pub fn new(message: Message, reason: String, type_value: Type) -> Info {
Info {
code: None,
message,
quality: None,
reason,
seq_no: None,
type_value,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Message {
#[serde(rename = "Info")]
Info,
}
impl Default for Message {
fn default() -> Message {
Self::Info
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Type {
#[serde(rename = "recognition_quality")]
RecognitionQuality,
#[serde(rename = "model_redirect")]
ModelRedirect,
#[serde(rename = "deprecated")]
Deprecated,
}
impl Default for Type {
fn default() -> Type {
Self::RecognitionQuality
}
}