Co-authored-by: Danny <[email protected]>
@ -309,6 +309,10 @@ class MessageType(Enum):
stage_raise_hand = 30
stage_topic = 31
guild_application_premium_subscription = 32
guild_incident_alert_mode_enabled = 36
guild_incident_alert_mode_disabled = 37
guild_incident_report_raid = 38
guild_incident_report_false_alarm = 39
class SpeakingState(Enum):
@ -2245,6 +2245,20 @@ class Message(PartialMessage, Hashable):
if self.type is MessageType.guild_application_premium_subscription:
return f'{self.author.name} upgraded {self.application.name if self.application else "a deleted application"} to premium for this server!'
if self.type is MessageType.guild_incident_alert_mode_enabled:
dt = utils.parse_time(self.content)
dt_content = utils.format_dt(dt)
return f'{self.author.name} enabled security actions until {dt_content}.'
if self.type is MessageType.guild_incident_alert_mode_disabled:
return f'{self.author.name} disabled security actions.'
if self.type is MessageType.guild_incident_report_raid:
return f'{self.author.name} reported a raid in {self.guild}.'
if self.type is MessageType.guild_incident_report_false_alarm:
return f'{self.author.name} reported a false alarm in {self.guild}.'
# Fallback for unknown message types
return self.content
@ -111,7 +111,40 @@ class RoleSubscriptionData(TypedDict):
MessageType = Literal[
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
14,
15,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
36,
37,
38,
39,
]
@ -1956,6 +1956,30 @@ of :class:`enum.Enum`.
A friend invite.
.. attribute:: guild_incident_alert_mode_enabled
The system message sent when security actions is enabled.
.. versionadded:: 2.4
.. attribute:: guild_incident_alert_mode_disabled
The system message sent when security actions is disabled.
.. attribute:: guild_incident_report_raid
The system message sent when a raid is reported.
.. attribute:: guild_incident_report_false_alarm
The system message sent when a false alarm is reported.
.. class:: UserFlags
Represents Discord User flags.