diff --git a/models/events/base.py b/models/events/base.py index 29f46df..6a0ac3d 100644 --- a/models/events/base.py +++ b/models/events/base.py @@ -30,7 +30,7 @@ class EventType: """消息发送事件 (message_sent): 机器人自己发送消息的上报。""" -@dataclass +@dataclass(kw_only=True) class OneBotEvent(ABC): """ OneBot v11 事件的抽象基类。 diff --git a/models/events/message.py b/models/events/message.py index e521d57..d430426 100644 --- a/models/events/message.py +++ b/models/events/message.py @@ -34,7 +34,7 @@ MESSAGE_EVENT_OP = Permission.OP MESSAGE_EVENT_USER = Permission.USER -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class MessageEvent(OneBotEvent): """ 消息事件基类 @@ -87,7 +87,7 @@ class MessageEvent(OneBotEvent): raise NotImplementedError("reply method must be implemented by subclasses") -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class PrivateMessageEvent(MessageEvent): """ 私聊消息事件 @@ -105,7 +105,7 @@ class PrivateMessageEvent(MessageEvent): ) -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class GroupMessageEvent(MessageEvent): """ 群聊消息事件 diff --git a/models/events/meta.py b/models/events/meta.py index e3593ce..2135cbe 100644 --- a/models/events/meta.py +++ b/models/events/meta.py @@ -26,7 +26,7 @@ class LifeCycleSubType: CONNECT: Final[str] = 'connect' # 连接 -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class MetaEvent(OneBotEvent): """ 元事件基类 @@ -40,7 +40,7 @@ class MetaEvent(OneBotEvent): return EventType.META -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class HeartbeatEvent(MetaEvent): """ 心跳事件,用于确认连接状态 @@ -55,7 +55,7 @@ class HeartbeatEvent(MetaEvent): """心跳间隔时间(ms)""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class LifeCycleEvent(MetaEvent): """ 生命周期事件,用于通知框架生命周期变化 diff --git a/models/events/notice.py b/models/events/notice.py index 9376b2d..3e51f1e 100644 --- a/models/events/notice.py +++ b/models/events/notice.py @@ -7,7 +7,7 @@ from dataclasses import dataclass, field from .base import OneBotEvent, EventType -@dataclass +@dataclass(kw_only=True) class NoticeEvent(OneBotEvent): """ 通知事件基类 @@ -21,7 +21,7 @@ class NoticeEvent(OneBotEvent): return EventType.NOTICE -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class FriendAddNoticeEvent(NoticeEvent): """ 好友添加通知 @@ -30,7 +30,7 @@ class FriendAddNoticeEvent(NoticeEvent): """新好友 QQ 号""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class FriendRecallNoticeEvent(NoticeEvent): """ 好友消息撤回通知 @@ -42,7 +42,7 @@ class FriendRecallNoticeEvent(NoticeEvent): """被撤回的消息 ID""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class GroupNoticeEvent(NoticeEvent): """ 群组通知事件基类 @@ -54,7 +54,7 @@ class GroupNoticeEvent(NoticeEvent): """用户 QQ 号""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class GroupRecallNoticeEvent(GroupNoticeEvent): """ 群消息撤回通知 @@ -66,7 +66,7 @@ class GroupRecallNoticeEvent(GroupNoticeEvent): """被撤回的消息 ID""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class GroupIncreaseNoticeEvent(GroupNoticeEvent): """ 群成员增加通知 @@ -82,7 +82,7 @@ class GroupIncreaseNoticeEvent(GroupNoticeEvent): """ -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class GroupDecreaseNoticeEvent(GroupNoticeEvent): """ 群成员减少通知 @@ -100,7 +100,7 @@ class GroupDecreaseNoticeEvent(GroupNoticeEvent): """ -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class GroupAdminNoticeEvent(GroupNoticeEvent): """ 群管理员变动通知 @@ -113,7 +113,7 @@ class GroupAdminNoticeEvent(GroupNoticeEvent): """ -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class GroupBanNoticeEvent(GroupNoticeEvent): """ 群禁言通知 @@ -150,7 +150,7 @@ class GroupUploadFile: """文件总线 ID""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class GroupUploadNoticeEvent(GroupNoticeEvent): """ 群文件上传通知 @@ -159,7 +159,7 @@ class GroupUploadNoticeEvent(GroupNoticeEvent): """文件信息""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class NotifyNoticeEvent(NoticeEvent): """ 系统通知事件基类 (notify) @@ -175,7 +175,7 @@ class NotifyNoticeEvent(NoticeEvent): """发送者 QQ 号""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class PokeNotifyEvent(NotifyNoticeEvent): """ 戳一戳通知 @@ -187,7 +187,7 @@ class PokeNotifyEvent(NotifyNoticeEvent): """群号 (如果是群内戳一戳)""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class LuckyKingNotifyEvent(NotifyNoticeEvent): """ 群红包运气王通知 diff --git a/models/events/request.py b/models/events/request.py index 41ea580..c7ce307 100644 --- a/models/events/request.py +++ b/models/events/request.py @@ -7,7 +7,7 @@ from dataclasses import dataclass from .base import OneBotEvent, EventType -@dataclass +@dataclass(kw_only=True) class RequestEvent(OneBotEvent): """ 请求事件基类 @@ -21,7 +21,7 @@ class RequestEvent(OneBotEvent): return EventType.REQUEST -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class FriendRequestEvent(RequestEvent): """ 加好友请求事件 @@ -36,7 +36,7 @@ class FriendRequestEvent(RequestEvent): """请求 flag,在调用处理请求的 API 时需要传入此 flag""" -@dataclass(slots=True) +@dataclass(slots=True, kw_only=True) class GroupRequestEvent(RequestEvent): """ 加群请求/邀请事件