koishi-plugin-node-async-bot-all 1.4.3 → 1.5.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/lib/fun.d.ts +1 -1
- package/lib/index.js +149 -63
- package/package.json +1 -1
- package/res/i18n.yaml +0 -21
package/lib/fun.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare function getSystemUsage(): Promise<
|
|
1
|
+
export declare function getSystemUsage(): Promise<object>;
|
|
2
2
|
export declare function getHongKongTime(): string;
|
|
3
3
|
export declare function fetchWithTimeout(url: string, options?: {}, timeout?: number): Promise<Response>;
|
|
4
4
|
export declare function readInfoFile(): Promise<string>;
|
package/lib/index.js
CHANGED
|
@@ -5,6 +5,9 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
|
5
5
|
var __getProtoOf = Object.getPrototypeOf;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
8
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
9
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
10
|
+
};
|
|
8
11
|
var __export = (target, all) => {
|
|
9
12
|
for (var name2 in all)
|
|
10
13
|
__defProp(target, name2, { get: all[name2], enumerable: true });
|
|
@@ -27,6 +30,13 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
27
30
|
));
|
|
28
31
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
32
|
|
|
33
|
+
// src/locales/zh-CN.yml
|
|
34
|
+
var require_zh_CN = __commonJS({
|
|
35
|
+
"src/locales/zh-CN.yml"(exports2, module2) {
|
|
36
|
+
module2.exports = { commands: { cx: { description: "查询服务器当前人数。", messages: { msg: "{time}\n【服务器当前人数】\n➣ {version}:{players}\n进服指南请在群公告中查看。", forbidden: "{time}\n此指令不允许在本群使用。", failed: "{time}\n查询失败:{data}\n请稍后重试。", timeout: "请求超时。", close: "服务器已关闭。", error: "执行错误。", unknown: "未知错误。" } }, status: { description: "查询机器人状态。", messages: { msg: "{time}\n系统名称:{name}\nCPU使用率:{cpu}\n内存使用率:{memory}", failed: "{time}\n状态获取失败。" } }, random: { description: "随机数生成器。", usage: "缺少参数时默认生成 0-10000 的随机数。\n使用示例:", examples: "random 1 128 生成1到128范围的随机数", messages: { msg: "{time}\n生成的随机数:{data}" } }, info: { description: "查询机器人信息。", messages: { msg: "{data}", failed: "{time}\n读取信息失败。" } }, rw: { description: "随机名言名句。", messages: { msg: "{time}\n{data}", failed1: "{time}\n获取失败(1)。", failed2: "{time}\n获取失败(2)。" } } } };
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
|
|
30
40
|
// src/index.ts
|
|
31
41
|
var src_exports = {};
|
|
32
42
|
__export(src_exports, {
|
|
@@ -39,10 +49,7 @@ module.exports = __toCommonJS(src_exports);
|
|
|
39
49
|
var import_os = __toESM(require("os"));
|
|
40
50
|
|
|
41
51
|
// package.json
|
|
42
|
-
var version = "1.
|
|
43
|
-
|
|
44
|
-
// res/i18n.yaml
|
|
45
|
-
var i18n_default = { rw: { failed1: "获取失败(1)。", failed2: "获取失败(2)。" }, cx: { forbidden: "此指令不允许在本群使用。", notice: "进服指南请在群公告中查看。", players: "服务器当前人数", failed: "查询失败:", timeout: "请求超时。", later: "请稍后重试。", unknown: "未知错误。", close: "服务器已关闭。" }, status: { failed: "状态获取失败。", name: "系统名称:", cpu: "CPU使用率:", memory: "内存使用率:" }, random: { sc: "生成的随机数:" }, info: { failed: "读取信息失败。" } };
|
|
52
|
+
var version = "1.5.0";
|
|
46
53
|
|
|
47
54
|
// src/fun.ts
|
|
48
55
|
function getSystemName() {
|
|
@@ -71,11 +78,17 @@ __name(getCpuUsage, "getCpuUsage");
|
|
|
71
78
|
async function getSystemUsage() {
|
|
72
79
|
let info;
|
|
73
80
|
try {
|
|
74
|
-
info =
|
|
75
|
-
|
|
76
|
-
|
|
81
|
+
info = {
|
|
82
|
+
"name": getSystemName(),
|
|
83
|
+
"cpu": await getCpuUsage() + "%",
|
|
84
|
+
"memory": getMemoryUsage() + "%",
|
|
85
|
+
"success": 0
|
|
86
|
+
};
|
|
77
87
|
} catch (error) {
|
|
78
|
-
info =
|
|
88
|
+
info = {
|
|
89
|
+
"data": error.message,
|
|
90
|
+
"success": 1
|
|
91
|
+
};
|
|
79
92
|
}
|
|
80
93
|
return info;
|
|
81
94
|
}
|
|
@@ -142,50 +155,62 @@ async function getServer(ctx, session) {
|
|
|
142
155
|
let data;
|
|
143
156
|
let error;
|
|
144
157
|
const time = getHongKongTime();
|
|
145
|
-
if (session.event.guild.id == "757729218" || session.event.guild.id == "
|
|
158
|
+
if (session.event.guild.id == "757729218" || session.event.guild.id == "#") {
|
|
146
159
|
try {
|
|
147
160
|
const response = await fetchWithTimeout("https://api.tasaed.top/get/minecraftServer/", {}, 8e3);
|
|
148
161
|
if (response.ok) {
|
|
149
162
|
data = await response.text();
|
|
150
163
|
ctx.logger.info("Server data: " + data);
|
|
151
164
|
data = JSON.parse(data);
|
|
152
|
-
msg =
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
165
|
+
msg = {
|
|
166
|
+
"time": time,
|
|
167
|
+
"players": data["players"],
|
|
168
|
+
"version": data["version"],
|
|
169
|
+
"success": 0
|
|
170
|
+
};
|
|
171
|
+
ctx.logger.info("Sent:");
|
|
172
|
+
ctx.logger.info(msg);
|
|
157
173
|
} else {
|
|
158
174
|
dataError = await response.text();
|
|
159
175
|
try {
|
|
160
176
|
const vError = JSON.parse(dataError);
|
|
161
177
|
error = vError["data"];
|
|
162
178
|
if (error.includes("Connection refused")) {
|
|
163
|
-
error =
|
|
179
|
+
error = session.text(".close");
|
|
164
180
|
}
|
|
165
181
|
} catch (e) {
|
|
166
182
|
if (dataError.includes("CDN节点请求源服务器超时")) {
|
|
167
|
-
error =
|
|
183
|
+
error = session.text(".timeout");
|
|
168
184
|
} else {
|
|
169
|
-
error =
|
|
185
|
+
error = session.text(".unknown");
|
|
170
186
|
}
|
|
171
187
|
}
|
|
172
188
|
ctx.logger.error(`Error fetching data: ${dataError}`);
|
|
173
|
-
msg =
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
189
|
+
msg = {
|
|
190
|
+
"time": time,
|
|
191
|
+
"data": error,
|
|
192
|
+
"success": 1
|
|
193
|
+
};
|
|
194
|
+
ctx.logger.info("Sent:");
|
|
195
|
+
ctx.logger.info(msg);
|
|
177
196
|
}
|
|
178
197
|
} catch (err) {
|
|
179
198
|
ctx.logger.error(`Request error: ${err.message}`);
|
|
180
|
-
msg =
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
199
|
+
msg = {
|
|
200
|
+
"time": time,
|
|
201
|
+
"data": session.text(".error"),
|
|
202
|
+
"success": 1
|
|
203
|
+
};
|
|
204
|
+
ctx.logger.info("Sent:");
|
|
205
|
+
ctx.logger.info(msg);
|
|
184
206
|
}
|
|
185
207
|
} else {
|
|
186
|
-
msg =
|
|
187
|
-
|
|
188
|
-
|
|
208
|
+
msg = {
|
|
209
|
+
"time": time,
|
|
210
|
+
"success": 2
|
|
211
|
+
};
|
|
212
|
+
ctx.logger.info("Sent:");
|
|
213
|
+
ctx.logger.info(msg);
|
|
189
214
|
}
|
|
190
215
|
return msg;
|
|
191
216
|
}
|
|
@@ -195,15 +220,24 @@ async function getStatus(ctx, session) {
|
|
|
195
220
|
const time = getHongKongTime();
|
|
196
221
|
let msg;
|
|
197
222
|
const vMsg = await getSystemUsage();
|
|
198
|
-
if (
|
|
223
|
+
if (vMsg["success"] == 1) {
|
|
199
224
|
ctx.logger.error(vMsg);
|
|
200
|
-
msg =
|
|
201
|
-
|
|
225
|
+
msg = {
|
|
226
|
+
"time": time,
|
|
227
|
+
"data": vMsg["data"],
|
|
228
|
+
"success": 1
|
|
229
|
+
};
|
|
202
230
|
} else {
|
|
203
|
-
msg =
|
|
204
|
-
|
|
231
|
+
msg = {
|
|
232
|
+
"time": time,
|
|
233
|
+
"name": vMsg["name"],
|
|
234
|
+
"cpu": vMsg["cpu"],
|
|
235
|
+
"memory": vMsg["memory"],
|
|
236
|
+
"success": 0
|
|
237
|
+
};
|
|
205
238
|
}
|
|
206
|
-
ctx.logger.info("Sent:
|
|
239
|
+
ctx.logger.info("Sent:");
|
|
240
|
+
ctx.logger.info(msg);
|
|
207
241
|
return msg;
|
|
208
242
|
}
|
|
209
243
|
__name(getStatus, "getStatus");
|
|
@@ -211,30 +245,46 @@ async function getRandom(ctx, session, min, max) {
|
|
|
211
245
|
ctx.logger.info(`Got: {"command":"${session.text(".message")}","form":"${session.event.guild.id}","user":"${session.event.user.id}","timestamp":${session.event.timestamp},"messageId":"${session.event.message.id}"}`);
|
|
212
246
|
const time = getHongKongTime();
|
|
213
247
|
let msg;
|
|
248
|
+
let data;
|
|
214
249
|
if (min == void 0 || max == void 0) {
|
|
215
250
|
min = 0;
|
|
216
251
|
max = 1e4;
|
|
217
252
|
}
|
|
218
253
|
min = Math.ceil(min);
|
|
219
254
|
max = Math.floor(max);
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
255
|
+
data = Math.floor(Math.random() * (max - min + 1)) + min + `(${min},${max})`;
|
|
256
|
+
msg = {
|
|
257
|
+
"time": time,
|
|
258
|
+
"data": data,
|
|
259
|
+
"success": 0
|
|
260
|
+
};
|
|
261
|
+
ctx.logger.info("Sent:");
|
|
262
|
+
ctx.logger.info(msg);
|
|
223
263
|
return msg;
|
|
224
264
|
}
|
|
225
265
|
__name(getRandom, "getRandom");
|
|
226
266
|
async function getInfo(ctx, session) {
|
|
227
267
|
ctx.logger.info(`Got: {"command":"${session.text(".message")}","form":"${session.event.guild.id}","user":"${session.event.user.id}","timestamp":${session.event.timestamp},"messageId":"${session.event.message.id}"}`);
|
|
228
268
|
const time = getHongKongTime();
|
|
229
|
-
let msg
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
269
|
+
let msg;
|
|
270
|
+
let data = await readInfoFile();
|
|
271
|
+
if (!data.includes("基沃托斯·工业革命")) {
|
|
272
|
+
ctx.logger.error("Error: " + data);
|
|
273
|
+
msg = {
|
|
274
|
+
"time": time,
|
|
275
|
+
"data": data,
|
|
276
|
+
"success": 1
|
|
277
|
+
};
|
|
234
278
|
} else {
|
|
235
|
-
|
|
279
|
+
data = data.replace("&time;", time);
|
|
280
|
+
msg = {
|
|
281
|
+
"time": time,
|
|
282
|
+
"data": data,
|
|
283
|
+
"success": 0
|
|
284
|
+
};
|
|
236
285
|
}
|
|
237
|
-
ctx.logger.info("Sent:
|
|
286
|
+
ctx.logger.info("Sent:");
|
|
287
|
+
ctx.logger.info(msg);
|
|
238
288
|
return msg;
|
|
239
289
|
}
|
|
240
290
|
__name(getInfo, "getInfo");
|
|
@@ -248,40 +298,76 @@ async function getRW(ctx, session) {
|
|
|
248
298
|
if (response.ok) {
|
|
249
299
|
data = await response.text();
|
|
250
300
|
ctx.logger.info("Server data: " + data);
|
|
251
|
-
msg =
|
|
252
|
-
|
|
253
|
-
|
|
301
|
+
msg = {
|
|
302
|
+
"time": time,
|
|
303
|
+
"data": data,
|
|
304
|
+
"success": 0
|
|
305
|
+
};
|
|
306
|
+
ctx.logger.info("Sent:");
|
|
307
|
+
ctx.logger.info(msg);
|
|
254
308
|
} else {
|
|
255
309
|
data = await response.text();
|
|
256
310
|
ctx.logger.error(`Error fetching data: ${data}`);
|
|
257
|
-
msg =
|
|
258
|
-
|
|
259
|
-
|
|
311
|
+
msg = {
|
|
312
|
+
"time": time,
|
|
313
|
+
"success": 1
|
|
314
|
+
};
|
|
315
|
+
ctx.logger.info("Sent:");
|
|
316
|
+
ctx.logger.info(msg);
|
|
260
317
|
}
|
|
261
318
|
} catch (err) {
|
|
262
319
|
ctx.logger.error(`Request error: ${err.message}`);
|
|
263
|
-
msg =
|
|
264
|
-
|
|
265
|
-
|
|
320
|
+
msg = {
|
|
321
|
+
"time": time,
|
|
322
|
+
"success": 2
|
|
323
|
+
};
|
|
324
|
+
ctx.logger.info("Sent:");
|
|
325
|
+
ctx.logger.info(msg);
|
|
266
326
|
}
|
|
267
327
|
return msg;
|
|
268
328
|
}
|
|
269
329
|
__name(getRW, "getRW");
|
|
270
330
|
function apply(ctx) {
|
|
271
|
-
ctx.
|
|
272
|
-
|
|
331
|
+
ctx.i18n.define("zh-CN", require_zh_CN());
|
|
332
|
+
ctx.command("cx").action(async ({ session }) => {
|
|
333
|
+
const cx = await getServer(ctx, session);
|
|
334
|
+
if (cx["success"] == 0) {
|
|
335
|
+
return session.text(".msg", cx);
|
|
336
|
+
} else if (cx["success"] == 1) {
|
|
337
|
+
return session.text(".failed", cx);
|
|
338
|
+
} else {
|
|
339
|
+
return session.text(".forbidden", cx);
|
|
340
|
+
}
|
|
273
341
|
});
|
|
274
|
-
ctx.command("status"
|
|
275
|
-
|
|
342
|
+
ctx.command("status").action(async ({ session }) => {
|
|
343
|
+
const status = await getStatus(ctx, session);
|
|
344
|
+
if (status["success"] == 0) {
|
|
345
|
+
return session.text(".msg", status);
|
|
346
|
+
} else {
|
|
347
|
+
return session.text(".failed", status);
|
|
348
|
+
}
|
|
276
349
|
});
|
|
277
|
-
ctx.command("random [最小数:number] [最大数:number]"
|
|
278
|
-
|
|
350
|
+
ctx.command("random [最小数:number] [最大数:number]").action(async ({ session }, min, max) => {
|
|
351
|
+
const random = await getRandom(ctx, session, min, max);
|
|
352
|
+
return session.text(".msg", random);
|
|
279
353
|
});
|
|
280
|
-
ctx.command("info"
|
|
281
|
-
|
|
354
|
+
ctx.command("info").action(async ({ session }) => {
|
|
355
|
+
const info = await getInfo(ctx, session);
|
|
356
|
+
if (info["success"] == 0) {
|
|
357
|
+
return session.text(".msg", info);
|
|
358
|
+
} else {
|
|
359
|
+
return session.text(".failed", info);
|
|
360
|
+
}
|
|
282
361
|
});
|
|
283
|
-
ctx.command("rw"
|
|
284
|
-
|
|
362
|
+
ctx.command("rw").action(async ({ session }) => {
|
|
363
|
+
const rw = await getRW(ctx, session);
|
|
364
|
+
if (rw["success"] == 0) {
|
|
365
|
+
return session.text(".msg", rw);
|
|
366
|
+
} else if (rw["success"] == 1) {
|
|
367
|
+
return session.text(".failed1", rw);
|
|
368
|
+
} else {
|
|
369
|
+
return session.text(".failed2", rw);
|
|
370
|
+
}
|
|
285
371
|
});
|
|
286
372
|
}
|
|
287
373
|
__name(apply, "apply");
|
package/package.json
CHANGED
package/res/i18n.yaml
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
rw:
|
|
2
|
-
failed1: 获取失败(1)。
|
|
3
|
-
failed2: 获取失败(2)。
|
|
4
|
-
cx:
|
|
5
|
-
forbidden: 此指令不允许在本群使用。
|
|
6
|
-
notice: 进服指南请在群公告中查看。
|
|
7
|
-
players: 服务器当前人数
|
|
8
|
-
failed: 查询失败:
|
|
9
|
-
timeout: 请求超时。
|
|
10
|
-
later: 请稍后重试。
|
|
11
|
-
unknown: 未知错误。
|
|
12
|
-
close: 服务器已关闭。
|
|
13
|
-
status:
|
|
14
|
-
failed: 状态获取失败。
|
|
15
|
-
name: 系统名称:
|
|
16
|
-
cpu: CPU使用率:
|
|
17
|
-
memory: 内存使用率:
|
|
18
|
-
random:
|
|
19
|
-
sc: 生成的随机数:
|
|
20
|
-
info:
|
|
21
|
-
failed: 读取信息失败。
|