Skip to main content

botcat_capoo/model/event/
primary.rs

1use 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}