google_cloudevents/google/events/firebase/firebasealerts/v1/
mod.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
// This file is @generated by prost-build.
/// Basic information of the Crashlytics issue
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CrashlyticsIssue {
    #[prost(string, tag = "1")]
    pub id: ::prost::alloc::string::String,
    #[prost(string, tag = "2")]
    pub title: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub subtitle: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub app_version: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CrashlyticsNewFatalIssuePayload {
    /// Basic information of the Crashlytics issue
    #[prost(message, optional, tag = "1")]
    pub issue: ::core::option::Option<CrashlyticsIssue>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CrashlyticsNewNonfatalIssuePayload {
    /// Basic information of the Crashlytics issue
    #[prost(message, optional, tag = "1")]
    pub issue: ::core::option::Option<CrashlyticsIssue>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CrashlyticsRegressionAlertPayload {
    /// The type of the Crashlytics issue, e.g. new fatal, new nonfatal, ANR
    #[prost(string, tag = "1")]
    pub r#type: ::prost::alloc::string::String,
    /// Basic information of the Crashlytics issue
    #[prost(message, optional, tag = "2")]
    pub issue: ::core::option::Option<CrashlyticsIssue>,
    /// The time that the Crashlytics issues was most recently resolved before it
    /// began to reoccur
    #[prost(message, optional, tag = "3")]
    pub resolve_time: ::core::option::Option<::prost_types::Timestamp>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CrashlyticsVelocityAlertPayload {
    /// Basic information of the Crashlytics issue
    #[prost(message, optional, tag = "1")]
    pub issue: ::core::option::Option<CrashlyticsIssue>,
    /// The time that the Crashlytics issue gets created
    #[prost(message, optional, tag = "2")]
    pub create_time: ::core::option::Option<::prost_types::Timestamp>,
    /// The number of user sessions for the given app version that had this
    /// specific crash issue in the time period used to trigger the velocity alert,
    /// which is currently 1h
    #[prost(int64, tag = "3")]
    pub crash_count: i64,
    /// The percentage of user sessions for the given app version that had this
    /// specific crash issue in the time period used to trigger the velocity alert,
    /// which is currently 1h
    #[prost(double, tag = "4")]
    pub crash_percentage: f64,
    /// The first app version where this issue was seen, and not necessarily the
    /// version that has triggered the alert
    #[prost(string, tag = "5")]
    pub first_version: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CrashlyticsStabilityDigestPayload {
    /// The date that the digest gets created, issues in the digest should
    /// have the same date as the digest date
    #[prost(message, optional, tag = "5")]
    pub digest_date: ::core::option::Option<super::super::super::super::r#type::Date>,
    /// A stability digest contains several trending Crashlytics issues
    #[prost(message, repeated, tag = "6")]
    pub trending_issues: ::prost::alloc::vec::Vec<
        crashlytics_stability_digest_payload::TrendingIssueDetails,
    >,
}
/// Nested message and enum types in `CrashlyticsStabilityDigestPayload`.
pub mod crashlytics_stability_digest_payload {
    #[derive(Clone, PartialEq, ::prost::Message)]
    pub struct TrendingIssueDetails {
        /// The type of the Crashlytics issue, e.g. new fatal, new nonfatal, ANR
        #[prost(string, tag = "1")]
        pub r#type: ::prost::alloc::string::String,
        /// Basic information of the Crashlytics issue
        #[prost(message, optional, tag = "2")]
        pub issue: ::core::option::Option<super::CrashlyticsIssue>,
        /// The number of crashes that occurred with the issue
        #[prost(int64, tag = "3")]
        pub event_count: i64,
        /// The number of distinct users that were affected by the issue
        #[prost(int64, tag = "4")]
        pub user_count: i64,
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CrashlyticsNewAnrIssuePayload {
    #[prost(message, optional, tag = "1")]
    pub issue: ::core::option::Option<CrashlyticsIssue>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CrashlyticsMissingSymbolsPayload {
    #[prost(string, tag = "1")]
    pub app_version: ::prost::alloc::string::String,
    #[prost(string, tag = "2")]
    pub uuid: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FireperfThresholdAlertPayload {
    /// Name of the trace or network request this alert is for (e.g.
    /// my_custom_trace, firebase.com/api/123)
    #[prost(string, tag = "1")]
    pub event_name: ::prost::alloc::string::String,
    /// The resource type this alert is for (i.e. trace, network request, screen
    /// rendering, etc.)
    #[prost(string, tag = "2")]
    pub event_type: ::prost::alloc::string::String,
    /// The metric type this alert is for (i.e. success rate, response time,
    /// duration, etc.)
    #[prost(string, tag = "3")]
    pub metric_type: ::prost::alloc::string::String,
    /// The number of events checked for this alert condition
    #[prost(int64, tag = "4")]
    pub num_samples: i64,
    /// The threshold value of the alert condition without units (e.g. "75", "2.1")
    #[prost(float, tag = "5")]
    pub threshold_value: f32,
    /// The unit for the alert threshold (e.g. "percent", "seconds")
    #[prost(string, tag = "6")]
    pub threshold_unit: ::prost::alloc::string::String,
    /// The percentile of the alert condition, can be 0 if percentile is not
    /// applicable to the alert condition; range: \[0, 100\]
    #[prost(int32, tag = "7")]
    pub condition_percentile: i32,
    /// The app version this alert was triggered for, can be empty if the alert is
    /// for a network request (because the alert was checked against data from all
    /// versions of app) or a web app (where the app is versionless)
    #[prost(string, tag = "8")]
    pub app_version: ::prost::alloc::string::String,
    /// The value that violated the alert condition (e.g. "76.5", "3")
    #[prost(float, tag = "9")]
    pub violation_value: f32,
    /// The unit for the violation value (e.g. "percent", "seconds")
    #[prost(string, tag = "10")]
    pub violation_unit: ::prost::alloc::string::String,
    /// The link to Fireconsole to investigate more into this alert
    #[prost(string, tag = "11")]
    pub investigate_uri: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AppDistroNewTesterIosDevicePayload {
    #[prost(string, tag = "1")]
    pub tester_name: ::prost::alloc::string::String,
    #[prost(string, tag = "2")]
    pub tester_email: ::prost::alloc::string::String,
    #[prost(string, tag = "3")]
    pub tester_device_model_name: ::prost::alloc::string::String,
    #[prost(string, tag = "4")]
    pub tester_device_identifier: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AppDistroInAppFeedbackPayload {
    /// Resource name. Format:
    /// projects/{project_number}/apps/{app_id}/releases/{release_id}/feedbackReports/{feedback_id}
    #[prost(string, tag = "1")]
    pub feedback_report: ::prost::alloc::string::String,
    /// Deep link back to the Firebase console.
    #[prost(string, tag = "8")]
    pub feedback_console_uri: ::prost::alloc::string::String,
    /// Name of the tester.
    #[prost(string, tag = "2")]
    pub tester_name: ::prost::alloc::string::String,
    /// Email address of the tester.
    #[prost(string, tag = "3")]
    pub tester_email: ::prost::alloc::string::String,
    /// Version consisting of `versionName` and `versionCode` for Android and
    /// `CFBundleShortVersionString` and `CFBundleVersion` for iOS.
    #[prost(string, tag = "9")]
    pub app_version: ::prost::alloc::string::String,
    /// Text entered by the tester.
    #[prost(string, tag = "6")]
    pub text: ::prost::alloc::string::String,
    /// URI to download screenshot.  This URI is fast expiring.
    #[prost(string, tag = "7")]
    pub screenshot_uri: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BillingPlanUpdatePayload {
    /// A Firebase plan
    #[prost(string, tag = "1")]
    pub billing_plan: ::prost::alloc::string::String,
    /// The email address of the person that triggered billing plan change
    #[prost(string, tag = "2")]
    pub principal_email: ::prost::alloc::string::String,
    /// The type of the notification, e.g. upgrade, downgrade
    #[prost(string, tag = "3")]
    pub notification_type: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BillingPlanAutomatedUpdatePayload {
    /// A Firebase plan
    #[prost(string, tag = "1")]
    pub billing_plan: ::prost::alloc::string::String,
    /// The type of the notification, e.g. upgrade, downgrade
    #[prost(string, tag = "2")]
    pub notification_type: ::prost::alloc::string::String,
}
/// The data within all Firebase Alerts.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AlertData {
    /// Time that the event has created
    #[prost(message, optional, tag = "1")]
    pub create_time: ::core::option::Option<::prost_types::Timestamp>,
    /// Time that the event has ended. Optional, only present for alertsthat are
    /// ongoing
    #[prost(message, optional, tag = "2")]
    pub end_time: ::core::option::Option<::prost_types::Timestamp>,
    /// Payload of the event, which includes the details of the specific alert.
    /// It's a map of keys of String type and values of various types
    #[prost(message, optional, tag = "3")]
    pub payload: ::core::option::Option<::prost_types::Struct>,
}
/// The CloudEvent raised when a alert has been published by Firebase Alerts.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AlertPublishedEvent {
    /// The data associated with the event.
    #[prost(message, optional, tag = "1")]
    pub data: ::core::option::Option<AlertData>,
}