@alemonjs/discord 2.1.0-alpha.5 → 2.1.0-alpha.8
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 +6 -2
- package/lib/config.d.ts +3 -0
- package/lib/config.js +22 -0
- package/lib/index.d.ts +4 -2
- package/lib/index.js +25 -40
- package/lib/sdk/api.d.ts +879 -965
- package/lib/sdk/api.js +61 -35
- package/lib/sdk/typings.d.ts +221 -0
- package/lib/sdk/wss.js +9 -37
- package/lib/send.js +87 -82
- package/package.json +1 -1
- package/dist/assets/index.css +0 -1248
- package/dist/assets/index.js +0 -11015
- package/dist/index.html +0 -15
- package/lib/sdk/config.js +0 -10
- package/lib/sdk/core/config.js +0 -46
- package/lib/sdk/core/from.js +0 -42
- package/lib/sdk/message/CHANNEL_TOPIC_UPDATE.d.ts +0 -11
- package/lib/sdk/message/CHANNEL_UPDATE.d.ts +0 -48
- package/lib/sdk/message/GUILD_MEMBER_ADD.d.ts +0 -28
- package/lib/sdk/message/GUILD_MEMBER_REMOVE.d.ts +0 -18
- package/lib/sdk/message/GUILD_MEMBER_UPDATE.d.ts +0 -33
- package/lib/sdk/message/INTERACTION_CREATE.d.ts +0 -126
- package/lib/sdk/message/MESSAGE_CREATE.d.ts +0 -59
- package/lib/sdk/message/MESSAGE_DELETE.d.ts +0 -11
- package/lib/sdk/message/MESSAGE_REACTION_ADD.d.ts +0 -42
- package/lib/sdk/message/MESSAGE_UPDATE.d.ts +0 -56
- package/lib/sdk/message/PRESENCE_UPDATE.d.ts +0 -69
- package/lib/sdk/message/READY.d.ts +0 -9
- package/lib/sdk/message/TYPING_START.d.ts +0 -35
- package/lib/sdk/message/VOICE_CHANNEL_STATUS_UPDATE.d.ts +0 -10
- package/lib/sdk/message/VOICE_STATE_UPDATE.d.ts +0 -41
- package/lib/sdk/message.d.ts +0 -101
- package/lib/sdk/types.d.ts +0 -5
- package/lib/sdk/types.js +0 -25
- package/lib/sdk/wss.d.ts +0 -27
- package/lib/sdk/wss.types.d.ts +0 -30
package/README.md
CHANGED
|
@@ -18,12 +18,16 @@ yarn add @alemonjs/discord
|
|
|
18
18
|
discord:
|
|
19
19
|
# 令牌
|
|
20
20
|
token: ''
|
|
21
|
-
# 主人
|
|
22
|
-
master_key: null
|
|
23
21
|
# 前缀(非必填)
|
|
24
22
|
intent: null
|
|
25
23
|
# 活动 非必填)
|
|
26
24
|
shard: null
|
|
25
|
+
# 使用 user_key
|
|
26
|
+
master_key:
|
|
27
|
+
- 'xxx'
|
|
28
|
+
# 使用 user_id
|
|
29
|
+
master_id:
|
|
30
|
+
- 'yyy'
|
|
27
31
|
```
|
|
28
32
|
|
|
29
33
|
```sh
|
package/lib/config.d.ts
ADDED
package/lib/config.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { getConfigValue, useUserHashKey } from 'alemonjs';
|
|
2
|
+
|
|
3
|
+
// 平台
|
|
4
|
+
const platform = 'discord';
|
|
5
|
+
const getDiscordConfigValue = () => {
|
|
6
|
+
const value = getConfigValue() || {};
|
|
7
|
+
const config = value[platform] || {};
|
|
8
|
+
return config;
|
|
9
|
+
};
|
|
10
|
+
const getMaster = (UserId) => {
|
|
11
|
+
const config = getDiscordConfigValue();
|
|
12
|
+
const master_key = config.master_key || [];
|
|
13
|
+
const master_id = config.master_id || [];
|
|
14
|
+
const UserKey = useUserHashKey({
|
|
15
|
+
Platform: platform,
|
|
16
|
+
UserId: UserId
|
|
17
|
+
});
|
|
18
|
+
const is = master_key.includes(UserKey) || master_id.includes(UserId);
|
|
19
|
+
return [is, UserKey];
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export { getDiscordConfigValue, getMaster, platform };
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -1,30 +1,24 @@
|
|
|
1
1
|
import './env.js';
|
|
2
|
-
import {
|
|
2
|
+
import { cbpPlatform, createResult, ResultCode } from 'alemonjs';
|
|
3
3
|
import { sendchannel, senduser } from './send.js';
|
|
4
4
|
import { DCClient } from './sdk/wss.js';
|
|
5
|
-
import {
|
|
5
|
+
import { getDiscordConfigValue, getMaster, platform } from './config.js';
|
|
6
|
+
export { DCAPI as API } from './sdk/api.js';
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
// main
|
|
8
9
|
var index = () => {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
value = {};
|
|
12
|
-
const config = value[platform];
|
|
13
|
-
// 创建客户端
|
|
14
|
-
const client = new DCClient({
|
|
15
|
-
gatewayURL: config?.gatewayURL,
|
|
16
|
-
token: config.token,
|
|
17
|
-
shard: config?.shard ?? [0, 1],
|
|
18
|
-
intent: config?.intent ?? AvailableIntentsEventsEnum
|
|
19
|
-
});
|
|
10
|
+
const value = getDiscordConfigValue();
|
|
11
|
+
const port = process.env?.port || value?.port || 17117;
|
|
20
12
|
/**
|
|
21
13
|
* 连接 alemonjs 服务器。
|
|
22
14
|
* 向 alemonjs 推送标准信息
|
|
23
15
|
*/
|
|
24
|
-
const url = `ws://127.0.0.1:${
|
|
16
|
+
const url = `ws://127.0.0.1:${port}`;
|
|
25
17
|
const cbp = cbpPlatform(url);
|
|
18
|
+
// 创建客户端
|
|
19
|
+
const client = new DCClient();
|
|
26
20
|
// 连接
|
|
27
|
-
client.connect(
|
|
21
|
+
client.connect();
|
|
28
22
|
/**
|
|
29
23
|
* 创建用户头像
|
|
30
24
|
* @param UserId
|
|
@@ -53,12 +47,7 @@ var index = () => {
|
|
|
53
47
|
msg = msg.replace(`<@${item.id}>`, '').trim();
|
|
54
48
|
}
|
|
55
49
|
const UserId = event.author.id;
|
|
56
|
-
const UserKey =
|
|
57
|
-
Platform: platform,
|
|
58
|
-
UserId: UserId
|
|
59
|
-
});
|
|
60
|
-
const master_key = config?.master_key ?? [];
|
|
61
|
-
const isMaster = master_key.includes(UserKey);
|
|
50
|
+
const [isMaster, UserKey] = getMaster(UserId);
|
|
62
51
|
const UserAvatar = createUserAvatar(UserId, event.author.avatar);
|
|
63
52
|
if (event.type == 0 && event.member) {
|
|
64
53
|
const e = {
|
|
@@ -68,6 +57,7 @@ var index = () => {
|
|
|
68
57
|
// guild
|
|
69
58
|
GuildId: event.guild_id,
|
|
70
59
|
ChannelId: event.channel_id,
|
|
60
|
+
SpaceId: event.channel_id,
|
|
71
61
|
// user
|
|
72
62
|
UserId: UserId,
|
|
73
63
|
UserKey,
|
|
@@ -92,9 +82,6 @@ var index = () => {
|
|
|
92
82
|
name: 'private.message.create',
|
|
93
83
|
// 事件类型
|
|
94
84
|
Platform: platform,
|
|
95
|
-
// guild
|
|
96
|
-
// GuildId: event.guild_id,
|
|
97
|
-
// ChannelId: event.channel_id,
|
|
98
85
|
// user
|
|
99
86
|
UserId: UserId,
|
|
100
87
|
UserKey,
|
|
@@ -116,18 +103,12 @@ var index = () => {
|
|
|
116
103
|
else ;
|
|
117
104
|
});
|
|
118
105
|
client.on('INTERACTION_CREATE', event => {
|
|
119
|
-
console.log('event', event);
|
|
120
106
|
const isPrivate = typeof event['user'] === 'object' ? true : false;
|
|
121
107
|
const user = isPrivate ? event['user'] : event['member'].user;
|
|
122
108
|
const UserId = user.id;
|
|
123
|
-
const UserKey = useUserHashKey({
|
|
124
|
-
Platform: platform,
|
|
125
|
-
UserId: UserId
|
|
126
|
-
});
|
|
127
109
|
const UserAvatar = createUserAvatar(UserId, user.avatar);
|
|
128
110
|
const UserName = user.username;
|
|
129
|
-
const
|
|
130
|
-
const isMaster = master_key.includes(UserKey);
|
|
111
|
+
const [isMaster, UserKey] = getMaster(UserId);
|
|
131
112
|
const MessageText = event.data.custom_id;
|
|
132
113
|
if (isPrivate) {
|
|
133
114
|
// 处理消息
|
|
@@ -164,6 +145,7 @@ var index = () => {
|
|
|
164
145
|
// guild
|
|
165
146
|
GuildId: event['guild_id'],
|
|
166
147
|
ChannelId: event.channel_id,
|
|
148
|
+
SpaceId: event.channel_id,
|
|
167
149
|
// user
|
|
168
150
|
UserId: UserId,
|
|
169
151
|
UserKey,
|
|
@@ -240,17 +222,11 @@ var index = () => {
|
|
|
240
222
|
const MessageMention = event.mentions.map(item => {
|
|
241
223
|
const UserId = item.id;
|
|
242
224
|
const avatar = event.author.avatar;
|
|
243
|
-
const value = getConfigValue();
|
|
244
|
-
const config = value?.discord;
|
|
245
|
-
const master_key = config?.master_key ?? [];
|
|
246
225
|
const UserAvatar = createUserAvatar(UserId, avatar);
|
|
247
|
-
const UserKey =
|
|
248
|
-
Platform: platform,
|
|
249
|
-
UserId: UserId
|
|
250
|
-
});
|
|
226
|
+
const [isMaster, UserKey] = getMaster(UserId);
|
|
251
227
|
return {
|
|
252
228
|
UserId: item.id,
|
|
253
|
-
IsMaster:
|
|
229
|
+
IsMaster: isMaster,
|
|
254
230
|
IsBot: item.bot,
|
|
255
231
|
UserAvatar,
|
|
256
232
|
UserKey
|
|
@@ -285,6 +261,15 @@ var index = () => {
|
|
|
285
261
|
consume([createResult(ResultCode.Ok, '请求完成', res)]);
|
|
286
262
|
}
|
|
287
263
|
});
|
|
264
|
+
cbp.onapis(async (data, consume) => {
|
|
265
|
+
const key = data.payload?.key;
|
|
266
|
+
if (client[key]) {
|
|
267
|
+
// 如果 client 上有对应的 key,直接调用。
|
|
268
|
+
const params = data.payload.params;
|
|
269
|
+
const res = await client[key](...params);
|
|
270
|
+
consume([createResult(ResultCode.Ok, '请求完成', res)]);
|
|
271
|
+
}
|
|
272
|
+
});
|
|
288
273
|
};
|
|
289
274
|
|
|
290
275
|
export { index as default, platform };
|