@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.
Files changed (109) hide show
  1. package/README.md +13 -45
  2. package/lib/config.d.ts +8 -0
  3. package/lib/config.js +20 -0
  4. package/lib/desktop.d.ts +1 -3
  5. package/lib/desktop.js +3 -12
  6. package/lib/hook.d.ts +36 -9
  7. package/lib/hook.js +21 -19
  8. package/lib/index.d.ts +5 -7
  9. package/lib/index.js +11 -21
  10. package/lib/index.webhook.d.ts +1 -0
  11. package/lib/index.webhook.js +5 -4
  12. package/lib/index.websoket.d.ts +1 -0
  13. package/lib/index.websoket.js +31 -23
  14. package/lib/message/AT_MESSAGE_CREATE.d.ts +35 -0
  15. package/lib/message/AT_MESSAGE_CREATE.js +1 -0
  16. package/lib/message/CHANNEL_CREATE.d.ts +15 -0
  17. package/lib/message/CHANNEL_CREATE.js +1 -0
  18. package/lib/message/CHANNEL_DELETE.d.ts +15 -0
  19. package/lib/message/CHANNEL_DELETE.js +1 -0
  20. package/lib/message/CHANNEL_UPDATE.d.ts +15 -0
  21. package/lib/message/CHANNEL_UPDATE.js +1 -0
  22. package/lib/message/DIRECT_MESSAGE_CREATE.d.ts +29 -0
  23. package/lib/message/DIRECT_MESSAGE_CREATE.js +1 -0
  24. package/lib/message/DIRECT_MESSAGE_DELETE.d.ts +17 -0
  25. package/lib/message/DIRECT_MESSAGE_DELETE.js +1 -0
  26. package/lib/message/ERROR.d.ts +1 -0
  27. package/lib/message/ERROR.js +1 -0
  28. package/lib/message/GUILD_CREATE.d.ts +15 -0
  29. package/lib/message/GUILD_CREATE.js +1 -0
  30. package/lib/message/GUILD_DELETE.d.ts +15 -0
  31. package/lib/message/GUILD_DELETE.js +1 -0
  32. package/lib/message/GUILD_MEMBER_ADD.d.ts +14 -0
  33. package/lib/message/GUILD_MEMBER_ADD.js +1 -0
  34. package/lib/message/GUILD_MEMBER_REMOVE.d.ts +14 -0
  35. package/lib/message/GUILD_MEMBER_REMOVE.js +1 -0
  36. package/lib/message/GUILD_MEMBER_UPDATE.d.ts +14 -0
  37. package/lib/message/GUILD_MEMBER_UPDATE.js +1 -0
  38. package/lib/message/GUILD_UPDATE.d.ts +15 -0
  39. package/lib/message/GUILD_UPDATE.js +1 -0
  40. package/lib/message/INTERACTION_CREATE.d.ts +53 -0
  41. package/lib/message/INTERACTION_CREATE.js +1 -0
  42. package/lib/message/MESSAGE_CREATE.d.ts +1 -0
  43. package/lib/message/MESSAGE_CREATE.js +1 -0
  44. package/lib/message/MESSAGE_DELETE.d.ts +1 -0
  45. package/lib/message/MESSAGE_DELETE.js +1 -0
  46. package/lib/message/MESSAGE_REACTION_ADD.d.ts +13 -0
  47. package/lib/message/MESSAGE_REACTION_ADD.js +1 -0
  48. package/lib/message/MESSAGE_REACTION_REMOVE.d.ts +13 -0
  49. package/lib/message/MESSAGE_REACTION_REMOVE.js +1 -0
  50. package/lib/message/PUBLIC_MESSAGE_DELETE.d.ts +15 -0
  51. package/lib/message/PUBLIC_MESSAGE_DELETE.js +1 -0
  52. package/lib/message/READY.d.ts +6 -0
  53. package/lib/message/READY.js +1 -0
  54. package/lib/message/group/C2C_MESSAGE_CREATE.d.ts +9 -0
  55. package/lib/message/group/C2C_MESSAGE_CREATE.js +1 -0
  56. package/lib/message/group/C2C_MSG_RECEIVE.d.ts +4 -0
  57. package/lib/message/group/C2C_MSG_RECEIVE.js +1 -0
  58. package/lib/message/group/C2C_MSG_REJECT.d.ts +4 -0
  59. package/lib/message/group/C2C_MSG_REJECT.js +1 -0
  60. package/lib/message/group/FRIEND_ADD.d.ts +4 -0
  61. package/lib/message/group/FRIEND_ADD.js +1 -0
  62. package/lib/message/group/FRIEND_DEL.d.ts +4 -0
  63. package/lib/message/group/FRIEND_DEL.js +1 -0
  64. package/lib/message/group/GROUP_ADD_ROBOT.d.ts +5 -0
  65. package/lib/message/group/GROUP_ADD_ROBOT.js +1 -0
  66. package/lib/message/group/GROUP_AT_MESSAGE_CREATE.d.ts +11 -0
  67. package/lib/message/group/GROUP_AT_MESSAGE_CREATE.js +1 -0
  68. package/lib/message/group/GROUP_DEL_ROBOT.d.ts +5 -0
  69. package/lib/message/group/GROUP_DEL_ROBOT.js +1 -0
  70. package/lib/message/group/GROUP_MSG_RECEIVE.d.ts +5 -0
  71. package/lib/message/group/GROUP_MSG_RECEIVE.js +1 -0
  72. package/lib/message/group/GROUP_MSG_REJECT.d.ts +5 -0
  73. package/lib/message/group/GROUP_MSG_REJECT.js +1 -0
  74. package/lib/register.d.ts +2 -3
  75. package/lib/register.js +427 -252
  76. package/lib/sdk/api.d.ts +10 -567
  77. package/lib/sdk/api.js +234 -796
  78. package/lib/sdk/client.webhook.d.ts +9 -0
  79. package/lib/sdk/{client.js → client.webhook.js} +18 -55
  80. package/lib/sdk/client.websoket.d.ts +9 -0
  81. package/lib/sdk/client.websoket.js +52 -97
  82. package/lib/sdk/config.d.ts +1 -0
  83. package/lib/sdk/instance.d.ts +3 -0
  84. package/lib/sdk/instance.js +93 -0
  85. package/lib/sdk/intents.d.ts +3 -0
  86. package/lib/sdk/intents.js +25 -90
  87. package/lib/sdk/message.d.ts +4 -0
  88. package/lib/sdk/message.group.d.ts +24 -0
  89. package/lib/sdk/message.group.js +1 -0
  90. package/lib/sdk/message.guild.d.ts +38 -0
  91. package/lib/sdk/message.guild.js +1 -0
  92. package/lib/sdk/message.js +1 -0
  93. package/lib/sdk/message.public.d.ts +6 -0
  94. package/lib/sdk/message.public.js +1 -0
  95. package/lib/sdk/typing.d.ts +22 -11
  96. package/lib/sdk/typing.js +1 -0
  97. package/lib/sdk/webhook.secret.d.ts +14 -0
  98. package/lib/sdk/webhook.secret.js +6 -21
  99. package/lib/sends.d.ts +29 -0
  100. package/lib/sends.js +326 -745
  101. package/lib/utils.d.ts +1 -0
  102. package/lib/utils.js +7 -12
  103. package/package.json +9 -5
  104. package/lib/index.group.js +0 -19
  105. package/lib/index.guild.js +0 -36
  106. package/lib/sdk/client.websoket.group.js +0 -221
  107. package/lib/sdk/client.websoket.guild.js +0 -205
  108. package/lib/sdk/counter.js +0 -19
  109. 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 './from.js';
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
- // /\[🔗[^\]]+\]\([^)]+\)|@everyone/.test(content)
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
- // 群聊是加密token
32
- const token = config.get('access_token');
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: API_URL,
35
- timeout: 20000,
36
- headers: {
37
- 'X-Union-Appid': app_id,
38
- 'Authorization': `QQBot ${token}`
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
- return service(options);
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('token');
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
- Authorization: `Bot ${app_id}.${token}`
43
+ 'X-Union-Appid': app_id,
44
+ Authorization: `QQBot ${token}`
57
45
  }
58
46
  });
59
- return service(opstion);
60
- }
61
- /**
62
- * 得到鉴权
63
- * @returns
64
- */
65
- async gateway() {
66
- const mode = config.get('mode');
67
- if (mode === 'group') {
68
- return this.groupService({
69
- url: '/gateway'
70
- }).then(res => res?.data);
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 ? { event_id: data.event_id } : {
95
- msg_seq: this.getMessageSeq(data.msg_id || '')
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
- }).then(res => res?.data);
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 ? { event_id: data.event_id } : {
131
- msg_seq: this.getMessageSeq(data.msg_id || '')
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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: `/users/@me`
309
- }).then(res => res?.data);
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: `/users/@me/guilds`,
190
+ url: '/users/@me/guilds',
320
191
  params
321
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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: `/users/@me/dms`
659
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
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
- }).then(res => res?.data);
1055
- }
1056
- /**
1057
- * 交互事件回应
1058
- * @param interaction_id
1059
- * @param code
1060
- * @returns
1061
- */
1062
- async interactionResponse(mode, interaction_id, code) {
1063
- if (mode === 'group') {
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