@alemonjs/qq-bot 2.1.0-alpha.8 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -45
- package/lib/config.d.ts +8 -0
- package/lib/config.js +20 -0
- package/lib/desktop.d.ts +1 -3
- package/lib/desktop.js +3 -12
- package/lib/hook.d.ts +36 -9
- package/lib/hook.js +21 -19
- package/lib/index.d.ts +5 -7
- package/lib/index.js +11 -21
- package/lib/index.webhook.d.ts +1 -0
- package/lib/index.webhook.js +5 -4
- package/lib/index.websoket.d.ts +1 -0
- package/lib/index.websoket.js +31 -23
- package/lib/message/AT_MESSAGE_CREATE.d.ts +35 -0
- package/lib/message/AT_MESSAGE_CREATE.js +1 -0
- package/lib/message/CHANNEL_CREATE.d.ts +15 -0
- package/lib/message/CHANNEL_CREATE.js +1 -0
- package/lib/message/CHANNEL_DELETE.d.ts +15 -0
- package/lib/message/CHANNEL_DELETE.js +1 -0
- package/lib/message/CHANNEL_UPDATE.d.ts +15 -0
- package/lib/message/CHANNEL_UPDATE.js +1 -0
- package/lib/message/DIRECT_MESSAGE_CREATE.d.ts +29 -0
- package/lib/message/DIRECT_MESSAGE_CREATE.js +1 -0
- package/lib/message/DIRECT_MESSAGE_DELETE.d.ts +17 -0
- package/lib/message/DIRECT_MESSAGE_DELETE.js +1 -0
- package/lib/message/ERROR.d.ts +1 -0
- package/lib/message/ERROR.js +1 -0
- package/lib/message/GUILD_CREATE.d.ts +15 -0
- package/lib/message/GUILD_CREATE.js +1 -0
- package/lib/message/GUILD_DELETE.d.ts +15 -0
- package/lib/message/GUILD_DELETE.js +1 -0
- package/lib/message/GUILD_MEMBER_ADD.d.ts +14 -0
- package/lib/message/GUILD_MEMBER_ADD.js +1 -0
- package/lib/message/GUILD_MEMBER_REMOVE.d.ts +14 -0
- package/lib/message/GUILD_MEMBER_REMOVE.js +1 -0
- package/lib/message/GUILD_MEMBER_UPDATE.d.ts +14 -0
- package/lib/message/GUILD_MEMBER_UPDATE.js +1 -0
- package/lib/message/GUILD_UPDATE.d.ts +15 -0
- package/lib/message/GUILD_UPDATE.js +1 -0
- package/lib/message/INTERACTION_CREATE.d.ts +53 -0
- package/lib/message/INTERACTION_CREATE.js +1 -0
- package/lib/message/MESSAGE_CREATE.d.ts +1 -0
- package/lib/message/MESSAGE_CREATE.js +1 -0
- package/lib/message/MESSAGE_DELETE.d.ts +1 -0
- package/lib/message/MESSAGE_DELETE.js +1 -0
- package/lib/message/MESSAGE_REACTION_ADD.d.ts +13 -0
- package/lib/message/MESSAGE_REACTION_ADD.js +1 -0
- package/lib/message/MESSAGE_REACTION_REMOVE.d.ts +13 -0
- package/lib/message/MESSAGE_REACTION_REMOVE.js +1 -0
- package/lib/message/PUBLIC_MESSAGE_DELETE.d.ts +15 -0
- package/lib/message/PUBLIC_MESSAGE_DELETE.js +1 -0
- package/lib/message/READY.d.ts +6 -0
- package/lib/message/READY.js +1 -0
- package/lib/message/group/C2C_MESSAGE_CREATE.d.ts +9 -0
- package/lib/message/group/C2C_MESSAGE_CREATE.js +1 -0
- package/lib/message/group/C2C_MSG_RECEIVE.d.ts +4 -0
- package/lib/message/group/C2C_MSG_RECEIVE.js +1 -0
- package/lib/message/group/C2C_MSG_REJECT.d.ts +4 -0
- package/lib/message/group/C2C_MSG_REJECT.js +1 -0
- package/lib/message/group/FRIEND_ADD.d.ts +4 -0
- package/lib/message/group/FRIEND_ADD.js +1 -0
- package/lib/message/group/FRIEND_DEL.d.ts +4 -0
- package/lib/message/group/FRIEND_DEL.js +1 -0
- package/lib/message/group/GROUP_ADD_ROBOT.d.ts +5 -0
- package/lib/message/group/GROUP_ADD_ROBOT.js +1 -0
- package/lib/message/group/GROUP_AT_MESSAGE_CREATE.d.ts +11 -0
- package/lib/message/group/GROUP_AT_MESSAGE_CREATE.js +1 -0
- package/lib/message/group/GROUP_DEL_ROBOT.d.ts +5 -0
- package/lib/message/group/GROUP_DEL_ROBOT.js +1 -0
- package/lib/message/group/GROUP_MSG_RECEIVE.d.ts +5 -0
- package/lib/message/group/GROUP_MSG_RECEIVE.js +1 -0
- package/lib/message/group/GROUP_MSG_REJECT.d.ts +5 -0
- package/lib/message/group/GROUP_MSG_REJECT.js +1 -0
- package/lib/register.d.ts +2 -3
- package/lib/register.js +427 -252
- package/lib/sdk/api.d.ts +10 -567
- package/lib/sdk/api.js +234 -796
- package/lib/sdk/client.webhook.d.ts +9 -0
- package/lib/sdk/{client.js → client.webhook.js} +18 -55
- package/lib/sdk/client.websoket.d.ts +9 -0
- package/lib/sdk/client.websoket.js +52 -97
- package/lib/sdk/config.d.ts +1 -0
- package/lib/sdk/instance.d.ts +3 -0
- package/lib/sdk/instance.js +93 -0
- package/lib/sdk/intents.d.ts +3 -0
- package/lib/sdk/intents.js +25 -90
- package/lib/sdk/message.d.ts +4 -0
- package/lib/sdk/message.group.d.ts +24 -0
- package/lib/sdk/message.group.js +1 -0
- package/lib/sdk/message.guild.d.ts +38 -0
- package/lib/sdk/message.guild.js +1 -0
- package/lib/sdk/message.js +1 -0
- package/lib/sdk/message.public.d.ts +6 -0
- package/lib/sdk/message.public.js +1 -0
- package/lib/sdk/typing.d.ts +22 -11
- package/lib/sdk/typing.js +1 -0
- package/lib/sdk/webhook.secret.d.ts +14 -0
- package/lib/sdk/webhook.secret.js +6 -21
- package/lib/sends.d.ts +29 -0
- package/lib/sends.js +326 -745
- package/lib/utils.d.ts +1 -0
- package/lib/utils.js +7 -12
- package/package.json +9 -5
- package/lib/index.group.js +0 -19
- package/lib/index.guild.js +0 -36
- package/lib/sdk/client.websoket.group.js +0 -221
- package/lib/sdk/client.websoket.guild.js +0 -205
- package/lib/sdk/counter.js +0 -19
- package/lib/sdk/from.js +0 -44
package/lib/sdk/api.js
CHANGED
|
@@ -1,198 +1,114 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import { config } from './config.js';
|
|
3
3
|
import FormData from 'form-data';
|
|
4
|
-
import { createPicFrom } from '
|
|
4
|
+
import { createPicFrom } from 'alemonjs/utils';
|
|
5
|
+
import { createAxiosInstance } from './instance.js';
|
|
5
6
|
|
|
6
7
|
const BOTS_API_RUL = 'https://bots.qq.com';
|
|
7
8
|
const API_URL_SANDBOX = 'https://sandbox.api.sgroup.qq.com';
|
|
8
9
|
const API_URL = 'https://api.sgroup.qq.com';
|
|
9
10
|
const msgMap = new Map();
|
|
10
11
|
class QQBotAPI {
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* 得到鉴权
|
|
14
|
-
* @param app_id
|
|
15
|
-
* @param clientSecret
|
|
16
|
-
* @returns
|
|
17
|
-
*/
|
|
18
|
-
getAuthentication(app_id, clientSecret) {
|
|
19
|
-
return axios.post(`${BOTS_API_RUL}/app/getAppAccessToken`, {
|
|
20
|
-
appId: app_id,
|
|
21
|
-
clientSecret: clientSecret
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* group
|
|
26
|
-
* @param config
|
|
27
|
-
* @returns
|
|
28
|
-
*/
|
|
29
|
-
groupService(options) {
|
|
12
|
+
getAuthentication() {
|
|
30
13
|
const app_id = config.get('app_id');
|
|
31
|
-
|
|
32
|
-
const
|
|
14
|
+
const secret = config.get('secret');
|
|
15
|
+
const baseUrlAppAccessToken = config.get('base_url_app_access_token');
|
|
16
|
+
const params = {
|
|
17
|
+
url: '/app/getAppAccessToken'
|
|
18
|
+
};
|
|
19
|
+
if (baseUrlAppAccessToken) {
|
|
20
|
+
params.baseURL = baseUrlAppAccessToken;
|
|
21
|
+
}
|
|
33
22
|
const service = axios.create({
|
|
34
|
-
baseURL:
|
|
35
|
-
timeout: 20000
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
23
|
+
baseURL: BOTS_API_RUL,
|
|
24
|
+
timeout: 20000
|
|
25
|
+
});
|
|
26
|
+
return createAxiosInstance(service, {
|
|
27
|
+
...params,
|
|
28
|
+
method: 'post',
|
|
29
|
+
data: {
|
|
30
|
+
appId: `${app_id}`,
|
|
31
|
+
clientSecret: `${secret}`
|
|
39
32
|
}
|
|
40
33
|
});
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* guild
|
|
45
|
-
* @param opstion
|
|
46
|
-
* @returns
|
|
47
|
-
*/
|
|
48
|
-
guildServer(opstion) {
|
|
34
|
+
}
|
|
35
|
+
groupService(options) {
|
|
49
36
|
const app_id = config.get('app_id');
|
|
50
|
-
const token = config.get('
|
|
37
|
+
const token = config.get('access_token');
|
|
51
38
|
const sandbox = config.get('sandbox');
|
|
52
39
|
const service = axios.create({
|
|
53
40
|
baseURL: sandbox ? API_URL_SANDBOX : API_URL,
|
|
54
41
|
timeout: 20000,
|
|
55
42
|
headers: {
|
|
56
|
-
|
|
43
|
+
'X-Union-Appid': app_id,
|
|
44
|
+
Authorization: `QQBot ${token}`
|
|
57
45
|
}
|
|
58
46
|
});
|
|
59
|
-
return service
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
}
|
|
72
|
-
else if (mode === 'guild') {
|
|
73
|
-
return this.guildServer({
|
|
74
|
-
url: '/gateway'
|
|
75
|
-
}).then(res => res?.data);
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
// 默认group
|
|
79
|
-
return this.groupService({
|
|
80
|
-
url: '/gateway'
|
|
81
|
-
}).then(res => res?.data);
|
|
47
|
+
return createAxiosInstance(service, options);
|
|
48
|
+
}
|
|
49
|
+
guildServer(options) {
|
|
50
|
+
return this.groupService(options);
|
|
51
|
+
}
|
|
52
|
+
gateway() {
|
|
53
|
+
const baseUrlGateway = config.get('base_url_gateway');
|
|
54
|
+
const params = {
|
|
55
|
+
url: '/gateway'
|
|
56
|
+
};
|
|
57
|
+
if (baseUrlGateway) {
|
|
58
|
+
params.baseURL = baseUrlGateway;
|
|
82
59
|
}
|
|
60
|
+
return this.groupService(params);
|
|
83
61
|
}
|
|
84
|
-
|
|
85
|
-
* 发送私聊消息
|
|
86
|
-
* @param openid
|
|
87
|
-
* @param content
|
|
88
|
-
* @param msg_id
|
|
89
|
-
* @returns
|
|
90
|
-
* 0 文本 1 图文 2 md 3 ark 4 embed
|
|
91
|
-
*/
|
|
92
|
-
async usersOpenMessages(openid, data) {
|
|
62
|
+
usersOpenMessages(openid, data) {
|
|
93
63
|
const db = {
|
|
94
|
-
...(data.event_id
|
|
95
|
-
|
|
96
|
-
|
|
64
|
+
...(data.event_id
|
|
65
|
+
? { event_id: data.event_id }
|
|
66
|
+
: {
|
|
67
|
+
msg_seq: this.getMessageSeq(data.msg_id || '')
|
|
68
|
+
}),
|
|
97
69
|
...data
|
|
98
70
|
};
|
|
99
71
|
return this.groupService({
|
|
100
72
|
url: `/v2/users/${openid}/messages`,
|
|
101
73
|
method: 'post',
|
|
102
74
|
data: db
|
|
103
|
-
})
|
|
75
|
+
});
|
|
104
76
|
}
|
|
105
|
-
/**
|
|
106
|
-
* 得到消息序列
|
|
107
|
-
* @param MessageId
|
|
108
|
-
* @returns
|
|
109
|
-
*/
|
|
110
77
|
getMessageSeq(MessageId) {
|
|
111
78
|
let seq = msgMap.get(MessageId) || 0;
|
|
112
79
|
seq++;
|
|
113
80
|
msgMap.set(MessageId, seq);
|
|
114
|
-
// 如果映射表大小超过 100,则删除最早添加的 MessageId
|
|
115
81
|
if (msgMap.size > 100) {
|
|
116
82
|
const firstKey = msgMap.keys().next().value;
|
|
117
|
-
if (firstKey)
|
|
83
|
+
if (firstKey) {
|
|
118
84
|
msgMap.delete(firstKey);
|
|
85
|
+
}
|
|
119
86
|
}
|
|
120
87
|
return seq;
|
|
121
88
|
}
|
|
122
|
-
|
|
123
|
-
* 发送群聊消息
|
|
124
|
-
* @param group_openid
|
|
125
|
-
* @param data
|
|
126
|
-
* @returns
|
|
127
|
-
*/
|
|
128
|
-
async groupOpenMessages(group_openid, data) {
|
|
89
|
+
groupOpenMessages(group_openid, data) {
|
|
129
90
|
const db = {
|
|
130
|
-
...(data.event_id
|
|
131
|
-
|
|
132
|
-
|
|
91
|
+
...(data.event_id
|
|
92
|
+
? { event_id: data.event_id }
|
|
93
|
+
: {
|
|
94
|
+
msg_seq: this.getMessageSeq(data.msg_id || '')
|
|
95
|
+
}),
|
|
133
96
|
...data
|
|
134
97
|
};
|
|
135
98
|
return this.groupService({
|
|
136
99
|
url: `/v2/groups/${group_openid}/messages`,
|
|
137
100
|
method: 'post',
|
|
138
101
|
data: db
|
|
139
|
-
})
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
* 发送私聊富媒体文件
|
|
143
|
-
* @param openid
|
|
144
|
-
* @param data
|
|
145
|
-
* @returns
|
|
146
|
-
* 1 图文 2 视频 3 语言 4 文件
|
|
147
|
-
* 图片:png/jpg,视频:mp4,语音:silk
|
|
148
|
-
*/
|
|
149
|
-
async postRichMediaByUsers(openid, data) {
|
|
150
|
-
return this.groupService({
|
|
151
|
-
url: `/v2/users/${openid}/files`,
|
|
152
|
-
method: 'post',
|
|
153
|
-
data: data
|
|
154
|
-
}).then(res => res?.data);
|
|
155
|
-
}
|
|
156
|
-
/**
|
|
157
|
-
* 发送私聊富媒体文件
|
|
158
|
-
* @param openid
|
|
159
|
-
* @param data
|
|
160
|
-
* @returns
|
|
161
|
-
* 1 图文 2 视频 3 语言 4 文件
|
|
162
|
-
* 图片:png/jpg,视频:mp4,语音:silk
|
|
163
|
-
*/
|
|
164
|
-
async userFiles(openid, data) {
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
postRichMediaByUser(openid, data) {
|
|
165
105
|
return this.groupService({
|
|
166
106
|
url: `/v2/users/${openid}/files`,
|
|
167
107
|
method: 'post',
|
|
168
108
|
data: data
|
|
169
|
-
})
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
* 发送群里文件
|
|
173
|
-
* @param openid
|
|
174
|
-
* @param data
|
|
175
|
-
* @returns
|
|
176
|
-
* 1 图文 2 视频 3 语言 4 文件
|
|
177
|
-
* 图片:png/jpg,视频:mp4,语音:silk
|
|
178
|
-
*/
|
|
179
|
-
async postRichMediaByGroup(openid, data) {
|
|
180
|
-
return this.groupService({
|
|
181
|
-
url: `/v2/groups/${openid}/files`,
|
|
182
|
-
method: 'post',
|
|
183
|
-
data: {
|
|
184
|
-
srv_send_msg: false,
|
|
185
|
-
...data
|
|
186
|
-
}
|
|
187
|
-
}).then(res => res?.data);
|
|
188
|
-
}
|
|
189
|
-
/**
|
|
190
|
-
*
|
|
191
|
-
* @param openid
|
|
192
|
-
* @param data
|
|
193
|
-
* @returns
|
|
194
|
-
*/
|
|
195
|
-
async groupsFiles(openid, data) {
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
postRichMediaByGroup(openid, data) {
|
|
196
112
|
return this.groupService({
|
|
197
113
|
url: `/v2/groups/${openid}/files`,
|
|
198
114
|
method: 'post',
|
|
@@ -200,44 +116,20 @@ class QQBotAPI {
|
|
|
200
116
|
srv_send_msg: false,
|
|
201
117
|
...data
|
|
202
118
|
}
|
|
203
|
-
})
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
*
|
|
207
|
-
* @param openid
|
|
208
|
-
* @param message_id
|
|
209
|
-
* @returns
|
|
210
|
-
*/
|
|
211
|
-
async userMessageDelete(openid, message_id) {
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
userMessageDelete(openid, message_id) {
|
|
212
122
|
return this.groupService({
|
|
213
123
|
url: `/v2/users/${openid}/messages/${message_id}`,
|
|
214
124
|
method: 'delete'
|
|
215
|
-
})
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
*
|
|
219
|
-
* @param group_openid
|
|
220
|
-
* @param message_id
|
|
221
|
-
* @returns
|
|
222
|
-
*/
|
|
223
|
-
async grouMessageDelte(group_openid, message_id) {
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
grouMessageDelte(group_openid, message_id) {
|
|
224
128
|
return this.groupService({
|
|
225
129
|
url: `/v2/groups/${group_openid}/messages/${message_id}`,
|
|
226
130
|
method: 'delete'
|
|
227
|
-
})
|
|
228
|
-
}
|
|
229
|
-
/**
|
|
230
|
-
* ************
|
|
231
|
-
* 消息-图片接口
|
|
232
|
-
* ***********
|
|
233
|
-
*/
|
|
234
|
-
/**
|
|
235
|
-
*
|
|
236
|
-
* @param channel_id
|
|
237
|
-
* @param message
|
|
238
|
-
* @param image
|
|
239
|
-
* @returns
|
|
240
|
-
*/
|
|
131
|
+
});
|
|
132
|
+
}
|
|
241
133
|
async channelsMessages(channel_id, message, image) {
|
|
242
134
|
const formdata = new FormData();
|
|
243
135
|
for (const key in message) {
|
|
@@ -246,7 +138,7 @@ class QQBotAPI {
|
|
|
246
138
|
}
|
|
247
139
|
}
|
|
248
140
|
if (image) {
|
|
249
|
-
const from = await createPicFrom(image);
|
|
141
|
+
const from = await createPicFrom({ image });
|
|
250
142
|
if (from) {
|
|
251
143
|
const { picData, name } = from;
|
|
252
144
|
formdata.append('file_image', picData, name);
|
|
@@ -260,14 +152,8 @@ class QQBotAPI {
|
|
|
260
152
|
'Content-Type': `multipart/form-data; boundary=${dary}`
|
|
261
153
|
},
|
|
262
154
|
data: formdata
|
|
263
|
-
})
|
|
264
|
-
}
|
|
265
|
-
/**
|
|
266
|
-
* 私聊发送
|
|
267
|
-
* @param id 私信传频道id,公信传子频道id
|
|
268
|
-
* @param message {消息编号,图片,内容}
|
|
269
|
-
* @returns
|
|
270
|
-
*/
|
|
155
|
+
});
|
|
156
|
+
}
|
|
271
157
|
async dmsMessages(guild_id, message, image) {
|
|
272
158
|
const formdata = new FormData();
|
|
273
159
|
for (const key in message) {
|
|
@@ -276,7 +162,7 @@ class QQBotAPI {
|
|
|
276
162
|
}
|
|
277
163
|
}
|
|
278
164
|
if (image) {
|
|
279
|
-
const from = await createPicFrom(image);
|
|
165
|
+
const from = await createPicFrom({ image });
|
|
280
166
|
if (from) {
|
|
281
167
|
const { picData, name } = from;
|
|
282
168
|
formdata.append('file_image', picData, name);
|
|
@@ -290,275 +176,131 @@ class QQBotAPI {
|
|
|
290
176
|
'Content-Type': `multipart/form-data; boundary=${dary}`
|
|
291
177
|
},
|
|
292
178
|
data: formdata
|
|
293
|
-
})
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
* ********
|
|
297
|
-
* 用户api
|
|
298
|
-
* *******
|
|
299
|
-
*/
|
|
300
|
-
/**
|
|
301
|
-
* 获取用户详情
|
|
302
|
-
* @param message
|
|
303
|
-
* @returns
|
|
304
|
-
*/
|
|
305
|
-
async usersMe() {
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
usersMe() {
|
|
306
182
|
return this.guildServer({
|
|
307
183
|
method: 'get',
|
|
308
|
-
url:
|
|
309
|
-
})
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
* 获取用户频道列表
|
|
313
|
-
* @param message
|
|
314
|
-
* @returns
|
|
315
|
-
*/
|
|
316
|
-
async usersMeGuilds(params) {
|
|
184
|
+
url: '/users/@me'
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
usersMeGuilds(params) {
|
|
317
188
|
return this.guildServer({
|
|
318
189
|
method: 'get',
|
|
319
|
-
url:
|
|
190
|
+
url: '/users/@me/guilds',
|
|
320
191
|
params
|
|
321
|
-
})
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
* **********
|
|
325
|
-
* 频道api
|
|
326
|
-
* **********
|
|
327
|
-
*/
|
|
328
|
-
/**
|
|
329
|
-
* 获取频道详细
|
|
330
|
-
* @param guild_id
|
|
331
|
-
* @returns
|
|
332
|
-
*/
|
|
333
|
-
async guilds(guild_id) {
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
guilds(guild_id) {
|
|
334
195
|
return this.guildServer({
|
|
335
196
|
method: 'get',
|
|
336
197
|
url: `/guilds/${guild_id}`
|
|
337
|
-
})
|
|
338
|
-
}
|
|
339
|
-
|
|
340
|
-
* ************
|
|
341
|
-
* 子频道api
|
|
342
|
-
* ***********
|
|
343
|
-
*/
|
|
344
|
-
/**
|
|
345
|
-
* 获取子频道列表
|
|
346
|
-
* @param guild_id
|
|
347
|
-
* @returns
|
|
348
|
-
*/
|
|
349
|
-
async guildsChannels(guild_id) {
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
guildsChannels(guild_id) {
|
|
350
201
|
return this.guildServer({
|
|
351
202
|
method: 'get',
|
|
352
203
|
url: `/guilds/${guild_id}/channels`
|
|
353
|
-
})
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
* 获取子频道详情
|
|
357
|
-
* @param channel_id
|
|
358
|
-
* @returns
|
|
359
|
-
*/
|
|
360
|
-
async channels(channel_id) {
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
channels(channel_id) {
|
|
361
207
|
return this.guildServer({
|
|
362
208
|
method: 'get',
|
|
363
209
|
url: `/channels/${channel_id}`
|
|
364
|
-
})
|
|
365
|
-
}
|
|
366
|
-
|
|
367
|
-
* 创建子频道
|
|
368
|
-
* @param guild_id
|
|
369
|
-
* @returns
|
|
370
|
-
*/
|
|
371
|
-
async guildsChannelsCreate(guild_id, data) {
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
guildsChannelsCreate(guild_id, data) {
|
|
372
213
|
return this.guildServer({
|
|
373
214
|
method: 'post',
|
|
374
215
|
url: `/guilds/${guild_id}/channels`,
|
|
375
216
|
data
|
|
376
|
-
})
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
* 创建子频道
|
|
380
|
-
* @param channel_id
|
|
381
|
-
* @returns
|
|
382
|
-
*/
|
|
383
|
-
async guildsChannelsUpdate(channel_id, data) {
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
guildsChannelsUpdate(channel_id, data) {
|
|
384
220
|
return this.guildServer({
|
|
385
221
|
method: 'PATCH',
|
|
386
222
|
url: `/channels/${channel_id}`,
|
|
387
223
|
data
|
|
388
|
-
})
|
|
389
|
-
}
|
|
390
|
-
|
|
391
|
-
* 删除子频道
|
|
392
|
-
* @param channel_id
|
|
393
|
-
* @param data
|
|
394
|
-
* @returns
|
|
395
|
-
*/
|
|
396
|
-
async guildsChannelsdelete(channel_id, data) {
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
guildsChannelsdelete(channel_id, data) {
|
|
397
227
|
return this.guildServer({
|
|
398
228
|
method: 'DELETE',
|
|
399
229
|
url: `/channels/${channel_id}`,
|
|
400
230
|
data
|
|
401
|
-
})
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
* 获取在线成员数
|
|
405
|
-
* @param channel_id
|
|
406
|
-
* @returns
|
|
407
|
-
*/
|
|
408
|
-
async channelsChannelOnlineNums(channel_id) {
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
channelsChannelOnlineNums(channel_id) {
|
|
409
234
|
return this.guildServer({
|
|
410
235
|
method: 'GET',
|
|
411
236
|
url: `/channels/${channel_id}/online_nums`
|
|
412
|
-
})
|
|
413
|
-
}
|
|
414
|
-
|
|
415
|
-
* *********
|
|
416
|
-
* 成员api
|
|
417
|
-
* *********
|
|
418
|
-
*/
|
|
419
|
-
/**
|
|
420
|
-
* 获取频道成员列表
|
|
421
|
-
* @param guild_id
|
|
422
|
-
* @returns
|
|
423
|
-
*/
|
|
424
|
-
async guildsMembers(guild_id, params) {
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
guildsMembers(guild_id, params) {
|
|
425
240
|
return this.guildServer({
|
|
426
241
|
method: 'GET',
|
|
427
242
|
url: `/guilds/${guild_id}/members`,
|
|
428
243
|
params
|
|
429
|
-
})
|
|
430
|
-
}
|
|
431
|
-
|
|
432
|
-
* 获取频道身份组成员列表
|
|
433
|
-
* @param guild_id
|
|
434
|
-
* @param role_id
|
|
435
|
-
* @param params
|
|
436
|
-
* @returns
|
|
437
|
-
*/
|
|
438
|
-
async guildsRolesMembers(guild_id, role_id, params) {
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
guildsRolesMembers(guild_id, role_id, params) {
|
|
439
247
|
return this.guildServer({
|
|
440
248
|
method: 'GET',
|
|
441
249
|
url: `/guilds/${guild_id}/roles/${role_id}/members`,
|
|
442
250
|
params
|
|
443
|
-
})
|
|
444
|
-
}
|
|
445
|
-
|
|
446
|
-
* 获取成员详情
|
|
447
|
-
* @param guild_id
|
|
448
|
-
* @param user_id
|
|
449
|
-
* @returns
|
|
450
|
-
*/
|
|
451
|
-
async guildsMembersMessage(guild_id, user_id) {
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
guildsMembersMessage(guild_id, user_id) {
|
|
452
254
|
return this.guildServer({
|
|
453
255
|
method: 'GET',
|
|
454
256
|
url: `/guilds/${guild_id}/members/${user_id}`
|
|
455
|
-
})
|
|
456
|
-
}
|
|
457
|
-
|
|
458
|
-
* 删除频道成员
|
|
459
|
-
* @param guild_id
|
|
460
|
-
* @param user_id
|
|
461
|
-
* @returns
|
|
462
|
-
*/
|
|
463
|
-
async guildsMembersDelete(guild_id, user_id) {
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
guildsMembersDelete(guild_id, user_id) {
|
|
464
260
|
return this.guildServer({
|
|
465
261
|
method: 'DELETE',
|
|
466
262
|
url: `/guilds/${guild_id}/members/${user_id}`
|
|
467
|
-
})
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
* 获取指定消息
|
|
471
|
-
* @param channel_id
|
|
472
|
-
* @param message_id
|
|
473
|
-
* @returns
|
|
474
|
-
*/
|
|
475
|
-
async channelsMessagesById(channel_id, message_id) {
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
channelsMessagesById(channel_id, message_id) {
|
|
476
266
|
return this.guildServer({
|
|
477
267
|
method: 'GET',
|
|
478
268
|
url: `/channels/${channel_id}/messages/${message_id}`
|
|
479
|
-
})
|
|
480
|
-
}
|
|
481
|
-
|
|
482
|
-
* 撤回消息
|
|
483
|
-
* @param channel_id
|
|
484
|
-
* @param message_id
|
|
485
|
-
* @param hidetip
|
|
486
|
-
* @returns
|
|
487
|
-
*/
|
|
488
|
-
async channelsMessagesDelete(channel_id, message_id, hidetip = true) {
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
channelsMessagesDelete(channel_id, message_id, hidetip = true) {
|
|
489
272
|
return this.guildServer({
|
|
490
273
|
method: 'DELETE',
|
|
491
274
|
url: `/channels/${channel_id}/messages/${message_id}?hidetip=${hidetip}`
|
|
492
|
-
})
|
|
493
|
-
}
|
|
494
|
-
|
|
495
|
-
* ***********
|
|
496
|
-
* 频道身份api
|
|
497
|
-
* ***********
|
|
498
|
-
*/
|
|
499
|
-
/**
|
|
500
|
-
* 获取频道身份组列表
|
|
501
|
-
* @param guild_id 频道id
|
|
502
|
-
* @returns
|
|
503
|
-
*/
|
|
504
|
-
async guildsRoles(guild_id) {
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
guildsRoles(guild_id) {
|
|
505
278
|
return this.guildServer({
|
|
506
279
|
method: 'GET',
|
|
507
280
|
url: `/guilds/${guild_id}/roles`
|
|
508
|
-
})
|
|
509
|
-
}
|
|
510
|
-
|
|
511
|
-
* 创建频道身份组
|
|
512
|
-
* @param guild_id 频道id
|
|
513
|
-
* @param {object} data 参数
|
|
514
|
-
* @param {object?} data.name 身份组名称
|
|
515
|
-
* @param {object?} data.color ARGB 的 HEX 十六进制颜色值转换后的十进制数值
|
|
516
|
-
* @param {object?} data.hoist 在成员列表中单独展示: 0-否, 1-是
|
|
517
|
-
* @returns
|
|
518
|
-
*/
|
|
519
|
-
async guildsRolesPost(guild_id, data) {
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
guildsRolesPost(guild_id, data) {
|
|
520
284
|
return this.guildServer({
|
|
521
285
|
method: 'POST',
|
|
522
286
|
url: `/guilds/${guild_id}/roles`,
|
|
523
287
|
data
|
|
524
|
-
})
|
|
525
|
-
}
|
|
526
|
-
|
|
527
|
-
* 修改频道身份组
|
|
528
|
-
* @param guild_id 频道id
|
|
529
|
-
* @param {object} data 参数
|
|
530
|
-
* @param {object?} data.name 身份组名称
|
|
531
|
-
* @param {object?} data.color ARGB 的 HEX 十六进制颜色值转换后的十进制数值
|
|
532
|
-
* @param {object?} data.hoist 在成员列表中单独展示: 0-否, 1-是
|
|
533
|
-
* @returns
|
|
534
|
-
*/
|
|
535
|
-
async guildsRolesPatch(guild_id, role_id, data) {
|
|
288
|
+
});
|
|
289
|
+
}
|
|
290
|
+
guildsRolesPatch(guild_id, role_id, data) {
|
|
536
291
|
return this.guildServer({
|
|
537
292
|
method: 'PATCH',
|
|
538
293
|
url: `/guilds/${guild_id}/roles/${role_id}`,
|
|
539
294
|
data
|
|
540
|
-
})
|
|
541
|
-
}
|
|
542
|
-
|
|
543
|
-
* 删除频道身份组
|
|
544
|
-
* @param guild_id 频道id
|
|
545
|
-
* @param role_id 身份组id
|
|
546
|
-
*/
|
|
547
|
-
async guildsRolesDelete(guild_id, role_id) {
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
guildsRolesDelete(guild_id, role_id) {
|
|
548
298
|
return this.guildServer({
|
|
549
299
|
method: 'DELETE',
|
|
550
300
|
url: `/guilds/${guild_id}/roles/${role_id}`
|
|
551
|
-
})
|
|
552
|
-
}
|
|
553
|
-
|
|
554
|
-
* 将成员添加到频道身份组
|
|
555
|
-
* @param guild_id 频道id
|
|
556
|
-
* @param channel_id 子频道id
|
|
557
|
-
* @param user_id 用户id
|
|
558
|
-
* @param role_id 身份组id
|
|
559
|
-
* @returns
|
|
560
|
-
*/
|
|
561
|
-
async guildsRolesMembersPut(guild_id, channel_id, user_id, role_id) {
|
|
301
|
+
});
|
|
302
|
+
}
|
|
303
|
+
guildsRolesMembersPut(guild_id, channel_id, user_id, role_id) {
|
|
562
304
|
return this.guildServer({
|
|
563
305
|
method: 'PUT',
|
|
564
306
|
url: `/guilds/${guild_id}/members/${user_id}/roles/${role_id}`,
|
|
@@ -567,17 +309,9 @@ class QQBotAPI {
|
|
|
567
309
|
id: channel_id
|
|
568
310
|
}
|
|
569
311
|
}
|
|
570
|
-
})
|
|
571
|
-
}
|
|
572
|
-
|
|
573
|
-
* 将成员从频道身份组移除
|
|
574
|
-
* @param guild_id 频道id
|
|
575
|
-
* @param channel_id 子频道id
|
|
576
|
-
* @param user_id 用户id
|
|
577
|
-
* @param role_id 身份组id
|
|
578
|
-
* @returns
|
|
579
|
-
*/
|
|
580
|
-
async guildsRolesMembersDelete(guild_id, channel_id, user_id, role_id) {
|
|
312
|
+
});
|
|
313
|
+
}
|
|
314
|
+
guildsRolesMembersDelete(guild_id, channel_id, user_id, role_id) {
|
|
581
315
|
return this.guildServer({
|
|
582
316
|
method: 'DELETE',
|
|
583
317
|
url: `/guilds/${guild_id}/members/${user_id}/roles/${role_id}`,
|
|
@@ -586,31 +320,15 @@ class QQBotAPI {
|
|
|
586
320
|
id: channel_id
|
|
587
321
|
}
|
|
588
322
|
}
|
|
589
|
-
})
|
|
590
|
-
}
|
|
591
|
-
|
|
592
|
-
* **********
|
|
593
|
-
* 子频道权限api
|
|
594
|
-
* **********
|
|
595
|
-
*/
|
|
596
|
-
/**
|
|
597
|
-
* 获取子频道用户权限
|
|
598
|
-
* @param channel_id 子频道id
|
|
599
|
-
* @param user_id 用户id
|
|
600
|
-
*/
|
|
601
|
-
async channelsPermissions(channel_id, user_id) {
|
|
323
|
+
});
|
|
324
|
+
}
|
|
325
|
+
channelsPermissions(channel_id, user_id) {
|
|
602
326
|
return this.guildServer({
|
|
603
327
|
method: 'GET',
|
|
604
328
|
url: `/channels/${channel_id}/members/${user_id}/permissions`
|
|
605
|
-
})
|
|
606
|
-
}
|
|
607
|
-
|
|
608
|
-
* 修改子频道用户权限
|
|
609
|
-
* @param channel_id 子频道id
|
|
610
|
-
* @param user_id 用户id
|
|
611
|
-
* @param 参数包括add和remove两个字段分别表示授予的权限以及删除的权限。要授予用户权限即把add对应位置 1,删除用户权限即把remove对应位置 1。当两个字段同一位都为 1,表现为删除权限。
|
|
612
|
-
*/
|
|
613
|
-
async channelsPermissionsPut(channel_id, user_id, add, remove) {
|
|
329
|
+
});
|
|
330
|
+
}
|
|
331
|
+
channelsPermissionsPut(channel_id, user_id, add, remove) {
|
|
614
332
|
return this.guildServer({
|
|
615
333
|
method: 'PUT',
|
|
616
334
|
url: `/channels/${channel_id}/members/${user_id}/permissions`,
|
|
@@ -618,466 +336,186 @@ class QQBotAPI {
|
|
|
618
336
|
add,
|
|
619
337
|
remove
|
|
620
338
|
}
|
|
621
|
-
})
|
|
622
|
-
}
|
|
623
|
-
|
|
624
|
-
* *******
|
|
625
|
-
* 消息api
|
|
626
|
-
* ********
|
|
627
|
-
*/
|
|
628
|
-
/**
|
|
629
|
-
* ************
|
|
630
|
-
* 消息频率api
|
|
631
|
-
* **********
|
|
632
|
-
*/
|
|
633
|
-
/**
|
|
634
|
-
* 查询频道消息频率限制
|
|
635
|
-
* @param guild_id 频道id
|
|
636
|
-
* @returns
|
|
637
|
-
*/
|
|
638
|
-
async guildsMessageSetting(guild_id) {
|
|
339
|
+
});
|
|
340
|
+
}
|
|
341
|
+
guildsMessageSetting(guild_id) {
|
|
639
342
|
return this.guildServer({
|
|
640
343
|
method: 'GET',
|
|
641
344
|
url: `/guilds/${guild_id}/message/setting`
|
|
642
|
-
})
|
|
643
|
-
}
|
|
644
|
-
|
|
645
|
-
* ***********
|
|
646
|
-
* 私信api
|
|
647
|
-
* **********
|
|
648
|
-
*/
|
|
649
|
-
/**
|
|
650
|
-
* 创建私信会话
|
|
651
|
-
* @param recipient_id 接收者 id
|
|
652
|
-
* @param source_guild_id 源频道 id
|
|
653
|
-
* @returns
|
|
654
|
-
*/
|
|
655
|
-
async usersMeDms() {
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
usersMeDms() {
|
|
656
348
|
return this.guildServer({
|
|
657
349
|
method: 'POST',
|
|
658
|
-
url:
|
|
659
|
-
})
|
|
660
|
-
}
|
|
661
|
-
|
|
662
|
-
* 撤回私信
|
|
663
|
-
* @param guild_id
|
|
664
|
-
* @param data
|
|
665
|
-
* @returns
|
|
666
|
-
*/
|
|
667
|
-
async dmsMessageDelete(guild_id, message_id, hidetip = true) {
|
|
350
|
+
url: '/users/@me/dms'
|
|
351
|
+
});
|
|
352
|
+
}
|
|
353
|
+
dmsMessageDelete(guild_id, message_id, hidetip = true) {
|
|
668
354
|
return this.guildServer({
|
|
669
355
|
method: 'DELETE',
|
|
670
356
|
url: `/dms/${guild_id}/messages/${message_id}?hidetip=${hidetip}`
|
|
671
|
-
})
|
|
672
|
-
}
|
|
673
|
-
|
|
674
|
-
* *********
|
|
675
|
-
* 禁言api
|
|
676
|
-
* *******
|
|
677
|
-
*/
|
|
678
|
-
/**
|
|
679
|
-
* 全体禁言(非管理员)
|
|
680
|
-
* @param guild_id 频道id
|
|
681
|
-
* @param data { mute_end_timestamp:禁言结束时间戳, mute_seconds:禁言时长 } 两个参数必须传一个 优先级 mute_end_timestamp > mute_seconds
|
|
682
|
-
* 将mute_end_timestamp或mute_seconds传值为字符串'0',则表示解除全体禁言
|
|
683
|
-
*/
|
|
684
|
-
async guildsMuteAll(guild_id, data) {
|
|
357
|
+
});
|
|
358
|
+
}
|
|
359
|
+
guildsMuteAll(guild_id, data) {
|
|
685
360
|
return this.guildServer({
|
|
686
361
|
method: 'PATCH',
|
|
687
362
|
url: `/guilds/${guild_id}/mute`,
|
|
688
363
|
data
|
|
689
|
-
})
|
|
690
|
-
}
|
|
691
|
-
|
|
692
|
-
* 频道指定成员禁言
|
|
693
|
-
* @param guild_id 频道id
|
|
694
|
-
* @param user_id 用户id
|
|
695
|
-
* @param data { mute_end_timestamp:禁言结束时间戳, mute_seconds:禁言时长 } 两个参数必须传一个 优先级 mute_end_timestamp > mute_seconds
|
|
696
|
-
* 将mute_end_timestamp或mute_seconds传值为字符串'0',则表示解除禁言
|
|
697
|
-
* @returns
|
|
698
|
-
*/
|
|
699
|
-
async guildsMemberMute(guild_id, user_id, data) {
|
|
364
|
+
});
|
|
365
|
+
}
|
|
366
|
+
guildsMemberMute(guild_id, user_id, data) {
|
|
700
367
|
return this.guildServer({
|
|
701
368
|
method: 'PATCH',
|
|
702
369
|
url: `/guilds/${guild_id}/members/${user_id}/mute`,
|
|
703
370
|
data
|
|
704
|
-
})
|
|
705
|
-
}
|
|
706
|
-
|
|
707
|
-
* 频道批量禁言
|
|
708
|
-
* @param guild_id 频道id
|
|
709
|
-
* @param data { mute_end_timestamp:禁言结束时间戳, mute_seconds:禁言时长, user_ids:用户id数组 } 两个参数必须传一个 优先级 mute_end_timestamp > mute_seconds
|
|
710
|
-
* 将mute_end_timestamp或mute_seconds传值为字符串'0',则表示解除禁言
|
|
711
|
-
*/
|
|
712
|
-
async guildsMute(guild_id, data) {
|
|
371
|
+
});
|
|
372
|
+
}
|
|
373
|
+
guildsMute(guild_id, data) {
|
|
713
374
|
return this.guildServer({
|
|
714
375
|
method: 'PATCH',
|
|
715
376
|
url: `/guilds/${guild_id}/mute`,
|
|
716
377
|
data
|
|
717
|
-
})
|
|
718
|
-
}
|
|
719
|
-
|
|
720
|
-
* *******
|
|
721
|
-
* 公告api
|
|
722
|
-
* *******
|
|
723
|
-
*/
|
|
724
|
-
/**
|
|
725
|
-
* 创建频道公告
|
|
726
|
-
* 公告类型分为 消息类型的频道公告 和 推荐子频道类型的频道公告
|
|
727
|
-
* 详见 https://bot.q.qq.com/wiki/develop/api-v2/server-inter/channel/content/announces/post_guild_announces.html#%E5%8A%9F%E8%83%BD%E6%8F%8F%E8%BF%B0
|
|
728
|
-
* @param guild_id 频道id
|
|
729
|
-
* @param data { message_id:消息id, channel_id:频道id, announces_type:公告类型, recommend_channels:推荐频道id数组 }
|
|
730
|
-
* @param channel_id 子频道id 消息id存在时必须传
|
|
731
|
-
* @param announces_type 0:成员公告 1:欢迎公告 默认为 0
|
|
732
|
-
* @param recommend_channels 推荐频道id数组 "recommend_channels": [{ "channel_id": "xxxx","introduce": "推荐语" }]
|
|
733
|
-
* @returns 返回Announces 对象 (https://bot.q.qq.com/wiki/develop/api-v2/server-inter/channel/content/announces/model.html#Announces)
|
|
734
|
-
*/
|
|
735
|
-
async guildsAnnounces(guild_id, data) {
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
guildsAnnounces(guild_id, data) {
|
|
736
381
|
return this.guildServer({
|
|
737
382
|
method: 'POST',
|
|
738
383
|
url: `/guilds/${guild_id}/announces`,
|
|
739
384
|
data
|
|
740
|
-
})
|
|
741
|
-
}
|
|
742
|
-
|
|
743
|
-
* 删除频道公告
|
|
744
|
-
* @param guild_id 频道id
|
|
745
|
-
* @param message_id 消息id message_id 有值时,会校验 message_id 合法性,若不校验校验 message_id,请将 message_id 设置为 all
|
|
746
|
-
* @returns
|
|
747
|
-
*/
|
|
748
|
-
async guildsAnnouncesDelete(guild_id, message_id) {
|
|
385
|
+
});
|
|
386
|
+
}
|
|
387
|
+
guildsAnnouncesDelete(guild_id, message_id) {
|
|
749
388
|
return this.guildServer({
|
|
750
389
|
method: 'DELETE',
|
|
751
390
|
url: `/guilds/${guild_id}/announces/${message_id}`
|
|
752
|
-
})
|
|
753
|
-
}
|
|
754
|
-
|
|
755
|
-
* **********
|
|
756
|
-
* 精华消息api
|
|
757
|
-
* **********
|
|
758
|
-
*/
|
|
759
|
-
/**
|
|
760
|
-
* 添加精华消息
|
|
761
|
-
* @param channel_id 频道id
|
|
762
|
-
* @param message_id 消息id
|
|
763
|
-
* @returns 返回 PinsMessage对象 { "guild_id": "xxxxxx", "channel_id": "xxxxxx", "message_ids": ["xxxxx"]}
|
|
764
|
-
* @returns message_ids 为当前请求后子频道内所有精华消息 message_id 数组
|
|
765
|
-
*/
|
|
766
|
-
async channelsPinsPut(channel_id, message_id) {
|
|
391
|
+
});
|
|
392
|
+
}
|
|
393
|
+
channelsPinsPut(channel_id, message_id) {
|
|
767
394
|
return this.guildServer({
|
|
768
395
|
method: 'PUT',
|
|
769
396
|
url: `/channels/${channel_id}/pins/${message_id}`
|
|
770
|
-
})
|
|
771
|
-
}
|
|
772
|
-
|
|
773
|
-
* 删除精华消息
|
|
774
|
-
* @param channel_id 子频道id
|
|
775
|
-
* @param message_id 消息id
|
|
776
|
-
* 删除子频道内全部精华消息,请将 message_id 设置为 all
|
|
777
|
-
* @returns
|
|
778
|
-
*/
|
|
779
|
-
async channelsPinsDelete(channel_id, message_id) {
|
|
397
|
+
});
|
|
398
|
+
}
|
|
399
|
+
channelsPinsDelete(channel_id, message_id) {
|
|
780
400
|
return this.guildServer({
|
|
781
401
|
method: 'DELETE',
|
|
782
402
|
url: `/channels/${channel_id}/pins/${message_id}`
|
|
783
|
-
})
|
|
784
|
-
}
|
|
785
|
-
|
|
786
|
-
* 获取精华消息
|
|
787
|
-
* @param channel_id 子频道id
|
|
788
|
-
* @returns 返回 PinsMessage对象 { "guild_id": "xxxxxx", "channel_id": "xxxxxx", "message_ids": ["xxxxx"]}
|
|
789
|
-
* @returns message_ids 为当前请求后子频道内所有精华消息 message_id 数组
|
|
790
|
-
*/
|
|
791
|
-
async channelsPins(channel_id) {
|
|
403
|
+
});
|
|
404
|
+
}
|
|
405
|
+
channelsPins(channel_id) {
|
|
792
406
|
return this.guildServer({
|
|
793
407
|
method: 'GET',
|
|
794
408
|
url: `/channels/${channel_id}/pins`
|
|
795
|
-
})
|
|
796
|
-
}
|
|
797
|
-
|
|
798
|
-
* ********
|
|
799
|
-
* 日程api
|
|
800
|
-
* *******
|
|
801
|
-
*/
|
|
802
|
-
/**
|
|
803
|
-
* 获取频道日程列表
|
|
804
|
-
* @param channel_id 子频道id
|
|
805
|
-
* @returns 返回 Schedule 对象数组(详见https://bot.q.qq.com/wiki/develop/api-v2/server-inter/channel/content/schedule/model.html#schedule)
|
|
806
|
-
*/
|
|
807
|
-
async channelsSchedules(channel_id) {
|
|
409
|
+
});
|
|
410
|
+
}
|
|
411
|
+
channelsSchedules(channel_id) {
|
|
808
412
|
return this.guildServer({
|
|
809
413
|
method: 'GET',
|
|
810
414
|
url: `/channels/${channel_id}/schedules`
|
|
811
|
-
})
|
|
812
|
-
}
|
|
813
|
-
|
|
814
|
-
* 获取频道日程详情
|
|
815
|
-
* @param channel_id 子频道id
|
|
816
|
-
* @param schedule_id 日程id
|
|
817
|
-
* @returns 返回 Schedule 对象(详见https://bot.q.qq.com/wiki/develop/api-v2/server-inter/channel/content/schedule/model.html#schedule)
|
|
818
|
-
*/
|
|
819
|
-
async channelsSchedulesSchedule(channel_id, schedule_id) {
|
|
415
|
+
});
|
|
416
|
+
}
|
|
417
|
+
channelsSchedulesSchedule(channel_id, schedule_id) {
|
|
820
418
|
return this.guildServer({
|
|
821
419
|
method: 'GET',
|
|
822
420
|
url: `/channels/${channel_id}/schedules/${schedule_id}`
|
|
823
|
-
})
|
|
824
|
-
}
|
|
825
|
-
|
|
826
|
-
* 创建频道日程
|
|
827
|
-
* @param channel_id 子频道id
|
|
828
|
-
* @param name 日程名称
|
|
829
|
-
* @param description 日程描述
|
|
830
|
-
* @param start_timestamp 日程开始时间戳
|
|
831
|
-
* @param end_timestamp 日程结束时间戳
|
|
832
|
-
* @param jump_channel_id 日程开始时跳转的子频道id
|
|
833
|
-
* @param remind_type 日程提醒类型
|
|
834
|
-
* 0 不提醒
|
|
835
|
-
* 1 开始时提醒
|
|
836
|
-
* 2 开始前 5 分钟提醒
|
|
837
|
-
* 3 开始前 15 分钟提醒
|
|
838
|
-
* 4 开始前 30 分钟提醒
|
|
839
|
-
* 5 开始前 60 分钟提醒
|
|
840
|
-
* @returns 返回 Schedule 对象(详见https://bot.q.qq.com/wiki/develop/api-v2/server-inter/channel/content/schedule/model.html#schedule)
|
|
841
|
-
*/
|
|
842
|
-
async channelsSchedulesPost(channel_id, data) {
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
channelsSchedulesPost(channel_id, data) {
|
|
843
424
|
return this.guildServer({
|
|
844
425
|
method: 'POST',
|
|
845
426
|
url: `/channels/${channel_id}/schedules`,
|
|
846
427
|
data
|
|
847
|
-
})
|
|
848
|
-
}
|
|
849
|
-
|
|
850
|
-
* 修改频道日程
|
|
851
|
-
* @param channel_id 子频道id
|
|
852
|
-
* @param schedule_id 日程id
|
|
853
|
-
* @param name 日程名称
|
|
854
|
-
* @param description 日程描述
|
|
855
|
-
* @param start_timestamp 日程开始时间戳
|
|
856
|
-
* @param end_timestamp 日程结束时间戳
|
|
857
|
-
* @param jump_channel_id 日程开始时跳转的子频道id
|
|
858
|
-
* @param remind_type 日程提醒类型
|
|
859
|
-
* 0 不提醒
|
|
860
|
-
* 1 开始时提醒
|
|
861
|
-
* 2 开始前 5 分钟提醒
|
|
862
|
-
* 3 开始前 15 分钟提醒
|
|
863
|
-
* 4 开始前 30 分钟提醒
|
|
864
|
-
* 5 开始前 60 分钟提醒
|
|
865
|
-
* @returns 返回 Schedule 对象(详见https://bot.q.qq.com/wiki/develop/api-v2/server-inter/channel/content/schedule/model.html#schedule)
|
|
866
|
-
*/
|
|
867
|
-
async channelsSchedulesSchedulePatch(channel_id, schedule_id, data) {
|
|
428
|
+
});
|
|
429
|
+
}
|
|
430
|
+
channelsSchedulesSchedulePatch(channel_id, schedule_id, data) {
|
|
868
431
|
return this.guildServer({
|
|
869
432
|
method: 'PATCH',
|
|
870
433
|
url: `/channels/${channel_id}/schedules/${schedule_id}`,
|
|
871
434
|
data
|
|
872
|
-
})
|
|
873
|
-
}
|
|
874
|
-
|
|
875
|
-
* 删除频道日程
|
|
876
|
-
* @param channel_id 子频道id
|
|
877
|
-
* @param schedule_id 日程id
|
|
878
|
-
* @returns
|
|
879
|
-
*/
|
|
880
|
-
async channelsSchedulesScheduleDelete(channel_id, schedule_id) {
|
|
435
|
+
});
|
|
436
|
+
}
|
|
437
|
+
channelsSchedulesScheduleDelete(channel_id, schedule_id) {
|
|
881
438
|
return this.guildServer({
|
|
882
439
|
method: 'DELETE',
|
|
883
440
|
url: `/channels/${channel_id}/schedules/${schedule_id}`
|
|
884
|
-
})
|
|
885
|
-
}
|
|
886
|
-
|
|
887
|
-
* ***********
|
|
888
|
-
* 表情表态api
|
|
889
|
-
* ***********
|
|
890
|
-
*/
|
|
891
|
-
/**
|
|
892
|
-
* 机器人发表表情表态
|
|
893
|
-
* @param channel_id 子频道id
|
|
894
|
-
* @param message_id 消息id
|
|
895
|
-
* @param type 表情类型 1:系统表情 2:emoji表情
|
|
896
|
-
* @param id 表情id 参考https://bot.q.qq.com/wiki/develop/api-v2/openapi/emoji/model.html#Emoji%20%E5%88%97%E8%A1%A8
|
|
897
|
-
* @returns
|
|
898
|
-
*/
|
|
899
|
-
async channelsMessagesReactionsPut(channel_id, message_id, type, id) {
|
|
441
|
+
});
|
|
442
|
+
}
|
|
443
|
+
channelsMessagesReactionsPut(channel_id, message_id, type, id) {
|
|
900
444
|
return this.guildServer({
|
|
901
445
|
method: 'PUT',
|
|
902
446
|
url: `/channels/${channel_id}/messages/${message_id}/reactions/${type}/${id}`
|
|
903
|
-
})
|
|
904
|
-
}
|
|
905
|
-
|
|
906
|
-
* 删除机器人发表的表情表态
|
|
907
|
-
* @param channel_id 子频道id
|
|
908
|
-
* @param message_id 消息id
|
|
909
|
-
* @param type 表情类型 1:系统表情 2:emoji表情
|
|
910
|
-
* @param id 表情id 参考https://bot.q.qq.com/wiki/develop/api-v2/openapi/emoji/model.html#Emoji%20%E5%88%97%E8%A1%A8
|
|
911
|
-
* @returns
|
|
912
|
-
*/
|
|
913
|
-
async channelsMessagesReactionsDelete(channel_id, message_id, type, id) {
|
|
447
|
+
});
|
|
448
|
+
}
|
|
449
|
+
channelsMessagesReactionsDelete(channel_id, message_id, type, id) {
|
|
914
450
|
return this.guildServer({
|
|
915
451
|
method: 'DELETE',
|
|
916
452
|
url: `/channels/${channel_id}/messages/${message_id}/reactions/${type}/${id}`
|
|
917
|
-
})
|
|
918
|
-
}
|
|
919
|
-
|
|
920
|
-
* 获取消息表情表态的用户列表
|
|
921
|
-
* @param channel_id 子频道id
|
|
922
|
-
* @param message_id 消息id
|
|
923
|
-
* @param type 表情类型 1:系统表情 2:emoji表情
|
|
924
|
-
* @param id 表情id 参考https://bot.q.qq.com/wiki/develop/api-v2/openapi/emoji/model.html#Emoji%20%E5%88%97%E8%A1%A8
|
|
925
|
-
* @param {object} data
|
|
926
|
-
* @param {object} data.cookie 返回的cookie 第一次请求不传,后续请求传上次返回的cookie
|
|
927
|
-
* @param {object} data.limit 返回的用户数量 默认20 最大50
|
|
928
|
-
* @returns data:{ users:User[], cookie:string,is_end:true|false }
|
|
929
|
-
*/
|
|
930
|
-
async channelsMessagesReactionsUsers(channel_id, message_id, type, id, data) {
|
|
453
|
+
});
|
|
454
|
+
}
|
|
455
|
+
channelsMessagesReactionsUsers(channel_id, message_id, type, id, data) {
|
|
931
456
|
return this.guildServer({
|
|
932
457
|
method: 'GET',
|
|
933
458
|
url: `/channels/${channel_id}/messages/${message_id}/reactions/${type}/${id}`,
|
|
934
459
|
data
|
|
935
|
-
})
|
|
936
|
-
}
|
|
937
|
-
|
|
938
|
-
* ***********
|
|
939
|
-
* 音频api
|
|
940
|
-
* 音频接口:仅限音频类机器人才能使用,后续会根据机器人类型自动开通接口权限,现如需调用,需联系平台申请权限
|
|
941
|
-
* **********
|
|
942
|
-
*/
|
|
943
|
-
/**
|
|
944
|
-
* 音频控制
|
|
945
|
-
* @param channel_id 子频道id
|
|
946
|
-
* @param audio_url 音频url status为0时传
|
|
947
|
-
* @param status 0:开始 1:暂停 2:继续 3:停止
|
|
948
|
-
* @param text 状态文本(比如:简单爱-周杰伦),可选,status为0时传,其他操作不传
|
|
949
|
-
* @returns
|
|
950
|
-
*/
|
|
951
|
-
async channelsAudioPost(channel_id, data) {
|
|
460
|
+
});
|
|
461
|
+
}
|
|
462
|
+
channelsAudioPost(channel_id, data) {
|
|
952
463
|
return this.guildServer({
|
|
953
464
|
method: 'POST',
|
|
954
465
|
url: `/channels/${channel_id}/audio`,
|
|
955
466
|
data
|
|
956
|
-
})
|
|
957
|
-
}
|
|
958
|
-
|
|
959
|
-
* 机器人上麦
|
|
960
|
-
* @param channel_id 语音子频道id
|
|
961
|
-
* @returns {}
|
|
962
|
-
*/
|
|
963
|
-
async channelsMicPut(channel_id) {
|
|
467
|
+
});
|
|
468
|
+
}
|
|
469
|
+
channelsMicPut(channel_id) {
|
|
964
470
|
return this.guildServer({
|
|
965
471
|
method: 'PUT',
|
|
966
472
|
url: `/channels/${channel_id}/mic`
|
|
967
|
-
})
|
|
968
|
-
}
|
|
969
|
-
|
|
970
|
-
* 机器人下麦
|
|
971
|
-
* @param channel_id 语音子频道id
|
|
972
|
-
* @returns {}
|
|
973
|
-
*/
|
|
974
|
-
async channelsMicDelete(channel_id) {
|
|
473
|
+
});
|
|
474
|
+
}
|
|
475
|
+
channelsMicDelete(channel_id) {
|
|
975
476
|
return this.guildServer({
|
|
976
477
|
method: 'DELETE',
|
|
977
478
|
url: `/channels/${channel_id}/mic`
|
|
978
|
-
})
|
|
979
|
-
}
|
|
980
|
-
|
|
981
|
-
* **********
|
|
982
|
-
* 帖子api
|
|
983
|
-
* 注意
|
|
984
|
-
* 公域机器人暂不支持申请,仅私域机器人可用,选择私域机器人后默认开通。
|
|
985
|
-
* 注意: 开通后需要先将机器人从频道移除,然后重新添加,方可生效。
|
|
986
|
-
* **********
|
|
987
|
-
*/
|
|
988
|
-
/**
|
|
989
|
-
* 获取帖子列表
|
|
990
|
-
* @param channel_id 子频道id
|
|
991
|
-
* @returns {threads:Thread[],is_finish:0|1}
|
|
992
|
-
* @returns 返回 Thread 对象数组(详见https://bot.q.qq.com/wiki/develop/api-v2/server-inter/channel/content/forum/model.html#Thread)
|
|
993
|
-
* @returns is_finish 为 1 时,表示已拉取完 为 0 时,表示未拉取完
|
|
994
|
-
*/
|
|
995
|
-
async channelsThreads(channel_id) {
|
|
479
|
+
});
|
|
480
|
+
}
|
|
481
|
+
channelsThreads(channel_id) {
|
|
996
482
|
return this.guildServer({
|
|
997
483
|
method: 'GET',
|
|
998
484
|
url: `/channels/${channel_id}/threads`
|
|
999
|
-
})
|
|
1000
|
-
}
|
|
1001
|
-
|
|
1002
|
-
* 获取帖子详情
|
|
1003
|
-
* @param channel_id 子频道id
|
|
1004
|
-
* @param thread_id 帖子id
|
|
1005
|
-
* @returns 返回 帖子详情对象(详见https://bot.q.qq.com/wiki/develop/api-v2/server-inter/channel/content/forum/model.html#ThreadInfo)
|
|
1006
|
-
* 其中content字段可参考 https://bot.q.qq.com/wiki/develop/api-v2/server-inter/channel/content/forum/model.html#RichText
|
|
1007
|
-
*/
|
|
1008
|
-
async channelsThreadsThread(channel_id, thread_id) {
|
|
485
|
+
});
|
|
486
|
+
}
|
|
487
|
+
channelsThreadsThread(channel_id, thread_id) {
|
|
1009
488
|
return this.guildServer({
|
|
1010
489
|
method: 'GET',
|
|
1011
490
|
url: `/channels/${channel_id}/threads/${thread_id}`
|
|
1012
|
-
})
|
|
1013
|
-
}
|
|
1014
|
-
|
|
1015
|
-
* 发表帖子
|
|
1016
|
-
* @param channel_id 子频道id
|
|
1017
|
-
* @param title 帖子标题
|
|
1018
|
-
* @param content 帖子内容
|
|
1019
|
-
* @param format 帖子内容格式 1:纯文本 2:HTML 3:Markdown 4:JSON
|
|
1020
|
-
* @returns 返回 {task_id:string,create_time:string} 其中 task_id 为帖子id,create_time 发帖时间戳
|
|
1021
|
-
*/
|
|
1022
|
-
async channelsThreadsPut(channel_id, data) {
|
|
491
|
+
});
|
|
492
|
+
}
|
|
493
|
+
channelsThreadsPut(channel_id, data) {
|
|
1023
494
|
return this.guildServer({
|
|
1024
495
|
method: 'PUT',
|
|
1025
496
|
url: `/channels/${channel_id}/threads`,
|
|
1026
497
|
data
|
|
1027
|
-
})
|
|
1028
|
-
}
|
|
1029
|
-
|
|
1030
|
-
* 删除帖子
|
|
1031
|
-
* @param channel_id 子频道id
|
|
1032
|
-
* @param thread_id 帖子id
|
|
1033
|
-
* @returns
|
|
1034
|
-
*/
|
|
1035
|
-
async channelsThreadsDelete(channel_id, thread_id) {
|
|
498
|
+
});
|
|
499
|
+
}
|
|
500
|
+
channelsThreadsDelete(channel_id, thread_id) {
|
|
1036
501
|
return this.guildServer({
|
|
1037
502
|
method: 'DELETE',
|
|
1038
503
|
url: `/channels/${channel_id}/threads/${thread_id}`
|
|
1039
|
-
})
|
|
1040
|
-
}
|
|
1041
|
-
|
|
1042
|
-
* ********
|
|
1043
|
-
* 接口权限api
|
|
1044
|
-
* **********
|
|
1045
|
-
*/
|
|
1046
|
-
/**
|
|
1047
|
-
* 获得频道可用权限列表
|
|
1048
|
-
* @param guild_id
|
|
1049
|
-
* @returns
|
|
1050
|
-
*/
|
|
1051
|
-
async guildApiPermission(guild_id) {
|
|
504
|
+
});
|
|
505
|
+
}
|
|
506
|
+
guildApiPermission(guild_id) {
|
|
1052
507
|
return this.guildServer({
|
|
1053
508
|
url: `/guilds/${guild_id}/api_permission`
|
|
1054
|
-
})
|
|
1055
|
-
}
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
return this.groupService({
|
|
1065
|
-
method: 'PUT',
|
|
1066
|
-
url: `/interactions/${interaction_id}`,
|
|
1067
|
-
data: {
|
|
1068
|
-
code: code || 0,
|
|
1069
|
-
}
|
|
1070
|
-
}).then(res => res?.data);
|
|
1071
|
-
}
|
|
1072
|
-
else {
|
|
1073
|
-
return this.guildServer({
|
|
1074
|
-
method: 'PUT',
|
|
1075
|
-
url: `/interactions/${interaction_id}`,
|
|
1076
|
-
data: {
|
|
1077
|
-
code: code || 0,
|
|
1078
|
-
}
|
|
1079
|
-
}).then(res => res?.data);
|
|
1080
|
-
}
|
|
509
|
+
});
|
|
510
|
+
}
|
|
511
|
+
interactionResponse(_mode, interaction_id, code) {
|
|
512
|
+
return this.groupService({
|
|
513
|
+
method: 'PUT',
|
|
514
|
+
url: `/interactions/${interaction_id}`,
|
|
515
|
+
data: {
|
|
516
|
+
code: code || 0
|
|
517
|
+
}
|
|
518
|
+
});
|
|
1081
519
|
}
|
|
1082
520
|
}
|
|
1083
521
|
|