koishi-plugin-cocoyyy-console 1.0.13-beta.0 → 1.0.14-beta.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/index.js +26 -69
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -506,7 +506,7 @@ async function randomImgByTag(tag_name, guild_id) {
|
|
|
506
506
|
if (!existed) {
|
|
507
507
|
throw new Error(`not found tag '${tag_name}'!`);
|
|
508
508
|
}
|
|
509
|
-
if (existed.status ==
|
|
509
|
+
if (existed.status == 1) {
|
|
510
510
|
throw new Error(`not found tag '${tag_name}'!`);
|
|
511
511
|
}
|
|
512
512
|
let ImgList = await Img.findAll({
|
|
@@ -580,7 +580,6 @@ __name(endBatchAddImg, "endBatchAddImg");
|
|
|
580
580
|
// src/services/tag_func/tag_service.ts
|
|
581
581
|
async function findTagByName(tag_name, guild_id) {
|
|
582
582
|
const Tag = getTagsModel();
|
|
583
|
-
logger.info("search guild:" + guild_id + ", tag:" + tag_name);
|
|
584
583
|
return await Tag.findOne({
|
|
585
584
|
where: {
|
|
586
585
|
status: 0,
|
|
@@ -1264,10 +1263,14 @@ ${list.map((item) => (0, import_koishi8.h)("at", { id: item })).join(",")}`;
|
|
|
1264
1263
|
if (!exec.result)
|
|
1265
1264
|
return `${target_uid}不在当前群聊中`;
|
|
1266
1265
|
}
|
|
1266
|
+
if (ctx.bots[session.uid]) {
|
|
1267
|
+
logger.info(`[rbqinstead] botId: ${session.uid}, sourceId: ${source_uid}, targetId: ${target_uid}`);
|
|
1268
|
+
return `已替换rbq:${(0, import_koishi8.h)("at", { id: source_uid })} -> ${(0, import_koishi8.h)("at", { id: target_uid })}`;
|
|
1269
|
+
}
|
|
1267
1270
|
exec = await instead_person(session.guildId, source_uid, target_uid);
|
|
1268
1271
|
if (!exec.result)
|
|
1269
1272
|
return `替换rbq失败:${exec.error}`;
|
|
1270
|
-
return `已替换rbq:${source_uid} -> ${target_uid}`;
|
|
1273
|
+
return `已替换rbq:${(0, import_koishi8.h)("at", { id: source_uid })} -> ${(0, import_koishi8.h)("at", { id: target_uid })}`;
|
|
1271
1274
|
});
|
|
1272
1275
|
ctx.command("rbqadd_txt <参数>", "添加自定义文本").action(async ({ session }, ...args) => {
|
|
1273
1276
|
if (!dev_mode) {
|
|
@@ -1319,62 +1322,16 @@ ${list.map((item) => (0, import_koishi8.h)("at", { id: item })).join(",")}`;
|
|
|
1319
1322
|
__name(registerRbqCommands, "registerRbqCommands");
|
|
1320
1323
|
|
|
1321
1324
|
// src/services/test_command.ts
|
|
1322
|
-
var import_axios = __toESM(require("axios"));
|
|
1323
|
-
var import_qs = __toESM(require("qs"));
|
|
1324
|
-
var userMap = /* @__PURE__ */ new Map();
|
|
1325
1325
|
function registerTestCommands(ctx) {
|
|
1326
1326
|
ctx.command("test <参数>", "test").action(async ({ session }, phoneNumber, code) => {
|
|
1327
|
-
if (!phoneNumber || !code) return "请提供手机号和验证码";
|
|
1328
1327
|
try {
|
|
1329
|
-
const token = await getToken(phoneNumber, code);
|
|
1330
|
-
if (token.status) {
|
|
1331
|
-
return `验证码登录成功,库街区用户: ${token.data.userName}`;
|
|
1332
|
-
} else {
|
|
1333
|
-
return `验证码登录失败: ${token.msg}`;
|
|
1334
|
-
}
|
|
1335
1328
|
} catch (err) {
|
|
1336
1329
|
console.error(err);
|
|
1337
1330
|
return `test error: ${err.message}`;
|
|
1338
1331
|
}
|
|
1339
1332
|
});
|
|
1340
|
-
ctx.command("getuser <参数>", "getuser").action(async ({ session }, mobile) => {
|
|
1341
|
-
if (!mobile) return "请提供手机号";
|
|
1342
|
-
const user = userMap.get(mobile);
|
|
1343
|
-
if (user) {
|
|
1344
|
-
return `库街区用户: ${JSON.stringify(user)}`;
|
|
1345
|
-
} else {
|
|
1346
|
-
return `库街区用户不存在`;
|
|
1347
|
-
}
|
|
1348
|
-
});
|
|
1349
1333
|
}
|
|
1350
1334
|
__name(registerTestCommands, "registerTestCommands");
|
|
1351
|
-
var CONSTANTS = {
|
|
1352
|
-
REQUEST_HEADERS_BASE: {
|
|
1353
|
-
"source": "ios"
|
|
1354
|
-
}
|
|
1355
|
-
};
|
|
1356
|
-
async function getToken(mobile, code) {
|
|
1357
|
-
const devCode = [...Array(40)].map(() => "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"[Math.random() * 36 | 0]).join("");
|
|
1358
|
-
let data = import_qs.default.stringify({
|
|
1359
|
-
mobile,
|
|
1360
|
-
code
|
|
1361
|
-
});
|
|
1362
|
-
try {
|
|
1363
|
-
const response = await import_axios.default.post("https://api.kurobbs.com/user/sdkLogin", data, { headers: { ...CONSTANTS.REQUEST_HEADERS_BASE, devCode } });
|
|
1364
|
-
if (response.data.code === 200) {
|
|
1365
|
-
userMap.set(mobile, response.data.data);
|
|
1366
|
-
logger.info(`验证码登录成功,库街区用户: ${response.data.data.userName}`);
|
|
1367
|
-
return { status: true, data: response.data.data };
|
|
1368
|
-
} else {
|
|
1369
|
-
logger.error(`验证码登录失败: ${response.data.msg}`);
|
|
1370
|
-
return { status: false, msg: response.data.msg };
|
|
1371
|
-
}
|
|
1372
|
-
} catch (error) {
|
|
1373
|
-
logger.error(`验证码登录失败,疑似网络问题: ${error}`);
|
|
1374
|
-
return { status: false, msg: "登录失败,疑似网络问题,请检查控制台日志" };
|
|
1375
|
-
}
|
|
1376
|
-
}
|
|
1377
|
-
__name(getToken, "getToken");
|
|
1378
1335
|
|
|
1379
1336
|
// src/infra/redis_init.ts
|
|
1380
1337
|
var import_ioredis = __toESM(require("ioredis"));
|
|
@@ -1395,8 +1352,8 @@ function init_redis(config) {
|
|
|
1395
1352
|
__name(init_redis, "init_redis");
|
|
1396
1353
|
|
|
1397
1354
|
// src/services/kuro_func/kuro_service.ts
|
|
1398
|
-
var
|
|
1399
|
-
var
|
|
1355
|
+
var import_axios = __toESM(require("axios"));
|
|
1356
|
+
var import_qs = __toESM(require("qs"));
|
|
1400
1357
|
|
|
1401
1358
|
// src/models/kuro_user.ts
|
|
1402
1359
|
var import_sequelize8 = require("sequelize");
|
|
@@ -1504,7 +1461,7 @@ __name(createUpdateUser, "createUpdateUser");
|
|
|
1504
1461
|
|
|
1505
1462
|
// src/services/kuro_func/kuro_service.ts
|
|
1506
1463
|
var userTokenMap = /* @__PURE__ */ new Map();
|
|
1507
|
-
var
|
|
1464
|
+
var CONSTANTS = {
|
|
1508
1465
|
BASE_URL: "https://api.kurobbs.com",
|
|
1509
1466
|
LOGIN_URL: "/user/sdkLogin",
|
|
1510
1467
|
GAME_DATA_URL: "/gamer/role/list",
|
|
@@ -1528,11 +1485,11 @@ var CONSTANTS2 = {
|
|
|
1528
1485
|
"source": "ios"
|
|
1529
1486
|
}
|
|
1530
1487
|
};
|
|
1531
|
-
var wavesApi =
|
|
1488
|
+
var wavesApi = import_axios.default.create();
|
|
1532
1489
|
wavesApi.interceptors.request.use(
|
|
1533
1490
|
async (config) => {
|
|
1534
1491
|
if (config.url.startsWith("/")) {
|
|
1535
|
-
config.url =
|
|
1492
|
+
config.url = CONSTANTS.BASE_URL + config.url;
|
|
1536
1493
|
}
|
|
1537
1494
|
return config;
|
|
1538
1495
|
},
|
|
@@ -1574,18 +1531,18 @@ async function checkUserToken(qq_uid) {
|
|
|
1574
1531
|
return userInfo;
|
|
1575
1532
|
}
|
|
1576
1533
|
__name(checkUserToken, "checkUserToken");
|
|
1577
|
-
async function
|
|
1534
|
+
async function getToken(session, mobile, code) {
|
|
1578
1535
|
const existed = await checkUserToken(session.uid);
|
|
1579
1536
|
if (existed) {
|
|
1580
1537
|
return { status: true, data: existed };
|
|
1581
1538
|
}
|
|
1582
1539
|
const devCode = [...Array(40)].map(() => "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"[Math.random() * 36 | 0]).join("");
|
|
1583
|
-
let data =
|
|
1540
|
+
let data = import_qs.default.stringify({
|
|
1584
1541
|
mobile,
|
|
1585
1542
|
code
|
|
1586
1543
|
});
|
|
1587
1544
|
try {
|
|
1588
|
-
const user_response = await wavesApi.post(
|
|
1545
|
+
const user_response = await wavesApi.post(CONSTANTS.LOGIN_URL, data, { headers: { ...CONSTANTS.REQUEST_HEADERS_BASE, devCode } });
|
|
1589
1546
|
if (user_response.data.code != 200) {
|
|
1590
1547
|
logger.error(`验证码登录失败: ${user_response.data.msg}`);
|
|
1591
1548
|
return { status: false, msg: user_response.data.msg };
|
|
@@ -1619,13 +1576,13 @@ async function getToken2(session, mobile, code) {
|
|
|
1619
1576
|
return { status: false, msg: "疑似网络问题,请检查控制台日志" };
|
|
1620
1577
|
}
|
|
1621
1578
|
}
|
|
1622
|
-
__name(
|
|
1579
|
+
__name(getToken, "getToken");
|
|
1623
1580
|
async function getGameData(token) {
|
|
1624
1581
|
try {
|
|
1625
|
-
let data =
|
|
1582
|
+
let data = import_qs.default.stringify({
|
|
1626
1583
|
"gameId": 3
|
|
1627
1584
|
});
|
|
1628
|
-
const response = await wavesApi.post(
|
|
1585
|
+
const response = await wavesApi.post(CONSTANTS.GAME_DATA_URL, data, { headers: { ...CONSTANTS.REQUEST_HEADERS_BASE, "token": token } });
|
|
1629
1586
|
if (response.data.code === 200) {
|
|
1630
1587
|
return { status: true, data: response.data.data[0] };
|
|
1631
1588
|
} else {
|
|
@@ -1639,12 +1596,12 @@ async function getGameData(token) {
|
|
|
1639
1596
|
}
|
|
1640
1597
|
__name(getGameData, "getGameData");
|
|
1641
1598
|
async function isAvailable(serverId, roleId, token) {
|
|
1642
|
-
let data =
|
|
1599
|
+
let data = import_qs.default.stringify({
|
|
1643
1600
|
"serverId": serverId,
|
|
1644
1601
|
"roleId": roleId
|
|
1645
1602
|
});
|
|
1646
1603
|
try {
|
|
1647
|
-
const response = await wavesApi.post(
|
|
1604
|
+
const response = await wavesApi.post(CONSTANTS.TOKEN_REFRESH_URL, data, { headers: { ...CONSTANTS.REQUEST_HEADERS_BASE, "token": token } });
|
|
1648
1605
|
if (response.data.code === 220) {
|
|
1649
1606
|
logger.info(`${roleId} 获取可用性成功,账号已过期`);
|
|
1650
1607
|
return { status: false, msg: "账号已过期" };
|
|
@@ -1659,13 +1616,13 @@ async function isAvailable(serverId, roleId, token) {
|
|
|
1659
1616
|
}
|
|
1660
1617
|
__name(isAvailable, "isAvailable");
|
|
1661
1618
|
async function refreshData(bat, serverId, roleId, token) {
|
|
1662
|
-
let data =
|
|
1619
|
+
let data = import_qs.default.stringify({
|
|
1663
1620
|
"gameId": 3,
|
|
1664
1621
|
"serverId": serverId,
|
|
1665
1622
|
"roleId": roleId
|
|
1666
1623
|
});
|
|
1667
1624
|
try {
|
|
1668
|
-
const response = await wavesApi.post(
|
|
1625
|
+
const response = await wavesApi.post(CONSTANTS.REFRESH_URL, data, { headers: { ...CONSTANTS.REQUEST_HEADERS_BASE, "token": token, "b-at": bat } });
|
|
1669
1626
|
if (response.data.code === 10902 || response.data.code === 200) {
|
|
1670
1627
|
return { status: true, data: response.data.data };
|
|
1671
1628
|
} else {
|
|
@@ -1684,7 +1641,7 @@ async function signIn(qq_uid) {
|
|
|
1684
1641
|
return { status: false, msg: "未检测到登录信息或信息已过期,请重新登录!" };
|
|
1685
1642
|
}
|
|
1686
1643
|
await refreshData(userInfo.bat, userInfo.server_id, userInfo.role_id, userInfo.token);
|
|
1687
|
-
let data =
|
|
1644
|
+
let data = import_qs.default.stringify({
|
|
1688
1645
|
"gameId": 3,
|
|
1689
1646
|
"serverId": userInfo.server_id,
|
|
1690
1647
|
"roleId": userInfo.role_id,
|
|
@@ -1692,7 +1649,7 @@ async function signIn(qq_uid) {
|
|
|
1692
1649
|
"reqMonth": ((/* @__PURE__ */ new Date()).getMonth() + 1).toString().padStart(2, "0")
|
|
1693
1650
|
});
|
|
1694
1651
|
try {
|
|
1695
|
-
const response = await wavesApi.post(
|
|
1652
|
+
const response = await wavesApi.post(CONSTANTS.SIGNIN_URL, data, { headers: { ...CONSTANTS.REQUEST_HEADERS_BASE, "token": userInfo.token, devcode: "", "b-at": userInfo.bat } });
|
|
1696
1653
|
if (response.data.code === 200) {
|
|
1697
1654
|
if (response.data.data === null) {
|
|
1698
1655
|
logger.info(`[signIn Info]: ${qq_uid} 签到失败,返回空数据`);
|
|
@@ -1715,13 +1672,13 @@ async function getRoleData(qq_uid) {
|
|
|
1715
1672
|
return { status: false, msg: "未检测到登录信息或信息已过期,请重新登录!" };
|
|
1716
1673
|
}
|
|
1717
1674
|
await refreshData(userInfo.bat, userInfo.server_id, userInfo.role_id, userInfo.token);
|
|
1718
|
-
let data =
|
|
1675
|
+
let data = import_qs.default.stringify({
|
|
1719
1676
|
"gameId": 3,
|
|
1720
1677
|
"serverId": userInfo.server_id,
|
|
1721
1678
|
"roleId": userInfo.role_id
|
|
1722
1679
|
});
|
|
1723
1680
|
try {
|
|
1724
|
-
const response = await wavesApi.post(
|
|
1681
|
+
const response = await wavesApi.post(CONSTANTS.ROLE_DATA_URL, data, { headers: { ...CONSTANTS.REQUEST_HEADERS_BASE, "token": userInfo.token, "b-at": userInfo.bat } });
|
|
1725
1682
|
if (response.data.code === 10902 || response.data.code === 200) {
|
|
1726
1683
|
response.data.data = JSON.parse(response.data.data);
|
|
1727
1684
|
if (response.data.data === null || !response.data.data.showToGuest) {
|
|
@@ -1751,7 +1708,7 @@ function registerKuroCommands(ctx, connected) {
|
|
|
1751
1708
|
}
|
|
1752
1709
|
if (!phoneNumber || !code) return "请提供手机号和验证码,如:@bot login [手机号] [验证码]";
|
|
1753
1710
|
try {
|
|
1754
|
-
const result = await
|
|
1711
|
+
const result = await getToken(session, phoneNumber, code);
|
|
1755
1712
|
if (result.status) {
|
|
1756
1713
|
return `登录成功,库街区用户: ${result.data.user_name}`;
|
|
1757
1714
|
} else {
|