botcat_capoo/model/event/
primary.rs1use serde::{Deserialize, Serialize};
2
3use crate::model::event::{MessageEvent, MessageSentEvent, MetaEvent, NoticeEvent, RequestEvent};
4
5#[derive(Clone, Debug, Deserialize, Serialize)]
6#[serde(tag = "post_type", rename_all = "snake_case")]
7pub enum PostEvent {
8 Message(MessageEvent),
9 MessageSent(MessageSentEvent),
10 #[serde(rename = "meta_event")]
11 Meta(MetaEvent),
12 Notice(NoticeEvent),
13 Request(RequestEvent),
14}
15
16#[derive(Clone, Debug, Deserialize, Serialize)]
17pub struct BotEvent {
18 pub time: u64,
19 pub self_id: u64,
20 #[serde(flatten)]
21 pub post_type: PostEvent,
22}