koishi-plugin-maibot 1.9.2 → 1.9.4

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/database.d.ts CHANGED
@@ -90,6 +90,10 @@ export interface MaiBotUserRebindState {
90
90
  userId: string;
91
91
  lastBindChangeAt: Date;
92
92
  }
93
+ export interface MaiBotUserTerms {
94
+ userId: string;
95
+ acceptedAt: Date;
96
+ }
93
97
  declare module 'koishi' {
94
98
  interface Tables {
95
99
  maibot_bindings: UserBinding;
@@ -101,6 +105,7 @@ declare module 'koishi' {
101
105
  maibot_group_priority: MaiBotGroupPriority;
102
106
  maibot_group_rebind_pending: MaiBotGroupRebindPending;
103
107
  maibot_user_rebind_state: MaiBotUserRebindState;
108
+ maibot_user_terms: MaiBotUserTerms;
104
109
  }
105
110
  }
106
111
  export declare function extendDatabase(ctx: Context): void;
@@ -1 +1 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
package/lib/database.js CHANGED
@@ -111,5 +111,11 @@ function extendDatabase(ctx) {
111
111
  }, {
112
112
  primary: 'userId',
113
113
  });
114
+ ctx.model.extend('maibot_user_terms', {
115
+ userId: 'string',
116
+ acceptedAt: 'timestamp',
117
+ }, {
118
+ primary: 'userId',
119
+ });
114
120
  }
115
121
  //# sourceMappingURL=database.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -45,6 +45,7 @@ export interface Config {
45
45
  maintenanceMode?: boolean;
46
46
  maintenanceMessage?: string;
47
47
  hideLockAndProtection?: boolean;
48
+ enableMaimile?: boolean;
48
49
  whitelist?: {
49
50
  enabled: boolean;
50
51
  guildIds: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/index.js CHANGED
@@ -68,6 +68,7 @@ exports.Config = koishi_1.Schema.object({
68
68
  maintenanceMode: koishi_1.Schema.boolean().default(false).description('维护模式开关,开启时所有指令都会提示维护信息'),
69
69
  maintenanceMessage: koishi_1.Schema.string().default('⚠️ Milk Server Studio 正在进行维护。具体清查阅 https://awmc.cc/').description('维护模式提示消息'),
70
70
  hideLockAndProtection: koishi_1.Schema.boolean().default(false).description('隐藏锁定模式和保护模式功能,开启后相关指令将不可用,状态信息也不会显示'),
71
+ enableMaimile: koishi_1.Schema.boolean().default(false).description('舞里程发放功能开关(默认关闭,因API暂不可用)'),
71
72
  whitelist: koishi_1.Schema.object({
72
73
  enabled: koishi_1.Schema.boolean().default(false).description('白名单开关,开启后只有白名单内的群可以使用Bot功能'),
73
74
  guildIds: koishi_1.Schema.array(koishi_1.Schema.string()).default(['1072033605']).description('允许使用Bot功能的群ID列表(兼容旧配置)'),
@@ -438,17 +439,21 @@ const COLLECTION_TYPE_OPTIONS = [
438
439
  { label: '亲密度礼物', value: 14 },
439
440
  { label: 'KALEIDXSCOPE 钥匙', value: 15 },
440
441
  ];
441
- async function promptCollectionType(session, timeout = 60000) {
442
- const optionsText = COLLECTION_TYPE_OPTIONS.map((opt, idx) => `${idx + 1}. ${opt.label}`).join('\n');
443
- await session.send(`请问你需要什么类型收藏品?\n\n${optionsText}\n\n请输入对应的数字(1-${COLLECTION_TYPE_OPTIONS.length}),${INTERACTIVE_CANCEL_HINT}`);
442
+ async function promptCollectionType(session, timeout = 60000, excludeValues = []) {
443
+ const availableOptions = COLLECTION_TYPE_OPTIONS.filter(opt => !excludeValues.includes(opt.value));
444
+ const optionsText = availableOptions.map((opt, idx) => `${idx + 1}. ${opt.label}`).join('\n');
445
+ await session.send(`请问你需要什么类型收藏品?\n\n${optionsText}\n\n请输入对应的数字(1-${availableOptions.length}),或输入 00 取消`);
444
446
  try {
445
447
  const answer = await session.prompt(timeout);
446
448
  if (isInteractiveCancel(answer)) {
447
449
  return null;
448
450
  }
449
- const choice = parseInt(answer?.trim() || '', 10);
450
- if (choice >= 1 && choice <= COLLECTION_TYPE_OPTIONS.length) {
451
- return COLLECTION_TYPE_OPTIONS[choice - 1].value;
451
+ const choice = parseInt(answer?.trim() || '0', 10);
452
+ if (choice === 0) {
453
+ return null;
454
+ }
455
+ if (choice >= 1 && choice <= availableOptions.length) {
456
+ return availableOptions[choice - 1].value;
452
457
  }
453
458
  return null;
454
459
  }
@@ -1900,6 +1905,7 @@ function apply(ctx, config) {
1900
1905
  const maintenanceMode = config.maintenanceMode ?? false;
1901
1906
  const maintenanceMessage = config.maintenanceMessage ?? '⚠️ Milk Server Studio 正在进行维护。具体清查阅 https://awmc.cc/';
1902
1907
  const hideLockAndProtection = config.hideLockAndProtection ?? false;
1908
+ const enableMaimile = config.enableMaimile ?? false;
1903
1909
  // 创建使用配置的 promptYes 函数
1904
1910
  const promptYesWithConfig = async (session, message, timeout) => {
1905
1911
  const actualTimeout = timeout ?? confirmTimeout;
@@ -1939,6 +1945,59 @@ function apply(ctx, config) {
1939
1945
  }
1940
1946
  return next();
1941
1947
  }, true); // 设置为 true 使其在早期执行,但不影响普通消息
1948
+ // 免责声明常量
1949
+ const TERMS_DISCLAIMER = `⚠️ 本BOT提供的部分服务(如发票、上传B50等)可能会对您的舞萌账户造成不良影响,您需悉知。\nAWMC TEAM不对用户使用上述服务可能造成的不良后果负责。`;
1950
+ const TERMS_ACCEPT_TEXT = '我已阅读并了解以上风险并接受使用本工具可能造成的不良后果';
1951
+ async function hasAcceptedTerms(userId) {
1952
+ if (!userId)
1953
+ return false;
1954
+ const rows = await ctx.database.get('maibot_user_terms', { userId });
1955
+ return rows.length > 0;
1956
+ }
1957
+ async function saveTermsAccepted(userId) {
1958
+ const existing = await ctx.database.get('maibot_user_terms', { userId });
1959
+ if (existing.length === 0) {
1960
+ await ctx.database.create('maibot_user_terms', { userId, acceptedAt: new Date() });
1961
+ }
1962
+ }
1963
+ // 免责声明中间件:拦截所有 mai 开头的命令,要求用户先接受免责声明
1964
+ ctx.middleware(async (session, next) => {
1965
+ const content = session.content?.trim() || '';
1966
+ // 匹配所有 mai 开头的命令
1967
+ if (!content.match(/^\/?mai/i)) {
1968
+ return next();
1969
+ }
1970
+ // 排除不需要声明的指令(帮助、绑定、ping、queue、alert)
1971
+ const baseCmd = content.replace(/^\//, '').split(/\s+/)[0] || '';
1972
+ const termsExempt = new Set(['mai', 'mai帮助', 'maiping', 'maiqueue', 'maialert', 'mai兑换卡密']);
1973
+ if (termsExempt.has(baseCmd) || baseCmd.startsWith('maialert') || baseCmd.startsWith('mai管理员') || baseCmd === 'maibypass') {
1974
+ return next();
1975
+ }
1976
+ const keys = await getSessionBindingKeys(ctx, session);
1977
+ const primaryUserId = keys[0] || String(session.userId || '');
1978
+ if (!primaryUserId) {
1979
+ return next();
1980
+ }
1981
+ // 已接受过,放行
1982
+ if (await hasAcceptedTerms(primaryUserId)) {
1983
+ return next();
1984
+ }
1985
+ // 未接受:显示免责声明,等待用户输入确认文本
1986
+ await session.send(`${TERMS_DISCLAIMER}\n\n请在 60 秒内输入以下内容以继续使用:\n${TERMS_ACCEPT_TEXT}`);
1987
+ try {
1988
+ const reply = await session.prompt(60000);
1989
+ const replyText = (reply || '').trim();
1990
+ if (replyText === TERMS_ACCEPT_TEXT) {
1991
+ await saveTermsAccepted(primaryUserId);
1992
+ await session.send('✅ 已确认,正在处理您的请求...');
1993
+ return next();
1994
+ }
1995
+ return '❌ 未输入正确的确认内容,操作已取消';
1996
+ }
1997
+ catch {
1998
+ return '❌ 确认超时,操作已取消';
1999
+ }
2000
+ }, true);
1942
2001
  /**
1943
2002
  * 从文本中提取用户ID(支持@userid格式、<at id="数字"/>格式或直接userid)
1944
2003
  */
@@ -2307,13 +2366,15 @@ function apply(ctx, config) {
2307
2366
  /mai发票 [倍数] [@用户] - 为他人发放功能票(需要auth等级${authLevelForProxy}以上)
2308
2367
  /mai清票 [@用户] - 清空他人的功能票(需要auth等级${authLevelForProxy}以上)`;
2309
2368
  }
2310
- helpText += `
2369
+ if (enableMaimile) {
2370
+ helpText += `
2311
2371
 
2312
2372
  🎮 游戏功能:
2313
2373
  /mai舞里程 <里程数> - 为账号发放舞里程(必须是1000的倍数)`;
2314
- if (canProxy) {
2315
- helpText += `
2374
+ if (canProxy) {
2375
+ helpText += `
2316
2376
  /mai舞里程 <里程数> [@用户] - 为他人发放舞里程(需要auth等级${authLevelForProxy}以上)`;
2377
+ }
2317
2378
  }
2318
2379
  helpText += `
2319
2380
 
@@ -4303,7 +4364,7 @@ function apply(ctx, config) {
4303
4364
  const userId = binding.userId;
4304
4365
  const proxyTip = isProxy ? `(代操作用户 ${userId})` : '';
4305
4366
  // 交互式选择收藏品类别
4306
- const itemKind = await promptCollectionType(session);
4367
+ const itemKind = await promptCollectionType(session, 60000, enableMaimile ? [] : [13]);
4307
4368
  if (itemKind === null) {
4308
4369
  return '操作已取消';
4309
4370
  }
@@ -4324,23 +4385,45 @@ function apply(ctx, config) {
4324
4385
  return '❌ 收藏品 ID 必须为数字,请重新输入';
4325
4386
  }
4326
4387
  }
4327
- const stockLimit = itemKind === 13 ? 99999 : 999;
4328
- await session.send(`请输入获取数量(正整数,最大 ${stockLimit})。${INTERACTIVE_CANCEL_HINT}`);
4329
- const promptStock = await waitForUserReply(session, ctx, 60000);
4330
- const stockInput = promptStock?.content?.trim() ?? '1';
4331
- if (isInteractiveCancel(stockInput)) {
4332
- return '操作已取消';
4388
+ const UNLOCK_LOCK_KINDS = new Set([1, 2, 3, 5, 6, 7]);
4389
+ const isUnlockLockKind = UNLOCK_LOCK_KINDS.has(itemKind);
4390
+ let stockFinal;
4391
+ if (isUnlockLockKind) {
4392
+ await session.send(`请输入操作模式(数字):\n` +
4393
+ ` 0 = 锁定\n` +
4394
+ ` 1 = 解锁(默认)\n\n` +
4395
+ INTERACTIVE_CANCEL_HINT);
4396
+ const promptStock = await waitForUserReply(session, ctx, 60000);
4397
+ const stockInput = promptStock?.content?.trim() ?? '1';
4398
+ if (isInteractiveCancel(stockInput)) {
4399
+ return '操作已取消';
4400
+ }
4401
+ const itemStock = parseInt(stockInput, 10);
4402
+ if (itemStock !== 0 && itemStock !== 1) {
4403
+ return '❌ 只能输入 0(锁定)或 1(解锁)';
4404
+ }
4405
+ stockFinal = itemStock;
4333
4406
  }
4334
- const itemStock = parseInt(stockInput, 10);
4335
- if (!Number.isInteger(itemStock) || itemStock < 1) {
4336
- return '❌ 数量必须为正整数,请重新执行指令并输入有效数量';
4407
+ else {
4408
+ const stockLimit = itemKind === 13 ? 99999 : 999;
4409
+ await session.send(`请输入获取数量(正整数,最大 ${stockLimit})。${INTERACTIVE_CANCEL_HINT}`);
4410
+ const promptStock = await waitForUserReply(session, ctx, 60000);
4411
+ const stockInput = promptStock?.content?.trim() ?? '1';
4412
+ if (isInteractiveCancel(stockInput)) {
4413
+ return '操作已取消';
4414
+ }
4415
+ const itemStock = parseInt(stockInput, 10);
4416
+ if (!Number.isInteger(itemStock) || itemStock < 1) {
4417
+ return '❌ 数量必须为正整数,请重新执行指令并输入有效数量';
4418
+ }
4419
+ stockFinal = Math.min(itemStock, stockLimit);
4337
4420
  }
4338
- const stockFinal = Math.min(itemStock, stockLimit);
4339
4421
  // 确认操作(如果未使用 -bypass)
4340
4422
  if (!options?.bypass) {
4423
+ const stockLabel = isUnlockLockKind ? (stockFinal === 0 ? '锁定' : '解锁') : `数量: ${stockFinal}`;
4341
4424
  const confirm = await promptYesLocal(session, `⚠️ 即将为 ${maskUserId(binding.maiUid)} 获取收藏品${proxyTip}\n类型: ${selectedType?.label}` +
4342
4425
  (itemKind === 13 ? '' : `\nID: ${itemId}`) +
4343
- `\n数量: ${stockFinal}\n确认继续?`);
4426
+ `\n${stockLabel}\n确认继续?`);
4344
4427
  if (!confirm) {
4345
4428
  return '操作已取消';
4346
4429
  }
@@ -4531,9 +4614,10 @@ function apply(ctx, config) {
4531
4614
  return `❌ 获取收藏品失败:${errorMsg}\n${qrOrLoginFailureHint()}`;
4532
4615
  }
4533
4616
  }
4617
+ const resultLabel = isUnlockLockKind ? (stockFinal === 0 ? '锁定' : '解锁') : `数量: ${stockFinal}`;
4534
4618
  return `✅ 已为 ${maskUserId(binding.maiUid)} 获取收藏品${proxyTip}\n类型: ${selectedType?.label}` +
4535
4619
  (itemKind === 13 ? '' : `\nID: ${itemId}`) +
4536
- `\n数量: ${stockFinal}`;
4620
+ `\n${resultLabel}`;
4537
4621
  }
4538
4622
  catch (error) {
4539
4623
  logger.error(`获取收藏品失败: ${sanitizeError(error)}`);