vapi_client/models/
say.rs

1/*
2 * Vapi API
3 *
4 * API for building voice assistants
5 *
6 * The version of the OpenAPI document: 1.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12use utoipa::OpenApi;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, OpenApi)]
18pub struct Say {
19    #[serde(rename = "type")]
20    pub r#type: Type,
21    #[serde(rename = "exact", skip_serializing_if = "Option::is_none")]
22    pub exact: Option<String>,
23    #[serde(rename = "prompt", skip_serializing_if = "Option::is_none")]
24    pub prompt: Option<String>,
25    #[serde(rename = "name")]
26    pub name: String,
27    /// This is for metadata you want to store on the task.
28    #[serde(rename = "metadata", skip_serializing_if = "Option::is_none")]
29    pub metadata: Option<serde_json::Value>,
30}
31
32impl Say {
33    pub fn new(r#type: Type, name: String) -> Say {
34        Say {
35            r#type,
36            exact: None,
37            prompt: None,
38            name,
39            metadata: None,
40        }
41    }
42}
43///
44#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, OpenApi)]
45pub enum Type {
46    #[serde(rename = "say")]
47    Say,
48}
49
50impl Default for Type {
51    fn default() -> Type {
52        Self::Say
53    }
54}