@soimy/dingtalk 3.6.0 → 3.6.2-beta.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 (174) hide show
  1. package/README.md +4 -1
  2. package/dist/index.d.ts +14 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +14443 -0
  5. package/dist/index.js.map +7 -0
  6. package/dist/src/access-control.d.ts +43 -0
  7. package/dist/src/access-control.d.ts.map +1 -0
  8. package/dist/src/ack-reaction/dynamic-ack-reaction-controller.d.ts +22 -0
  9. package/dist/src/ack-reaction/dynamic-ack-reaction-controller.d.ts.map +1 -0
  10. package/dist/src/ack-reaction/dynamic-ack-reaction-events.d.ts +36 -0
  11. package/dist/src/ack-reaction/dynamic-ack-reaction-events.d.ts.map +1 -0
  12. package/dist/src/ack-reaction/dynamic-ack-reaction-progress.d.ts +7 -0
  13. package/dist/src/ack-reaction/dynamic-ack-reaction-progress.d.ts.map +1 -0
  14. package/dist/src/ack-reaction-classifier.d.ts +8 -0
  15. package/dist/src/ack-reaction-classifier.d.ts.map +1 -0
  16. package/dist/src/ack-reaction-service.d.ts +15 -0
  17. package/dist/src/ack-reaction-service.d.ts.map +1 -0
  18. package/dist/src/auth.d.ts +7 -0
  19. package/dist/src/auth.d.ts.map +1 -0
  20. package/dist/src/card/card-action-handler.d.ts +14 -0
  21. package/dist/src/card/card-action-handler.d.ts.map +1 -0
  22. package/dist/src/card/card-markdown-image-reroute.d.ts +16 -0
  23. package/dist/src/card/card-markdown-image-reroute.d.ts.map +1 -0
  24. package/dist/src/card/card-run-registry.d.ts +60 -0
  25. package/dist/src/card/card-run-registry.d.ts.map +1 -0
  26. package/dist/src/card/card-stop-handler.d.ts +18 -0
  27. package/dist/src/card/card-stop-handler.d.ts.map +1 -0
  28. package/dist/src/card/card-streaming-mode.d.ts +8 -0
  29. package/dist/src/card/card-streaming-mode.d.ts.map +1 -0
  30. package/dist/src/card/card-template.d.ts +21 -0
  31. package/dist/src/card/card-template.d.ts.map +1 -0
  32. package/dist/src/card/reasoning-answer-split.d.ts +6 -0
  33. package/dist/src/card/reasoning-answer-split.d.ts.map +1 -0
  34. package/dist/src/card/reasoning-block-assembler.d.ts +7 -0
  35. package/dist/src/card/reasoning-block-assembler.d.ts.map +1 -0
  36. package/dist/src/card/statusline-renderer.d.ts +24 -0
  37. package/dist/src/card/statusline-renderer.d.ts.map +1 -0
  38. package/dist/src/card-callback-service.d.ts +23 -0
  39. package/dist/src/card-callback-service.d.ts.map +1 -0
  40. package/dist/src/card-draft-controller.d.ts +75 -0
  41. package/dist/src/card-draft-controller.d.ts.map +1 -0
  42. package/dist/src/card-service.d.ts +99 -0
  43. package/dist/src/card-service.d.ts.map +1 -0
  44. package/dist/src/channel.d.ts +10 -0
  45. package/dist/src/channel.d.ts.map +1 -0
  46. package/dist/src/command/card-stop-command.d.ts +30 -0
  47. package/dist/src/command/card-stop-command.d.ts.map +1 -0
  48. package/dist/src/command/inbound-command-dispatch-service.d.ts +40 -0
  49. package/dist/src/command/inbound-command-dispatch-service.d.ts.map +1 -0
  50. package/dist/src/config-schema.d.ts +8 -0
  51. package/dist/src/config-schema.d.ts.map +1 -0
  52. package/dist/src/config.d.ts +60 -0
  53. package/dist/src/config.d.ts.map +1 -0
  54. package/dist/src/connection-manager.d.ts +148 -0
  55. package/dist/src/connection-manager.d.ts.map +1 -0
  56. package/dist/src/dedup.d.ts +4 -0
  57. package/dist/src/dedup.d.ts.map +1 -0
  58. package/dist/src/device-registration.d.ts +16 -0
  59. package/dist/src/device-registration.d.ts.map +1 -0
  60. package/dist/src/docs-service.d.ts +12 -0
  61. package/dist/src/docs-service.d.ts.map +1 -0
  62. package/dist/src/draft-stream-loop.d.ts +28 -0
  63. package/dist/src/draft-stream-loop.d.ts.map +1 -0
  64. package/dist/src/feedback-learning-service.d.ts +123 -0
  65. package/dist/src/feedback-learning-service.d.ts.map +1 -0
  66. package/dist/src/feedback-learning-store.d.ts +181 -0
  67. package/dist/src/feedback-learning-store.d.ts.map +1 -0
  68. package/dist/src/gateway/channel-gateway.d.ts +4 -0
  69. package/dist/src/gateway/channel-gateway.d.ts.map +1 -0
  70. package/dist/src/http-client.d.ts +9 -0
  71. package/dist/src/http-client.d.ts.map +1 -0
  72. package/dist/src/inbound-handler.d.ts +9 -0
  73. package/dist/src/inbound-handler.d.ts.map +1 -0
  74. package/dist/src/learning-command-service.d.ts +64 -0
  75. package/dist/src/learning-command-service.d.ts.map +1 -0
  76. package/dist/src/logger-context.d.ts +10 -0
  77. package/dist/src/logger-context.d.ts.map +1 -0
  78. package/dist/src/media-utils.d.ts +63 -0
  79. package/dist/src/media-utils.d.ts.map +1 -0
  80. package/dist/src/message-context-store.d.ts +126 -0
  81. package/dist/src/message-context-store.d.ts.map +1 -0
  82. package/dist/src/message-utils.d.ts +12 -0
  83. package/dist/src/message-utils.d.ts.map +1 -0
  84. package/dist/src/messaging/attachment-text-extractor.d.ts +13 -0
  85. package/dist/src/messaging/attachment-text-extractor.d.ts.map +1 -0
  86. package/dist/src/messaging/btw-deliver.d.ts +42 -0
  87. package/dist/src/messaging/btw-deliver.d.ts.map +1 -0
  88. package/dist/src/messaging/channel-actions.d.ts +3 -0
  89. package/dist/src/messaging/channel-actions.d.ts.map +1 -0
  90. package/dist/src/messaging/channel-outbound.d.ts +3 -0
  91. package/dist/src/messaging/channel-outbound.d.ts.map +1 -0
  92. package/dist/src/messaging/quoted-context.d.ts +36 -0
  93. package/dist/src/messaging/quoted-context.d.ts.map +1 -0
  94. package/dist/src/messaging/quoted-file-service.d.ts +25 -0
  95. package/dist/src/messaging/quoted-file-service.d.ts.map +1 -0
  96. package/dist/src/messaging/quoted-ref.d.ts +12 -0
  97. package/dist/src/messaging/quoted-ref.d.ts.map +1 -0
  98. package/dist/src/onboarding.d.ts +4 -0
  99. package/dist/src/onboarding.d.ts.map +1 -0
  100. package/dist/src/path-utils.d.ts +3 -0
  101. package/dist/src/path-utils.d.ts.map +1 -0
  102. package/dist/src/peer-id-registry.d.ts +35 -0
  103. package/dist/src/peer-id-registry.d.ts.map +1 -0
  104. package/dist/src/persistence-store.d.ts +27 -0
  105. package/dist/src/persistence-store.d.ts.map +1 -0
  106. package/dist/src/platform/channel-status.d.ts +3 -0
  107. package/dist/src/platform/channel-status.d.ts.map +1 -0
  108. package/dist/src/plugin-sdk-channel-actions-augment.d.ts +7 -0
  109. package/dist/src/plugin-sdk-channel-actions-augment.d.ts.map +1 -0
  110. package/dist/src/proactive-risk-registry.d.ts +22 -0
  111. package/dist/src/proactive-risk-registry.d.ts.map +1 -0
  112. package/dist/src/reply-strategy-card.d.ts +14 -0
  113. package/dist/src/reply-strategy-card.d.ts.map +1 -0
  114. package/dist/src/reply-strategy-markdown.d.ts +10 -0
  115. package/dist/src/reply-strategy-markdown.d.ts.map +1 -0
  116. package/dist/src/reply-strategy-types.d.ts +85 -0
  117. package/dist/src/reply-strategy-types.d.ts.map +1 -0
  118. package/dist/src/reply-strategy-with-reaction.d.ts +47 -0
  119. package/dist/src/reply-strategy-with-reaction.d.ts.map +1 -0
  120. package/dist/src/reply-strategy.d.ts +14 -0
  121. package/dist/src/reply-strategy.d.ts.map +1 -0
  122. package/dist/src/run-usage-store.d.ts +15 -0
  123. package/dist/src/run-usage-store.d.ts.map +1 -0
  124. package/dist/src/runtime.d.ts +4 -0
  125. package/dist/src/runtime.d.ts.map +1 -0
  126. package/dist/src/secret-input.d.ts +42 -0
  127. package/dist/src/secret-input.d.ts.map +1 -0
  128. package/dist/src/send-service.d.ts +46 -0
  129. package/dist/src/send-service.d.ts.map +1 -0
  130. package/dist/src/session-command-service.d.ts +35 -0
  131. package/dist/src/session-command-service.d.ts.map +1 -0
  132. package/dist/src/session-lock.d.ts +11 -0
  133. package/dist/src/session-lock.d.ts.map +1 -0
  134. package/dist/src/session-peer-store.d.ts +21 -0
  135. package/dist/src/session-peer-store.d.ts.map +1 -0
  136. package/dist/src/session-routing.d.ts +14 -0
  137. package/dist/src/session-routing.d.ts.map +1 -0
  138. package/dist/src/session-state.d.ts +13 -0
  139. package/dist/src/session-state.d.ts.map +1 -0
  140. package/dist/src/signature.d.ts +6 -0
  141. package/dist/src/signature.d.ts.map +1 -0
  142. package/dist/src/targeting/agent-name-matcher.d.ts +63 -0
  143. package/dist/src/targeting/agent-name-matcher.d.ts.map +1 -0
  144. package/dist/src/targeting/agent-routing.d.ts +72 -0
  145. package/dist/src/targeting/agent-routing.d.ts.map +1 -0
  146. package/dist/src/targeting/group-members-store.d.ts +3 -0
  147. package/dist/src/targeting/group-members-store.d.ts.map +1 -0
  148. package/dist/src/targeting/target-directory-adapter.d.ts +13 -0
  149. package/dist/src/targeting/target-directory-adapter.d.ts.map +1 -0
  150. package/dist/src/targeting/target-directory-store.d.ts +45 -0
  151. package/dist/src/targeting/target-directory-store.d.ts.map +1 -0
  152. package/dist/src/targeting/target-input.d.ts +3 -0
  153. package/dist/src/targeting/target-input.d.ts.map +1 -0
  154. package/dist/src/types.d.ts +730 -0
  155. package/dist/src/types.d.ts.map +1 -0
  156. package/dist/src/utils.d.ts +54 -0
  157. package/dist/src/utils.d.ts.map +1 -0
  158. package/openclaw.plugin.json +49 -5
  159. package/package.json +26 -5
  160. package/src/auth.ts +5 -2
  161. package/src/card-service.ts +41 -16
  162. package/src/channel.ts +5 -2
  163. package/src/config-schema.ts +2 -1
  164. package/src/config.ts +24 -67
  165. package/src/device-registration.ts +0 -32
  166. package/src/gateway/channel-gateway.ts +9 -8
  167. package/src/inbound-handler.ts +1239 -1061
  168. package/src/message-context-store.ts +183 -85
  169. package/src/messaging/channel-actions.ts +2 -1
  170. package/src/onboarding.ts +18 -13
  171. package/src/path-utils.ts +49 -0
  172. package/src/secret-input.ts +182 -0
  173. package/src/targeting/agent-routing.ts +30 -5
  174. package/src/types.ts +25 -10
@@ -5,7 +5,7 @@ import {
5
5
  finalizeActiveCardsForAccount,
6
6
  recoverPendingCardsForAccount,
7
7
  } from "../card-service";
8
- import { resolveRobotCode } from "../config";
8
+ import { resolveRobotCode, resolveRuntimeConfig } from "../config";
9
9
  import { ConnectionManager } from "../connection-manager";
10
10
  import { isMessageProcessed, markMessageProcessed } from "../dedup";
11
11
  import {
@@ -157,9 +157,6 @@ export function createDingTalkGateway(): NonNullable<DingTalkChannelPlugin["gate
157
157
  startAccount: async (ctx: GatewayStartContext): Promise<GatewayStopResult> => {
158
158
  const { account, cfg, abortSignal } = ctx;
159
159
  const config = account.config;
160
- if (!config.clientId || !config.clientSecret) {
161
- throw new Error("DingTalk clientId and clientSecret are required");
162
- }
163
160
  let accountStorePath: string | undefined;
164
161
  try {
165
162
  const runtime = getDingTalkRuntime();
@@ -176,6 +173,10 @@ export function createDingTalkGateway(): NonNullable<DingTalkChannelPlugin["gate
176
173
  debug: config.debug,
177
174
  baseLog: ctx.log,
178
175
  });
176
+ // Stream credentials are resolved once per account start. If a file
177
+ // SecretInput rotates, restart the gateway/account so reconnects use the
178
+ // new secret.
179
+ const runtimeConfig = await resolveRuntimeConfig(config, pluginLog);
179
180
  setCurrentLogger(pluginLog, account.accountId);
180
181
 
181
182
  pluginLog?.info?.(`[${account.accountId}] Initializing DingTalk Stream client...`);
@@ -212,10 +213,10 @@ export function createDingTalkGateway(): NonNullable<DingTalkChannelPlugin["gate
212
213
 
213
214
  const createStreamClient: StreamClientFactory = () => {
214
215
  const client = new DWClient({
215
- clientId: config.clientId,
216
- clientSecret: config.clientSecret,
217
- debug: config.debug || false,
218
- keepAlive: config.keepAlive ?? !useConnectionManager,
216
+ clientId: runtimeConfig.clientId,
217
+ clientSecret: runtimeConfig.clientSecret,
218
+ debug: runtimeConfig.debug || false,
219
+ keepAlive: runtimeConfig.keepAlive ?? !useConnectionManager,
219
220
  });
220
221
  (client as any).sslopts = {
221
222
  ...(client as any).sslopts,