line_bot_messaging_api/entity/webhook/event/
mod.rs1use crate::webhook::account_link::LineWebhookEventAccountLink;
2use crate::webhook::beacon::LineWebhookEventBeacon;
3use crate::webhook::member_joined::LineWebhookEventMemberJoined;
4use crate::webhook::member_left::LineWebhookEventMemberLeft;
5use crate::webhook::message::LineWebhookEventMessage;
6use crate::webhook::postback::LineWebhookEventPostback;
7use crate::webhook::things::LineWebhookEventThings;
8use crate::webhook::unsend::LineWebhookEventUnSend;
9use crate::webhook::video_play_complete::LineWebhookEventVideoPlayComplete;
10use serde_derive::{Deserialize, Serialize};
11
12pub mod account_link;
13pub mod beacon;
14pub mod member_joined;
15pub mod member_left;
16pub mod message;
17pub mod postback;
18pub mod things;
19pub mod unsend;
20pub mod video_play_complete;
21
22#[derive(Debug, Deserialize, Serialize, Clone, Default)]
23#[serde(untagged)]
24pub enum LineWebhookEventObject {
25 Message(LineWebhookEventMessage),
26 UnSend(LineWebhookEventUnSend),
27 Follow,
28 UnFollow,
29 Join,
30 Leave,
31 MemberJoined(LineWebhookEventMemberJoined),
32 MemberLeft(LineWebhookEventMemberLeft),
33 Postback(LineWebhookEventPostback),
34 VideoPlayComplete(LineWebhookEventVideoPlayComplete),
35 Beacon(LineWebhookEventBeacon),
36 AccountLink(LineWebhookEventAccountLink),
37 Things(LineWebhookEventThings),
38 #[default]
39 None,
40}