@zhin.js/adapter-icqq 5.0.2 → 6.0.1

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 (76) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +32 -4
  3. package/client/LoginAssistPanel.tsx +38 -3
  4. package/dist/index.js +2 -2
  5. package/lib/adapter.d.ts +12 -4
  6. package/lib/adapter.d.ts.map +1 -1
  7. package/lib/adapter.js +14 -6
  8. package/lib/adapter.js.map +1 -1
  9. package/lib/cq-message.d.ts.map +1 -1
  10. package/lib/cq-message.js +12 -3
  11. package/lib/cq-message.js.map +1 -1
  12. package/lib/endpoint.d.ts +12 -8
  13. package/lib/endpoint.d.ts.map +1 -1
  14. package/lib/endpoint.js +135 -47
  15. package/lib/endpoint.js.map +1 -1
  16. package/lib/icqq-guild.d.ts +48 -0
  17. package/lib/icqq-guild.d.ts.map +1 -0
  18. package/lib/icqq-guild.js +115 -0
  19. package/lib/icqq-guild.js.map +1 -0
  20. package/lib/icqq-inbound.d.ts +7 -0
  21. package/lib/icqq-inbound.d.ts.map +1 -1
  22. package/lib/icqq-inbound.js +39 -6
  23. package/lib/icqq-inbound.js.map +1 -1
  24. package/lib/icqq-login-assist-bridge.d.ts +5 -0
  25. package/lib/icqq-login-assist-bridge.d.ts.map +1 -0
  26. package/lib/icqq-login-assist-bridge.js +148 -0
  27. package/lib/icqq-login-assist-bridge.js.map +1 -0
  28. package/lib/index.d.ts +0 -2
  29. package/lib/index.d.ts.map +1 -1
  30. package/lib/index.js +2 -1
  31. package/lib/index.js.map +1 -1
  32. package/lib/login-assist-routes.d.ts +7 -0
  33. package/lib/login-assist-routes.d.ts.map +1 -0
  34. package/lib/login-assist-routes.js +29 -0
  35. package/lib/login-assist-routes.js.map +1 -0
  36. package/lib/login-ipc-contract.d.ts +44 -0
  37. package/lib/login-ipc-contract.d.ts.map +1 -0
  38. package/lib/login-ipc-contract.js +35 -0
  39. package/lib/login-ipc-contract.js.map +1 -0
  40. package/lib/protocol.d.ts +32 -1
  41. package/lib/protocol.d.ts.map +1 -1
  42. package/lib/protocol.js +23 -0
  43. package/lib/protocol.js.map +1 -1
  44. package/lib/segment-mapper.d.ts +2 -0
  45. package/lib/segment-mapper.d.ts.map +1 -0
  46. package/lib/segment-mapper.js +2 -0
  47. package/lib/segment-mapper.js.map +1 -0
  48. package/lib/tools/index.d.ts +1 -1
  49. package/lib/tools/index.js +8 -8
  50. package/lib/types.d.ts +0 -44
  51. package/lib/types.d.ts.map +1 -1
  52. package/package.json +18 -18
  53. package/skills/icqq/PERMITS.md +6 -6
  54. package/src/adapter.ts +14 -6
  55. package/src/cq-message.ts +11 -3
  56. package/src/endpoint.ts +169 -52
  57. package/src/icqq-guild.ts +157 -0
  58. package/src/icqq-inbound.ts +52 -7
  59. package/src/icqq-login-assist-bridge.ts +196 -0
  60. package/src/index.ts +2 -8
  61. package/src/login-assist-routes.ts +39 -0
  62. package/src/login-ipc-contract.ts +52 -0
  63. package/src/protocol.ts +32 -1
  64. package/src/segment-mapper.ts +1 -0
  65. package/src/tools/index.ts +9 -9
  66. package/src/types.ts +0 -45
  67. package/lib/typing-indicator-example.d.ts +0 -108
  68. package/lib/typing-indicator-example.d.ts.map +0 -1
  69. package/lib/typing-indicator-example.js +0 -220
  70. package/lib/typing-indicator-example.js.map +0 -1
  71. package/lib/typing-indicator.d.ts +0 -87
  72. package/lib/typing-indicator.d.ts.map +0 -1
  73. package/lib/typing-indicator.js +0 -225
  74. package/lib/typing-indicator.js.map +0 -1
  75. package/src/typing-indicator-example.ts +0 -269
  76. package/src/typing-indicator.ts +0 -313
package/lib/endpoint.js CHANGED
@@ -4,16 +4,17 @@
4
4
  * 不再直接依赖 @icqqjs/icqq 协议库。
5
5
  * 登录由 `icqq login` 完成,本 Endpoint 只负责连接守护进程并收发消息。
6
6
  */
7
- import { formatCompact, Message, segment } from 'zhin.js';
7
+ import { formatCompact, Message, segment, expandInteractiveSegmentsInContent, } from 'zhin.js';
8
8
  import { IpcClient } from "./ipc-client.js";
9
9
  import { Actions } from "./protocol.js";
10
10
  import { findIcqqNestedMessageSource, InboundMessageDeduper, isIcqqMessagePostType, normalizeIcqqInboundMessage, quotedPayloadFromIcqqSource, resolveIcqqQuoteIdFromEvent, resolveQuoteIdFromIcqqSource, shouldSkipSelfInboundMessage, unwrapIcqqIpcEventPayload, } from "./icqq-inbound.js";
11
11
  import { buildIcqqIpcMessage as buildIcqqIpcMessageImpl, parseCqMessage as parseCqMessageImpl, toCqString as toCqStringImpl, } from "./cq-message.js";
12
12
  import { materializeOutboundBase64, resolveIcqqOutboundMediaMode, } from "./outbound-media.js";
13
13
  import { formatIcqqMetaLog, formatIcqqNotice, formatIcqqRequest, isIcqqMetaPayload, isIcqqNoticePayload, isIcqqRequestPayload, resolveIcqqEventPostType, resolveSideEventDedupeKey, shouldRefreshListsOnMeta, } from "./icqq-side-events.js";
14
- import { enableTypingIndicator } from "./typing-indicator.js";
14
+ import { disposeIcqqLoginAssistBridge, handleIcqqLoginIpcEvent, } from "./icqq-login-assist-bridge.js";
15
15
  import { parseIcqqGetMsgResponse } from "./get-msg.js";
16
16
  import { enrichQuotedPayloadWithForward, isForwardPlaceholderPayload } from "./forward-msg.js";
17
+ import { IcqqGuildCatalog, isIcqqGuildIpcEvent, normalizeIcqqGuildInboundMessage, } from "./icqq-guild.js";
17
18
  export class IcqqEndpoint {
18
19
  adapter;
19
20
  $connected = false;
@@ -23,6 +24,8 @@ export class IcqqEndpoint {
23
24
  friends = new Map();
24
25
  /** 缓存的群列表 */
25
26
  groups = new Map();
27
+ /** QQ 频道(guild)子频道缓存 */
28
+ guildCatalog = new IcqqGuildCatalog();
26
29
  subscriptions = [];
27
30
  /** 事件去重:覆盖多端回流/服务端重复推送等场景 */
28
31
  inboundDeduper = new InboundMessageDeduper();
@@ -32,8 +35,6 @@ export class IcqqEndpoint {
32
35
  intentionalDisconnect = false;
33
36
  /** 是否已有重连循环在跑(避免多次 schedule 叠套) */
34
37
  reconnectRunning = false;
35
- /** Typing Indicator 管理器 */
36
- $typingIndicator;
37
38
  get $id() {
38
39
  return this.$config.name;
39
40
  }
@@ -55,46 +56,12 @@ export class IcqqEndpoint {
55
56
  port: rpc?.port,
56
57
  }));
57
58
  await this.rebindIpcSession();
58
- // 根据配置自动启用 Typing Indicator
59
- this.initTypingIndicator();
60
59
  this.logger.info(formatCompact({
61
60
  机器人: this.$id,
62
61
  好友数: this.friends.size,
63
62
  群组数: this.groups.size,
64
- 思考提示: this.$typingIndicator ? '已启用' : '未启用',
65
63
  }));
66
64
  }
67
- /**
68
- * 初始化 Typing Indicator
69
- * 根据配置自动启用或禁用
70
- */
71
- initTypingIndicator() {
72
- const typingConfig = this.$config.typingIndicator;
73
- // 如果配置中明确设置为 false,则不启用
74
- if (typingConfig?.enabled === false) {
75
- this.logger.debug(formatCompact({
76
- endpoint: this.$id,
77
- typingIndicator: 'disabled_by_config',
78
- }));
79
- return;
80
- }
81
- // 启用 Typing Indicator
82
- try {
83
- this.$typingIndicator = enableTypingIndicator(this, typingConfig);
84
- this.logger.debug(formatCompact({
85
- endpoint: this.$id,
86
- typingIndicator: 'enabled',
87
- emoji: typingConfig?.defaultEmoji || '⏳',
88
- }));
89
- }
90
- catch (error) {
91
- this.logger.warn(formatCompact({
92
- endpoint: this.$id,
93
- typingIndicator: 'failed',
94
- error: error instanceof Error ? error.message : String(error),
95
- }));
96
- }
97
- }
98
65
  /** 建立或恢复与守护进程的 IPC/RPC 会话(订阅、缓存列表) */
99
66
  async rebindIpcSession() {
100
67
  const uin = Number(this.$config.name);
@@ -195,27 +162,57 @@ export class IcqqEndpoint {
195
162
  this.groups.set(g.group_id, g);
196
163
  }
197
164
  }
165
+ await this.guildCatalog.syncAll(this.ipc).catch((e) => {
166
+ this.logger.warn(formatCompact({
167
+ op: "sync_guilds",
168
+ endpoint: this.$id,
169
+ ok: false,
170
+ error: e instanceof Error ? e.message : String(e),
171
+ }));
172
+ });
173
+ }
174
+ /** Console:列出 guild 子频道(含 parent.guild) */
175
+ getGuildChannelList() {
176
+ return this.guildCatalog.getGuildChannelList();
177
+ }
178
+ resolveConsoleChannelNames(channelId, guildId) {
179
+ return this.guildCatalog.resolveConsoleChannelNames(channelId, guildId);
198
180
  }
199
181
  // ── 断开 ───────────────────────────────────────────────────────────
200
182
  async $disconnect() {
201
183
  this.intentionalDisconnect = true;
202
- // 停止所有 Typing Indicator
203
- if (this.$typingIndicator) {
204
- await this.$typingIndicator.stopAll().catch(() => { });
205
- this.$typingIndicator = undefined;
206
- }
207
184
  this.ipc?.setOnRemoteDisconnect(null);
208
185
  for (const sub of this.subscriptions) {
209
186
  await sub.unsubscribe().catch(() => { });
210
187
  }
211
188
  this.subscriptions = [];
212
189
  this.inboundDeduper.clear();
190
+ disposeIcqqLoginAssistBridge(this.$id);
213
191
  this.ipc?.close();
214
192
  this.$connected = false;
215
193
  this.logger.info(formatCompact({ op: "disconnect", endpoint: this.$id }));
216
194
  }
217
195
  // ── 消息处理 ───────────────────────────────────────────────────────
218
196
  handleEvent(event) {
197
+ if (event.event?.startsWith("system.login.")) {
198
+ handleIcqqLoginIpcEvent(this, event.event, event.data);
199
+ return;
200
+ }
201
+ if (event.event === Actions.RELOAD_GUILDS) {
202
+ void this.guildCatalog.syncAll(this.ipc).catch((e) => {
203
+ this.logger.warn(formatCompact({
204
+ op: "reload_guilds",
205
+ endpoint: this.$id,
206
+ ok: false,
207
+ error: e instanceof Error ? e.message : String(e),
208
+ }));
209
+ });
210
+ return;
211
+ }
212
+ if (isIcqqGuildIpcEvent(event.event)) {
213
+ this.handleGuildMessageEvent(event);
214
+ return;
215
+ }
219
216
  const payload = unwrapIcqqIpcEventPayload(event);
220
217
  if (!payload || typeof payload !== "object") {
221
218
  if (process.env.ICQQ_IPC_LOG_RAW === "1") {
@@ -279,6 +276,67 @@ export class IcqqEndpoint {
279
276
  this.adapter.emit("message.receive", message);
280
277
  this.logger.debug(`${this.$id} recv ${message.$channel.type}(${message.$channel.id}):${segment.raw(message.$content)}${message.$quote_id ? ` quote_id=${message.$quote_id}` : ""}`);
281
278
  }
279
+ handleGuildMessageEvent(event) {
280
+ const payload = event.data;
281
+ if (!payload || typeof payload !== "object")
282
+ return;
283
+ const data = payload;
284
+ const normalized = normalizeIcqqGuildInboundMessage(data);
285
+ if (!normalized)
286
+ return;
287
+ this.guildCatalog.upsertFromInbound(data);
288
+ if (!this.inboundDeduper.shouldProcess(`guild:${normalized.messageId}`)) {
289
+ return;
290
+ }
291
+ void this.dispatchGuildInboundMessage(normalized);
292
+ }
293
+ async dispatchGuildInboundMessage(normalized) {
294
+ const message = this.$formatGuildMessage(normalized);
295
+ this.adapter.emit("message.receive", message);
296
+ this.logger.debug(`${this.$id} recv channel(${message.$channel.id}):${segment.raw(message.$content)}`);
297
+ }
298
+ $formatGuildMessage(normalized) {
299
+ const senderInfo = {
300
+ id: normalized.userId,
301
+ name: normalized.nickname,
302
+ };
303
+ const result = Message.from(normalized.raw, {
304
+ $id: normalized.messageId,
305
+ $adapter: "icqq",
306
+ $endpoint: this.$config.name,
307
+ $sender: senderInfo,
308
+ $channel: {
309
+ id: normalized.channelId,
310
+ type: "channel",
311
+ parent: { type: "guild", id: normalized.guildId },
312
+ },
313
+ $content: normalized.content,
314
+ $raw: normalized.rawMessage,
315
+ $timestamp: normalized.timestampMs,
316
+ $recall: async () => {
317
+ await this.$recallMessage(result.$id);
318
+ },
319
+ $reply: async (content, quote) => {
320
+ if (!Array.isArray(content))
321
+ content = [content];
322
+ if (quote) {
323
+ content.unshift({
324
+ type: "reply",
325
+ data: { id: typeof quote === "boolean" ? result.$id : quote },
326
+ });
327
+ }
328
+ return await this.adapter.sendMessage({
329
+ context: "icqq",
330
+ endpoint: this.$config.name,
331
+ id: normalized.channelId,
332
+ type: "channel",
333
+ parent: { type: "guild", id: normalized.guildId },
334
+ content,
335
+ });
336
+ },
337
+ });
338
+ return result;
339
+ }
282
340
  handleNoticeEvent(event) {
283
341
  const dedupeKey = resolveSideEventDedupeKey(event, "notice");
284
342
  if (!this.inboundDeduper.shouldProcess(dedupeKey)) {
@@ -384,6 +442,9 @@ export class IcqqEndpoint {
384
442
  $channel: {
385
443
  id: normalized.channelId,
386
444
  type: normalized.channelType,
445
+ ...(normalized.channelParentGroupId
446
+ ? { parent: { type: 'group', id: normalized.channelParentGroupId } }
447
+ : {}),
387
448
  },
388
449
  $content: normalized.content,
389
450
  $quote_id: quoteId,
@@ -496,19 +557,46 @@ export class IcqqEndpoint {
496
557
  // ── 发送消息 ───────────────────────────────────────────────────────
497
558
  async $sendMessage(options) {
498
559
  const outboundMedia = resolveIcqqOutboundMediaMode(this.$config);
499
- const content = materializeOutboundBase64(options.content, outboundMedia);
560
+ const expanded = expandInteractiveSegmentsInContent(options.content);
561
+ const qrcodeContent = expanded;
562
+ const content = materializeOutboundBase64(qrcodeContent, outboundMedia);
500
563
  const message = buildIcqqIpcMessageImpl(content);
501
564
  let action;
502
565
  let params;
503
566
  switch (options.type) {
504
- case "private":
505
- action = Actions.SEND_PRIVATE_MSG;
506
- params = { user_id: Number(options.id), message };
567
+ case "private": {
568
+ const groupParent = options.parent?.type === "group" ? options.parent.id : undefined;
569
+ if (groupParent) {
570
+ action = Actions.SEND_TEMP_MSG;
571
+ params = {
572
+ group_id: Number(groupParent),
573
+ user_id: Number(options.id),
574
+ message,
575
+ };
576
+ }
577
+ else {
578
+ action = Actions.SEND_PRIVATE_MSG;
579
+ params = { user_id: Number(options.id), message };
580
+ }
507
581
  break;
582
+ }
508
583
  case "group":
509
584
  action = Actions.SEND_GROUP_MSG;
510
585
  params = { group_id: Number(options.id), message };
511
586
  break;
587
+ case "channel": {
588
+ const guildId = options.parent?.type === "guild" ? options.parent.id : undefined;
589
+ if (!guildId) {
590
+ throw new Error('channel 发送需要 parent: { type: "guild", id: guild_id }');
591
+ }
592
+ action = Actions.GUILD_SEND_MSG;
593
+ params = {
594
+ guild_id: guildId,
595
+ channel_id: options.id,
596
+ message,
597
+ };
598
+ break;
599
+ }
512
600
  default:
513
601
  throw new Error(`不支持的频道类型: ${options.type}`);
514
602
  }
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../src/endpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../src/endpoint.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * ICQQ guild (QQ 频道) catalog sync, inbound normalize, Console channel list.
3
+ */
4
+ import type { MessageSegment } from "zhin.js";
5
+ import { type IpcGuildMessageEventData } from "./protocol.js";
6
+ import type { IpcClient } from "./ipc-client.js";
7
+ export interface IcqqGuildChannelEntry {
8
+ channel_id: string;
9
+ channel_name: string;
10
+ guild_id: string;
11
+ guild_name: string;
12
+ }
13
+ export interface NormalizedIcqqGuildInbound {
14
+ messageId: string;
15
+ channelId: string;
16
+ guildId: string;
17
+ guildName: string;
18
+ channelName: string;
19
+ userId: string;
20
+ nickname: string;
21
+ content: MessageSegment[];
22
+ rawMessage: string;
23
+ timestampMs: number;
24
+ raw: IpcGuildMessageEventData;
25
+ }
26
+ export declare class IcqqGuildCatalog {
27
+ private readonly channels;
28
+ private readonly guilds;
29
+ clear(): void;
30
+ syncAll(ipc: IpcClient): Promise<void>;
31
+ upsertFromInbound(data: IpcGuildMessageEventData): void;
32
+ getGuildChannelList(): Array<{
33
+ id: string;
34
+ name: string;
35
+ parent: {
36
+ type: "guild";
37
+ id: string;
38
+ name: string;
39
+ };
40
+ }>;
41
+ resolveConsoleChannelNames(channelId: string, guildId?: string): {
42
+ channelName?: string;
43
+ parentName?: string;
44
+ };
45
+ }
46
+ export declare function isIcqqGuildIpcEvent(eventName: string | undefined): boolean;
47
+ export declare function normalizeIcqqGuildInboundMessage(data: IpcGuildMessageEventData & Record<string, unknown>): NormalizedIcqqGuildInbound | null;
48
+ //# sourceMappingURL=icqq-guild.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icqq-guild.d.ts","sourceRoot":"","sources":["../src/icqq-guild.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAW,KAAK,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAIjD,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,wBAAwB,CAAC;CAC/B;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4C;IACrE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+D;IAEtF,KAAK,IAAI,IAAI;IAKP,OAAO,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B5C,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,IAAI;IAevD,mBAAmB,IAAI,KAAK,CAAC;QAC3B,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE;YAAE,IAAI,EAAE,OAAO,CAAC;YAAC,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KACrD,CAAC;IAYF,0BAA0B,CACxB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACf;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;CAWjD;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAE1E;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvD,0BAA0B,GAAG,IAAI,CAmCnC"}
@@ -0,0 +1,115 @@
1
+ import { Actions } from "./protocol.js";
2
+ import { parseCqMessage } from "./cq-message.js";
3
+ import { toCanonicalSegments } from "./segment-mapper.js";
4
+ export class IcqqGuildCatalog {
5
+ channels = new Map();
6
+ guilds = new Map();
7
+ clear() {
8
+ this.channels.clear();
9
+ this.guilds.clear();
10
+ }
11
+ async syncAll(ipc) {
12
+ const listResp = await ipc.request(Actions.GUILD_LIST);
13
+ if (!listResp.ok)
14
+ return;
15
+ const guildRows = Array.isArray(listResp.data) ? listResp.data : [];
16
+ for (const row of guildRows) {
17
+ const rec = row;
18
+ const guild_id = String(rec.guild_id ?? rec.id ?? "");
19
+ if (!guild_id)
20
+ continue;
21
+ const guild_name = String(rec.guild_name ?? rec.name ?? guild_id);
22
+ this.guilds.set(guild_id, { guild_id, guild_name });
23
+ const chResp = await ipc.request(Actions.GUILD_CHANNELS, { guild_id });
24
+ if (!chResp.ok || !Array.isArray(chResp.data))
25
+ continue;
26
+ for (const ch of chResp.data) {
27
+ const chRec = ch;
28
+ const channel_id = String(chRec.channel_id ?? chRec.id ?? "");
29
+ if (!channel_id)
30
+ continue;
31
+ const channel_name = String(chRec.channel_name ?? chRec.name ?? channel_id);
32
+ this.channels.set(channel_id, {
33
+ channel_id,
34
+ channel_name,
35
+ guild_id,
36
+ guild_name,
37
+ });
38
+ }
39
+ }
40
+ }
41
+ upsertFromInbound(data) {
42
+ const guild_id = String(data.guild_id ?? "");
43
+ const channel_id = String(data.channel_id ?? "");
44
+ if (!guild_id || !channel_id)
45
+ return;
46
+ const guild_name = String(data.guild_name ?? guild_id);
47
+ const channel_name = String(data.channel_name ?? channel_id);
48
+ this.guilds.set(guild_id, { guild_id, guild_name });
49
+ this.channels.set(channel_id, {
50
+ channel_id,
51
+ channel_name,
52
+ guild_id,
53
+ guild_name,
54
+ });
55
+ }
56
+ getGuildChannelList() {
57
+ return Array.from(this.channels.values()).map((entry) => ({
58
+ id: entry.channel_id,
59
+ name: entry.channel_name,
60
+ parent: {
61
+ type: "guild",
62
+ id: entry.guild_id,
63
+ name: entry.guild_name,
64
+ },
65
+ }));
66
+ }
67
+ resolveConsoleChannelNames(channelId, guildId) {
68
+ const entry = this.channels.get(channelId);
69
+ if (entry) {
70
+ return { channelName: entry.channel_name, parentName: entry.guild_name };
71
+ }
72
+ if (guildId) {
73
+ const guild = this.guilds.get(guildId);
74
+ return guild ? { parentName: guild.guild_name } : {};
75
+ }
76
+ return {};
77
+ }
78
+ }
79
+ export function isIcqqGuildIpcEvent(eventName) {
80
+ return typeof eventName === "string" && eventName.startsWith("message.guild");
81
+ }
82
+ export function normalizeIcqqGuildInboundMessage(data) {
83
+ if (data.type !== "guild")
84
+ return null;
85
+ const guildId = String(data.guild_id ?? "");
86
+ const channelId = String(data.channel_id ?? "");
87
+ if (!guildId || !channelId)
88
+ return null;
89
+ const userId = String(data.tiny_id ?? data.user_id ?? "");
90
+ const nickname = String(data.nickname ?? userId);
91
+ const rawMessage = String(data.raw_message ?? "");
92
+ const timestampMs = typeof data.time === "number" ? data.time * 1000 : Date.now();
93
+ const messageId = data.message_id != null && String(data.message_id) !== ""
94
+ ? String(data.message_id)
95
+ : data.seq != null
96
+ ? String(data.seq)
97
+ : `${data.time ?? 0}_${userId}_${channelId}`;
98
+ const parsed = parseCqMessage(rawMessage);
99
+ const canonical = toCanonicalSegments(parsed);
100
+ const content = canonical.length > 0 ? canonical : [{ type: "text", data: { text: rawMessage } }];
101
+ return {
102
+ messageId,
103
+ channelId,
104
+ guildId,
105
+ guildName: String(data.guild_name ?? guildId),
106
+ channelName: String(data.channel_name ?? channelId),
107
+ userId,
108
+ nickname,
109
+ content,
110
+ rawMessage,
111
+ timestampMs,
112
+ raw: data,
113
+ };
114
+ }
115
+ //# sourceMappingURL=icqq-guild.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icqq-guild.js","sourceRoot":"","sources":["../src/icqq-guild.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,8 @@ export interface IcqqIpcMessageEvent extends IcqqIpcEventBase {
26
26
  user_uid?: string;
27
27
  nickname?: string;
28
28
  card?: string;
29
+ /** 群临时会话来源群号 */
30
+ group_id?: number;
29
31
  /** NT/IPC 群成员角色:owner | admin | member */
30
32
  role?: GroupRole | string;
31
33
  };
@@ -74,6 +76,8 @@ export interface NormalizedIcqqInbound {
74
76
  idSource: "message_id" | "msg_id" | "seq" | "synthetic";
75
77
  channelType: "group" | "private";
76
78
  channelId: string;
79
+ /** 群临时会话:来源群号 */
80
+ channelParentGroupId?: string;
77
81
  userId: string;
78
82
  nickname: string;
79
83
  /** 群聊时来自 IPC sender.role(私聊无) */
@@ -95,9 +99,12 @@ export declare function unwrapIcqqIpcEventPayload(event: {
95
99
  export declare function resolveIcqqInboundUserId(data: Record<string, unknown>): number | undefined;
96
100
  export declare function isIcqqMessagePostType(data: unknown): data is IcqqIpcMessageEvent;
97
101
  export declare function shouldSkipSelfInboundMessage(data: IcqqIpcMessageEvent): boolean;
102
+ /** 群临时会话私聊:icqq message_type=private & sub_type=group */
103
+ export declare function isIcqqGroupTempPrivateMessage(data: IcqqIpcMessageEvent): boolean;
98
104
  export declare function resolveChannelFromIcqqMessage(data: IcqqIpcMessageEvent): {
99
105
  channelType: "group" | "private";
100
106
  channelId: string;
107
+ channelParentGroupId?: string;
101
108
  };
102
109
  export declare function resolveIcqqInboundMessageId(data: IcqqIpcMessageEvent, channelId: string): {
103
110
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"icqq-inbound.d.ts","sourceRoot":"","sources":["../src/icqq-inbound.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"icqq-inbound.d.ts","sourceRoot":"","sources":["../src/icqq-inbound.ts"],"names":[],"mappings":"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"}