vapi_client/models/
hook.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};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct Hook {
17    #[serde(rename = "on")]
18    pub on: On,
19    #[serde(rename = "do")]
20    pub r#do: Vec<models::SayHook>,
21}
22
23impl Hook {
24    pub fn new(on: On, r#do: Vec<models::SayHook>) -> Hook {
25        Hook { on, r#do }
26    }
27}
28///
29#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
30pub enum On {
31    #[serde(rename = "task.start")]
32    TaskPeriodStart,
33    #[serde(rename = "task.output.confirmation")]
34    TaskPeriodOutputPeriodConfirmation,
35    #[serde(rename = "task.delayed")]
36    TaskPeriodDelayed,
37}
38
39impl Default for On {
40    fn default() -> On {
41        Self::TaskPeriodStart
42    }
43}