traq_ws_bot/events/
common.rs1use serde::{Deserialize, Serialize};
2
3use super::macros::gp_struct;
4use super::{Time, Uuid};
5
6gp_struct!(
7 struct Base {
8 event_time: Time,
9 }
10
11 struct User {
12 id: Uuid,
13 name: Uuid,
14 display_name: String,
15 icon_id: Uuid,
16 bot: bool,
17 }
18
19 struct Channel {
20 id: Uuid,
21 name: String,
22 path: String,
23 parent_id: Uuid,
24 creator: User,
25 created_at: Time,
26 updated_at: Time,
27 }
28
29 struct Message {
30 id: Uuid,
31 user: User,
32 channel_id: Uuid,
33 text: String,
34 plain_text: String,
35 embedded: Vec<EmbeddedInfo>,
36 created_at: Time,
37 updated_at: Time,
38 }
39
40 struct DeletedMessage {
41 id: Uuid,
42 channel_id: Uuid,
43 }
44
45 struct DeletedDirectMessage {
46 id: Uuid,
47 user_id: Uuid,
48 channel_id: Uuid,
49 }
50
51 struct EmbeddedInfo {
52 raw: String,
53 #[serde(rename = "type")]
54 type_: String,
55 id: Uuid,
56 }
57
58 struct MessageStamp {
59 stamp_id: Uuid,
60 user_id: Uuid,
61 count: i64,
62 created_at: Time,
63 updated_at: Time,
64 }
65);