mirror of
https://github.com/nonebot/nonebot2.git
synced 2025-07-29 17:27:41 +00:00
🚧 update messages
This commit is contained in:
@ -237,10 +237,18 @@ class CQHTTPEvent(Event):
|
||||
def get_plaintext(self) -> str:
|
||||
raise ValueError("Event has no message!")
|
||||
|
||||
@overrides(Event)
|
||||
def get_user_id(self) -> str:
|
||||
raise ValueError("Event has no message!")
|
||||
|
||||
@overrides(Event)
|
||||
def get_session_id(self) -> str:
|
||||
raise ValueError("Event has no message!")
|
||||
|
||||
@overrides(Event)
|
||||
def is_tome(self) -> bool:
|
||||
return False
|
||||
|
||||
|
||||
# Models
|
||||
class Sender(BaseModel):
|
||||
@ -326,10 +334,18 @@ class MessageEvent(CQHTTPEvent):
|
||||
def get_plaintext(self) -> str:
|
||||
return self.message.extract_plain_text()
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def get_user_id(self) -> str:
|
||||
return str(self.user_id)
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def get_session_id(self) -> str:
|
||||
return str(self.user_id)
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def is_tome(self) -> bool:
|
||||
return self.to_me
|
||||
|
||||
|
||||
class PrivateMessageEvent(MessageEvent):
|
||||
__event__ = "message.private"
|
||||
@ -340,7 +356,7 @@ class PrivateMessageEvent(MessageEvent):
|
||||
return (f'Message {self.message_id} from {self.user_id} "' + "".join(
|
||||
map(
|
||||
lambda x: escape_tag(str(x))
|
||||
if x.type == "text" else f"<le>{escape_tag(str(x))}</le>",
|
||||
if x.is_text() else f"<le>{escape_tag(str(x))}</le>",
|
||||
self.message)) + '"')
|
||||
|
||||
|
||||
@ -357,7 +373,7 @@ class GroupMessageEvent(MessageEvent):
|
||||
+ "".join(
|
||||
map(
|
||||
lambda x: escape_tag(str(x))
|
||||
if x.type == "text" else f"<le>{escape_tag(str(x))}</le>",
|
||||
if x.is_text() else f"<le>{escape_tag(str(x))}</le>",
|
||||
self.message)) + '"')
|
||||
|
||||
|
||||
@ -389,6 +405,10 @@ class GroupAdminNoticeEvent(NoticeEvent):
|
||||
user_id: int
|
||||
group_id: int
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def is_tome(self) -> bool:
|
||||
return self.user_id == self.self_id
|
||||
|
||||
|
||||
class GroupDecreaseNoticeEvent(NoticeEvent):
|
||||
__event__ = "notice.group_decrease"
|
||||
@ -398,6 +418,10 @@ class GroupDecreaseNoticeEvent(NoticeEvent):
|
||||
group_id: int
|
||||
operator_id: int
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def is_tome(self) -> bool:
|
||||
return self.user_id == self.self_id
|
||||
|
||||
|
||||
class GroupIncreaseNoticeEvent(NoticeEvent):
|
||||
__event__ = "notice.group_increase"
|
||||
@ -407,6 +431,10 @@ class GroupIncreaseNoticeEvent(NoticeEvent):
|
||||
group_id: int
|
||||
operator_id: int
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def is_tome(self) -> bool:
|
||||
return self.user_id == self.self_id
|
||||
|
||||
|
||||
class GroupBanNoticeEvent(NoticeEvent):
|
||||
__event__ = "notice.group_ban"
|
||||
@ -417,6 +445,10 @@ class GroupBanNoticeEvent(NoticeEvent):
|
||||
operator_id: int
|
||||
duration: int
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def is_tome(self) -> bool:
|
||||
return self.user_id == self.self_id
|
||||
|
||||
|
||||
class FriendAddNoticeEvent(NoticeEvent):
|
||||
__event__ = "notice.friend_add"
|
||||
@ -432,6 +464,10 @@ class GroupRecallNoticeEvent(NoticeEvent):
|
||||
operator_id: int
|
||||
message_id: int
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def is_tome(self) -> bool:
|
||||
return self.user_id == self.self_id
|
||||
|
||||
|
||||
class FriendRecallNoticeEvent(NoticeEvent):
|
||||
__event__ = "notice.friend_recall"
|
||||
@ -453,18 +489,30 @@ class PokeNotifyEvent(NotifyEvent):
|
||||
sub_type: Literal["poke"]
|
||||
target_id: int
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def is_tome(self) -> bool:
|
||||
return self.target_id == self.self_id
|
||||
|
||||
|
||||
class LuckyKingNotifyEvent(NotifyEvent):
|
||||
__event__ = "notice.notify.lucky_king"
|
||||
sub_type: Literal["lucky_king"]
|
||||
target_id: int
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def is_tome(self) -> bool:
|
||||
return self.target_id == self.self_id
|
||||
|
||||
|
||||
class HonorNotifyEvent(NotifyEvent):
|
||||
__event__ = "notice.notify.honor"
|
||||
sub_type: Literal["honor"]
|
||||
honor_type: str
|
||||
|
||||
@overrides(CQHTTPEvent)
|
||||
def is_tome(self) -> bool:
|
||||
return self.user_id == self.self_id
|
||||
|
||||
|
||||
# Request Events
|
||||
class RequestEvent(CQHTTPEvent):
|
||||
|
Reference in New Issue
Block a user