Skip to main content

onesignal_rust_api/models/
subscription.rs

1/*
2 * OneSignal
3 *
4 * A powerful way to send personalized messages at scale and build effective customer engagement strategies. Learn more at onesignal.com
5 *
6 * Contact: devrel@onesignal.com
7 * Generated by: https://openapi-generator.tech
8 */
9
10
11
12
13#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct Subscription {
15    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
16    pub id: Option<String>,
17    #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
18    pub _type: Option<TypeType>,
19    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
20    pub token: Option<String>,
21    #[serde(rename = "enabled", skip_serializing_if = "Option::is_none")]
22    pub enabled: Option<bool>,
23    #[serde(rename = "notification_types", skip_serializing_if = "Option::is_none")]
24    pub notification_types: Option<i32>,
25    #[serde(rename = "session_time", skip_serializing_if = "Option::is_none")]
26    pub session_time: Option<i32>,
27    #[serde(rename = "session_count", skip_serializing_if = "Option::is_none")]
28    pub session_count: Option<i32>,
29    #[serde(rename = "sdk", skip_serializing_if = "Option::is_none")]
30    pub sdk: Option<String>,
31    #[serde(rename = "device_model", skip_serializing_if = "Option::is_none")]
32    pub device_model: Option<String>,
33    #[serde(rename = "device_os", skip_serializing_if = "Option::is_none")]
34    pub device_os: Option<String>,
35    #[serde(rename = "rooted", skip_serializing_if = "Option::is_none")]
36    pub rooted: Option<bool>,
37    #[serde(rename = "test_type", skip_serializing_if = "Option::is_none")]
38    pub test_type: Option<i32>,
39    #[serde(rename = "app_version", skip_serializing_if = "Option::is_none")]
40    pub app_version: Option<String>,
41    #[serde(rename = "net_type", skip_serializing_if = "Option::is_none")]
42    pub net_type: Option<i32>,
43    #[serde(rename = "carrier", skip_serializing_if = "Option::is_none")]
44    pub carrier: Option<String>,
45    #[serde(rename = "web_auth", skip_serializing_if = "Option::is_none")]
46    pub web_auth: Option<String>,
47    #[serde(rename = "web_p256", skip_serializing_if = "Option::is_none")]
48    pub web_p256: Option<String>,
49}
50
51impl Subscription {
52    pub fn new() -> Subscription {
53        Subscription {
54            id: None,
55            _type: None,
56            token: None,
57            enabled: None,
58            notification_types: None,
59            session_time: None,
60            session_count: None,
61            sdk: None,
62            device_model: None,
63            device_os: None,
64            rooted: None,
65            test_type: None,
66            app_version: None,
67            net_type: None,
68            carrier: None,
69            web_auth: None,
70            web_p256: None,
71        }
72    }
73}
74
75/// 
76#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
77pub enum TypeType {
78    #[serde(rename = "iOSPush")]
79    IOSPush,
80    #[serde(rename = "AndroidPush")]
81    AndroidPush,
82    #[serde(rename = "FireOSPush")]
83    FireOSPush,
84    #[serde(rename = "ChromeExtensionPush")]
85    ChromeExtensionPush,
86    #[serde(rename = "ChromePush")]
87    ChromePush,
88    #[serde(rename = "WindowsPush")]
89    WindowsPush,
90    #[serde(rename = "SafariLegacyPush")]
91    SafariLegacyPush,
92    #[serde(rename = "FirefoxPush")]
93    FirefoxPush,
94    #[serde(rename = "macOSPush")]
95    MacOSPush,
96    #[serde(rename = "HuaweiPush")]
97    HuaweiPush,
98    #[serde(rename = "SafariPush")]
99    SafariPush,
100    #[serde(rename = "Email")]
101    Email,
102    #[serde(rename = "SMS")]
103    SMS,
104}
105
106impl Default for TypeType {
107    fn default() -> TypeType {
108        Self::IOSPush
109    }
110}
111