windmill_api/models/
new_websocket_trigger.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct NewWebsocketTrigger {
16 #[serde(rename = "path")]
17 pub path: String,
18 #[serde(rename = "script_path")]
19 pub script_path: String,
20 #[serde(rename = "is_flow")]
21 pub is_flow: bool,
22 #[serde(rename = "url")]
23 pub url: String,
24 #[serde(rename = "enabled", skip_serializing_if = "Option::is_none")]
25 pub enabled: Option<bool>,
26 #[serde(rename = "filters")]
27 pub filters: Vec<models::NewWebsocketTriggerFiltersInner>,
28 #[serde(rename = "initial_messages", skip_serializing_if = "Option::is_none")]
29 pub initial_messages: Option<Vec<models::WebsocketTriggerInitialMessage>>,
30 #[serde(rename = "url_runnable_args", skip_serializing_if = "Option::is_none")]
31 pub url_runnable_args: Option<std::collections::HashMap<String, serde_json::Value>>,
32 #[serde(rename = "can_return_message")]
33 pub can_return_message: bool,
34}
35
36impl NewWebsocketTrigger {
37 pub fn new(path: String, script_path: String, is_flow: bool, url: String, filters: Vec<models::NewWebsocketTriggerFiltersInner>, can_return_message: bool) -> NewWebsocketTrigger {
38 NewWebsocketTrigger {
39 path,
40 script_path,
41 is_flow,
42 url,
43 enabled: None,
44 filters,
45 initial_messages: None,
46 url_runnable_args: None,
47 can_return_message,
48 }
49 }
50}
51