# WSS 消息体 v2.9.3
WS 支持监听的事件类型可参考事件订阅 intents。
GUILDS (1 << 0)
- GUILD_CREATE // 当机器人加入新guild时
- GUILD_UPDATE // 当guild资料发生变更时
- GUILD_DELETE // 当机器人退出guild时
- CHANNEL_CREATE // 当channel被创建时
- CHANNEL_UPDATE // 当channel被更新时
- CHANNEL_DELETE // 当channel被删除时
GUILD_MEMBERS (1 << 1)
- GUILD_MEMBER_ADD // 当成员加入时
- GUILD_MEMBER_UPDATE // 当成员资料变更时
- GUILD_MEMBER_REMOVE // 当成员被移除时
GUILD_MESSAGES (1 << 9) // 消息事件,仅 *私域* 机器人能够设置此 intents。
- MESSAGE_CREATE // 发送消息事件,代表频道内的全部消息,而不只是 at 机器人的消息。内容与 AT_MESSAGE_CREATE 相同
- MESSAGE_DELETE // 删除(撤回)消息事件
GUILD_MESSAGE_REACTIONS (1 << 10)
- MESSAGE_REACTION_ADD // 为消息添加表情表态
- MESSAGE_REACTION_REMOVE // 为消息删除表情表态
DIRECT_MESSAGE (1 << 12)
- DIRECT_MESSAGE_CREATE // 当收到用户发给机器人的私信消息时
- DIRECT_MESSAGE_DELETE // 删除(撤回)消息事件
INTERACTION (1 << 26)
- INTERACTION_CREATE // 互动事件创建时
MESSAGE_AUDIT (1 << 27)
- MESSAGE_AUDIT_PASS // 消息审核通过
- MESSAGE_AUDIT_REJECT // 消息审核不通过
FORUMS_EVENT (1 << 28) // 论坛事件,仅 *私域* 机器人能够设置此 intents。
- FORUM_THREAD_CREATE // 当用户创建主题时
- FORUM_THREAD_UPDATE // 当用户更新主题时
- FORUM_THREAD_DELETE // 当用户删除主题时
- FORUM_POST_CREATE // 当用户创建帖子时
- FORUM_POST_DELETE // 当用户删除帖子时
- FORUM_REPLY_CREATE // 当用户回复评论时
- FORUM_REPLY_DELETE // 当用户删除评论时
- FORUM_PUBLISH_AUDIT_RESULT // 当用户发表审核通过时
AUDIO_ACTION (1 << 29)
- AUDIO_START // 音频开始播放时
- AUDIO_FINISH // 音频播放结束时
- AUDIO_ON_MIC // 上麦时
- AUDIO_OFF_MIC // 下麦时
PUBLIC_GUILD_MESSAGES (1 << 30) // 消息事件,此为公域的消息事件
- AT_MESSAGE_CREATE // 当收到@机器人的消息时
- PUBLIC_MESSAGE_DELETE // 当频道的消息被删除时
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# 使用示例
# 创建 WS 实例并监听消息
import { createWebsocket } from 'qq-guild-bot';
const ws = createWebsocket(testConfigWs);
ws.on('READY', data => {
console.log('[READY] 事件接收 :', data);
});
ws.on('ERROR', data => {
console.log('[ERROR] 事件接收 :', data);
});
ws.on('GUILDS', data => {
console.log('[GUILDS] 事件接收 :', data);
});
ws.on('GUILD_MEMBERS', data => {
console.log('[GUILD_MEMBERS] 事件接收 :', data);
});
ws.on('GUILD_MESSAGES', data => {
console.log('[GUILD_MESSAGES] 事件接收 :', data);
});
ws.on('GUILD_MESSAGE_REACTIONS', data => {
console.log('[GUILD_MESSAGE_REACTIONS] 事件接收 :', data);
});
ws.on('DIRECT_MESSAGE', data => {
console.log('[DIRECT_MESSAGE] 事件接收 :', data);
});
ws.on('INTERACTION',data => {
console.log('[INTERACTION] 事件接收 :', data);
});
ws.on('MESSAGE_AUDIT', data => {
console.log('[MESSAGE_AUDIT] 事件接收 :', data);
});
ws.on('FORUMS_EVENT', data => {
console.log('[FORUMS_EVENT] 事件接收 :', data);
});
ws.on('AUDIO_ACTION', data => {
console.log('[AUDIO_ACTION] 事件接收 :', data);
});
ws.on('PUBLIC_GUILD_MESSAGES', data => {
console.log('[PUBLIC_GUILD_MESSAGES] 事件接收 :', data);
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# 接收到的通知示例
以“创建子频道”为例,通过 client API 创建一个子频道,我们将在GUILDS
事件中拿到如下结果:
{
eventType: 'CHANNEL_CREATE',
eventId: 'xxxxx',
msg: {
guild_id: 'xxxxxx',
id: 'xxxxxx',
name: 'test_creation',
op_user_id: 'xxxxxx',
owner_id: 'xxxxxx',
sub_type: 0,
type: 0
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
其中eventType
值类型可参考事件类型。