clawdbot-dingtalk 0.2.23 → 0.3.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 (50) hide show
  1. package/README.md +35 -0
  2. package/dist/src/accounts.d.ts +11 -0
  3. package/dist/src/accounts.d.ts.map +1 -1
  4. package/dist/src/accounts.js +14 -0
  5. package/dist/src/accounts.js.map +1 -1
  6. package/dist/src/api/card-instances.d.ts +82 -0
  7. package/dist/src/api/card-instances.d.ts.map +1 -0
  8. package/dist/src/api/card-instances.js +303 -0
  9. package/dist/src/api/card-instances.js.map +1 -0
  10. package/dist/src/api/index.d.ts +1 -0
  11. package/dist/src/api/index.d.ts.map +1 -1
  12. package/dist/src/api/index.js +1 -0
  13. package/dist/src/api/index.js.map +1 -1
  14. package/dist/src/channel.d.ts.map +1 -1
  15. package/dist/src/channel.js +121 -0
  16. package/dist/src/channel.js.map +1 -1
  17. package/dist/src/config-schema.d.ts +182 -0
  18. package/dist/src/config-schema.d.ts.map +1 -1
  19. package/dist/src/config-schema.js +26 -0
  20. package/dist/src/config-schema.js.map +1 -1
  21. package/dist/src/monitor.d.ts.map +1 -1
  22. package/dist/src/monitor.js +212 -5
  23. package/dist/src/monitor.js.map +1 -1
  24. package/dist/src/runtime.d.ts +13 -0
  25. package/dist/src/runtime.d.ts.map +1 -1
  26. package/dist/src/runtime.js +13 -0
  27. package/dist/src/runtime.js.map +1 -1
  28. package/dist/src/send/media-sender.d.ts.map +1 -1
  29. package/dist/src/send/media-sender.js +4 -22
  30. package/dist/src/send/media-sender.js.map +1 -1
  31. package/dist/src/stream/card-callback.d.ts +7 -0
  32. package/dist/src/stream/card-callback.d.ts.map +1 -0
  33. package/dist/src/stream/card-callback.js +133 -0
  34. package/dist/src/stream/card-callback.js.map +1 -0
  35. package/dist/src/stream/client.d.ts.map +1 -1
  36. package/dist/src/stream/client.js +37 -1
  37. package/dist/src/stream/client.js.map +1 -1
  38. package/dist/src/stream/index.d.ts +2 -1
  39. package/dist/src/stream/index.d.ts.map +1 -1
  40. package/dist/src/stream/index.js +1 -0
  41. package/dist/src/stream/index.js.map +1 -1
  42. package/dist/src/stream/types.d.ts +16 -0
  43. package/dist/src/stream/types.d.ts.map +1 -1
  44. package/dist/src/types/channel-data.d.ts +27 -0
  45. package/dist/src/types/channel-data.d.ts.map +1 -1
  46. package/dist/src/util/ai-card.d.ts +27 -0
  47. package/dist/src/util/ai-card.d.ts.map +1 -0
  48. package/dist/src/util/ai-card.js +113 -0
  49. package/dist/src/util/ai-card.js.map +1 -0
  50. package/package.json +1 -1
package/README.md CHANGED
@@ -98,6 +98,41 @@ clawdbot gateway
98
98
  | `showToolResult` | boolean | `false` | Show tool results |
99
99
  | `thinking` | string | `"off"` | Thinking mode (off/minimal/low/medium/high) |
100
100
 
101
+ ## AI Card (高级互动卡片)
102
+
103
+ Enable AI Card capability via config:
104
+
105
+ ```json
106
+ {
107
+ "channels": {
108
+ "clawdbot-dingtalk": {
109
+ "aiCard": {
110
+ "enabled": true,
111
+ "templateId": "your-template-id",
112
+ "autoReply": true,
113
+ "textParamKey": "content",
114
+ "defaultCardData": {
115
+ "title": "Clawdbot"
116
+ },
117
+ "callbackType": "STREAM",
118
+ "updateThrottleMs": 800,
119
+ "fallbackReplyMode": "markdown",
120
+ "openSpace": {
121
+ "imGroupOpenSpaceModel": {
122
+ "openConversationId": "cidxxx"
123
+ }
124
+ }
125
+ }
126
+ }
127
+ }
128
+ }
129
+ ```
130
+
131
+ Notes:
132
+ - `callbackType` should be `STREAM` to receive card callbacks over Stream API.
133
+ - `autoReply=true` 会把普通文本回复映射成卡片变量,需要 `textParamKey` 与模板变量名一致。
134
+ - If `openSpace` / `openSpaceId` is missing, card delivery falls back to text.
135
+
101
136
  ## Chat Commands
102
137
 
103
138
  The following chat switches are supported in DingTalk:
@@ -27,6 +27,17 @@ export type ResolvedDingTalkAccount = {
27
27
  showToolStatus: boolean;
28
28
  showToolResult: boolean;
29
29
  thinking: "off" | "minimal" | "low" | "medium" | "high";
30
+ aiCard: {
31
+ enabled: boolean;
32
+ templateId?: string;
33
+ autoReply: boolean;
34
+ textParamKey?: string;
35
+ defaultCardData?: Record<string, unknown>;
36
+ callbackType: "STREAM" | "HTTP";
37
+ updateThrottleMs: number;
38
+ fallbackReplyMode?: "text" | "markdown";
39
+ openSpace?: Record<string, unknown>;
40
+ };
30
41
  };
31
42
  /**
32
43
  * List all configured account IDs.
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/accounts.ts"],"names":[],"mappings":"AACA,KAAK,cAAc,GAAG,GAAG,CAAC;AAC1B,OAAO,EACL,KAAK,cAAc,EAKpB,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IAGrD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,SAAS,EAAE,MAAM,GAAG,UAAU,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC;IAC1B,QAAQ,EAAE,cAAc,CAAC;IAGzB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,4BAA4B,EAAE,OAAO,CAAC;IACtC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAG7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IAGxB,QAAQ,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;CACzD,CAAC;AAuBF;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,EAAE,CAuBpE;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,CAG3E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAC7C,GAAG,EAAE,cAAc,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG,uBAAuB,CA0G1B;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAErF"}
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/accounts.ts"],"names":[],"mappings":"AACA,KAAK,cAAc,GAAG,GAAG,CAAC;AAC1B,OAAO,EACL,KAAK,cAAc,EAMpB,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IAGrD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,SAAS,EAAE,MAAM,GAAG,UAAU,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC;IAC1B,QAAQ,EAAE,cAAc,CAAC;IAGzB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,4BAA4B,EAAE,OAAO,CAAC;IACtC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAG7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IAGxB,QAAQ,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAGxD,MAAM,EAAE;QACN,OAAO,EAAE,OAAO,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,OAAO,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1C,YAAY,EAAE,QAAQ,GAAG,MAAM,CAAC;QAChC,gBAAgB,EAAE,MAAM,CAAC;QACzB,iBAAiB,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;QACxC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC,CAAC;CACH,CAAC;AAuBF;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,EAAE,CAuBpE;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,CAG3E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAC7C,GAAG,EAAE,cAAc,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG,uBAAuB,CAyH1B;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAErF"}
@@ -116,6 +116,19 @@ export function resolveDingTalkAccount(params) {
116
116
  const showToolStatus = accountConfig?.showToolStatus ?? section?.showToolStatus ?? false;
117
117
  const showToolResult = accountConfig?.showToolResult ?? section?.showToolResult ?? false;
118
118
  const thinking = accountConfig?.thinking ?? section?.thinking ?? "off";
119
+ const baseAICard = section?.aiCard;
120
+ const accountAICard = accountConfig?.aiCard;
121
+ const aiCard = {
122
+ enabled: accountAICard?.enabled ?? baseAICard?.enabled ?? false,
123
+ templateId: accountAICard?.templateId ?? baseAICard?.templateId,
124
+ autoReply: accountAICard?.autoReply ?? baseAICard?.autoReply ?? true,
125
+ textParamKey: accountAICard?.textParamKey ?? baseAICard?.textParamKey,
126
+ defaultCardData: accountAICard?.defaultCardData ?? baseAICard?.defaultCardData,
127
+ callbackType: accountAICard?.callbackType ?? baseAICard?.callbackType ?? "STREAM",
128
+ updateThrottleMs: accountAICard?.updateThrottleMs ?? baseAICard?.updateThrottleMs ?? 800,
129
+ fallbackReplyMode: accountAICard?.fallbackReplyMode ?? baseAICard?.fallbackReplyMode,
130
+ openSpace: accountAICard?.openSpace ?? baseAICard?.openSpace,
131
+ };
119
132
  // Merge coalesce config
120
133
  const baseCoalesce = section?.coalesce ?? DEFAULT_COALESCE;
121
134
  const accountCoalesce = accountConfig?.coalesce;
@@ -149,6 +162,7 @@ export function resolveDingTalkAccount(params) {
149
162
  showToolStatus,
150
163
  showToolResult,
151
164
  thinking,
165
+ aiCard,
152
166
  };
153
167
  }
154
168
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/accounts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/accounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * DingTalk AI Card Instance APIs.
3
+ * Handles create/update/append spaces for interactive cards.
4
+ */
5
+ import type { ResolvedDingTalkAccount } from "../accounts.js";
6
+ import type { StreamLogger } from "../stream/types.js";
7
+ import { type TokenManager } from "./token-manager.js";
8
+ export interface CardInstanceResult {
9
+ ok: boolean;
10
+ cardInstanceId?: string;
11
+ raw?: unknown;
12
+ error?: Error;
13
+ }
14
+ export interface CreateCardInstanceOptions {
15
+ account: ResolvedDingTalkAccount;
16
+ templateId: string;
17
+ outTrackId: string;
18
+ cardData: Record<string, unknown>;
19
+ privateData?: Record<string, unknown>;
20
+ openSpace?: Record<string, unknown>;
21
+ openSpaceId?: string;
22
+ callbackType?: "STREAM" | "HTTP";
23
+ tokenManager?: TokenManager;
24
+ logger?: StreamLogger;
25
+ }
26
+ export interface UpdateCardInstanceOptions {
27
+ account: ResolvedDingTalkAccount;
28
+ cardInstanceId?: string;
29
+ outTrackId?: string;
30
+ cardData?: Record<string, unknown>;
31
+ privateData?: Record<string, unknown>;
32
+ openSpace?: Record<string, unknown>;
33
+ openSpaceId?: string;
34
+ callbackType?: "STREAM" | "HTTP";
35
+ tokenManager?: TokenManager;
36
+ logger?: StreamLogger;
37
+ }
38
+ export interface AppendCardSpacesOptions {
39
+ account: ResolvedDingTalkAccount;
40
+ cardInstanceId: string;
41
+ openSpace?: Record<string, unknown>;
42
+ openSpaceId?: string;
43
+ tokenManager?: TokenManager;
44
+ logger?: StreamLogger;
45
+ }
46
+ export interface DeliverCardInstanceOptions {
47
+ account: ResolvedDingTalkAccount;
48
+ outTrackId: string;
49
+ openSpaceId: string;
50
+ userIdType?: number;
51
+ imGroupOpenDeliverModel?: {
52
+ robotCode: string;
53
+ recipients?: string[];
54
+ };
55
+ imRobotOpenDeliverModel?: {
56
+ robotCode: string;
57
+ userIds?: string[];
58
+ };
59
+ tokenManager?: TokenManager;
60
+ logger?: StreamLogger;
61
+ }
62
+ /**
63
+ * Create a new card instance.
64
+ * API: POST /v1.0/card/instances
65
+ */
66
+ export declare function createCardInstance(opts: CreateCardInstanceOptions): Promise<CardInstanceResult>;
67
+ /**
68
+ * Update an existing card instance.
69
+ * API: PUT /v1.0/card/instances
70
+ */
71
+ export declare function updateCardInstance(opts: UpdateCardInstanceOptions): Promise<CardInstanceResult>;
72
+ /**
73
+ * Append or update card open spaces.
74
+ * API: PUT /v1.0/card/instances/spaces (fallback POST if PUT fails)
75
+ */
76
+ export declare function appendCardSpaces(opts: AppendCardSpacesOptions): Promise<CardInstanceResult>;
77
+ /**
78
+ * Deliver card instance to an open space.
79
+ * API: POST /v1.0/card/instances/deliver
80
+ */
81
+ export declare function deliverCardInstance(opts: DeliverCardInstanceOptions): Promise<CardInstanceResult>;
82
+ //# sourceMappingURL=card-instances.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card-instances.d.ts","sourceRoot":"","sources":["../../../src/api/card-instances.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,303 @@
1
+ /**
2
+ * DingTalk AI Card Instance APIs.
3
+ * Handles create/update/append spaces for interactive cards.
4
+ */
5
+ import { createTokenManagerFromAccount } from "./token-manager.js";
6
+ import { normalizeCardData, normalizePrivateData } from "../util/ai-card.js";
7
+ async function getAccessToken(account, tokenManager, logger, action = "card") {
8
+ try {
9
+ return await tokenManager.getToken();
10
+ }
11
+ catch (err) {
12
+ logger?.error?.({ err: { message: err?.message } }, `Failed to get access token for ${action}`);
13
+ throw err;
14
+ }
15
+ }
16
+ function extractCardInstanceId(data) {
17
+ if (!data || typeof data !== "object")
18
+ return undefined;
19
+ return (data.cardInstanceId ||
20
+ data.cardInstanceID ||
21
+ data.card_instance_id ||
22
+ data.instanceId ||
23
+ data.id);
24
+ }
25
+ /**
26
+ * Create a new card instance.
27
+ * API: POST /v1.0/card/instances
28
+ */
29
+ export async function createCardInstance(opts) {
30
+ const { account, templateId, outTrackId, cardData, privateData, openSpace, openSpaceId, callbackType, tokenManager: providedTokenManager, logger, } = opts;
31
+ if (!templateId) {
32
+ return { ok: false, error: new Error("Missing templateId") };
33
+ }
34
+ if (!outTrackId) {
35
+ return { ok: false, error: new Error("Missing outTrackId") };
36
+ }
37
+ if (!cardData) {
38
+ return { ok: false, error: new Error("Missing cardData") };
39
+ }
40
+ const tokenManager = providedTokenManager ?? createTokenManagerFromAccount(account, logger);
41
+ let accessToken;
42
+ try {
43
+ accessToken = await getAccessToken(account, tokenManager, logger, "card create");
44
+ }
45
+ catch (err) {
46
+ return { ok: false, error: err };
47
+ }
48
+ const url = `${account.apiBase}/v1.0/card/instances`;
49
+ const body = {
50
+ cardTemplateId: templateId,
51
+ outTrackId,
52
+ cardData: normalizeCardData(cardData),
53
+ };
54
+ if (privateData)
55
+ body.privateData = normalizePrivateData(privateData);
56
+ if (callbackType)
57
+ body.callbackType = callbackType;
58
+ if (openSpaceId)
59
+ body.openSpaceId = openSpaceId;
60
+ if (openSpace && typeof openSpace === "object") {
61
+ Object.assign(body, openSpace);
62
+ }
63
+ try {
64
+ const resp = await fetch(url, {
65
+ method: "POST",
66
+ headers: {
67
+ "Content-Type": "application/json",
68
+ "x-acs-dingtalk-access-token": accessToken,
69
+ },
70
+ body: JSON.stringify(body),
71
+ signal: AbortSignal.timeout(30_000),
72
+ });
73
+ const respText = await resp.text();
74
+ let data = {};
75
+ try {
76
+ data = respText ? JSON.parse(respText) : {};
77
+ }
78
+ catch {
79
+ data = { raw: respText };
80
+ }
81
+ if (!resp.ok) {
82
+ logger?.error?.({ status: resp.status, error: respText.slice(0, 200) }, "Card instance create failed");
83
+ return {
84
+ ok: false,
85
+ error: new Error(`HTTP ${resp.status}: ${respText.slice(0, 200)}`),
86
+ raw: data,
87
+ };
88
+ }
89
+ const cardInstanceId = extractCardInstanceId(data);
90
+ logger?.debug?.({ cardInstanceId, outTrackId }, "Card instance created");
91
+ return { ok: true, cardInstanceId, raw: data };
92
+ }
93
+ catch (err) {
94
+ logger?.error?.({ err: { message: err?.message } }, "Card instance create error");
95
+ return { ok: false, error: err };
96
+ }
97
+ }
98
+ /**
99
+ * Update an existing card instance.
100
+ * API: PUT /v1.0/card/instances
101
+ */
102
+ export async function updateCardInstance(opts) {
103
+ const { account, cardInstanceId, outTrackId, cardData, privateData, openSpace, openSpaceId, callbackType, tokenManager: providedTokenManager, logger, } = opts;
104
+ if (!cardInstanceId && !outTrackId) {
105
+ return { ok: false, error: new Error("Missing cardInstanceId or outTrackId") };
106
+ }
107
+ const tokenManager = providedTokenManager ?? createTokenManagerFromAccount(account, logger);
108
+ let accessToken;
109
+ try {
110
+ accessToken = await getAccessToken(account, tokenManager, logger, "card update");
111
+ }
112
+ catch (err) {
113
+ return { ok: false, error: err };
114
+ }
115
+ const url = `${account.apiBase}/v1.0/card/instances`;
116
+ const body = {
117
+ cardInstanceId,
118
+ outTrackId,
119
+ };
120
+ if (cardData)
121
+ body.cardData = normalizeCardData(cardData);
122
+ if (privateData)
123
+ body.privateData = normalizePrivateData(privateData);
124
+ if (callbackType)
125
+ body.callbackType = callbackType;
126
+ if (openSpaceId)
127
+ body.openSpaceId = openSpaceId;
128
+ if (openSpace && typeof openSpace === "object") {
129
+ Object.assign(body, openSpace);
130
+ }
131
+ try {
132
+ const resp = await fetch(url, {
133
+ method: "PUT",
134
+ headers: {
135
+ "Content-Type": "application/json",
136
+ "x-acs-dingtalk-access-token": accessToken,
137
+ },
138
+ body: JSON.stringify(body),
139
+ signal: AbortSignal.timeout(30_000),
140
+ });
141
+ const respText = await resp.text();
142
+ let data = {};
143
+ try {
144
+ data = respText ? JSON.parse(respText) : {};
145
+ }
146
+ catch {
147
+ data = { raw: respText };
148
+ }
149
+ if (!resp.ok) {
150
+ logger?.error?.({ status: resp.status, error: respText.slice(0, 200) }, "Card instance update failed");
151
+ return {
152
+ ok: false,
153
+ error: new Error(`HTTP ${resp.status}: ${respText.slice(0, 200)}`),
154
+ raw: data,
155
+ };
156
+ }
157
+ const resolvedId = extractCardInstanceId(data) ?? cardInstanceId;
158
+ logger?.debug?.({ cardInstanceId: resolvedId, outTrackId }, "Card instance updated");
159
+ return { ok: true, cardInstanceId: resolvedId, raw: data };
160
+ }
161
+ catch (err) {
162
+ logger?.error?.({ err: { message: err?.message } }, "Card instance update error");
163
+ return { ok: false, error: err };
164
+ }
165
+ }
166
+ /**
167
+ * Append or update card open spaces.
168
+ * API: PUT /v1.0/card/instances/spaces (fallback POST if PUT fails)
169
+ */
170
+ export async function appendCardSpaces(opts) {
171
+ const { account, cardInstanceId, openSpace, openSpaceId, tokenManager: providedTokenManager, logger, } = opts;
172
+ if (!cardInstanceId) {
173
+ return { ok: false, error: new Error("Missing cardInstanceId") };
174
+ }
175
+ const tokenManager = providedTokenManager ?? createTokenManagerFromAccount(account, logger);
176
+ let accessToken;
177
+ try {
178
+ accessToken = await getAccessToken(account, tokenManager, logger, "card spaces");
179
+ }
180
+ catch (err) {
181
+ return { ok: false, error: err };
182
+ }
183
+ const url = `${account.apiBase}/v1.0/card/instances/spaces`;
184
+ const body = {
185
+ cardInstanceId,
186
+ };
187
+ if (openSpaceId)
188
+ body.openSpaceId = openSpaceId;
189
+ if (openSpace && typeof openSpace === "object") {
190
+ Object.assign(body, openSpace);
191
+ }
192
+ async function request(method) {
193
+ const resp = await fetch(url, {
194
+ method,
195
+ headers: {
196
+ "Content-Type": "application/json",
197
+ "x-acs-dingtalk-access-token": accessToken,
198
+ },
199
+ body: JSON.stringify(body),
200
+ signal: AbortSignal.timeout(30_000),
201
+ });
202
+ const respText = await resp.text();
203
+ let data = {};
204
+ try {
205
+ data = respText ? JSON.parse(respText) : {};
206
+ }
207
+ catch {
208
+ data = { raw: respText };
209
+ }
210
+ if (!resp.ok) {
211
+ return {
212
+ ok: false,
213
+ error: new Error(`HTTP ${resp.status}: ${respText.slice(0, 200)}`),
214
+ raw: data,
215
+ };
216
+ }
217
+ const resolvedId = extractCardInstanceId(data) ?? cardInstanceId;
218
+ return { ok: true, cardInstanceId: resolvedId, raw: data };
219
+ }
220
+ try {
221
+ const result = await request("PUT");
222
+ if (result.ok) {
223
+ logger?.debug?.({ cardInstanceId }, "Card spaces appended (PUT)");
224
+ return result;
225
+ }
226
+ logger?.warn?.({ cardInstanceId, err: result.error?.message }, "Card spaces PUT failed, retry POST");
227
+ const retry = await request("POST");
228
+ if (!retry.ok) {
229
+ logger?.error?.({ cardInstanceId, err: retry.error?.message }, "Card spaces append failed");
230
+ }
231
+ return retry;
232
+ }
233
+ catch (err) {
234
+ logger?.error?.({ err: { message: err?.message } }, "Card spaces append error");
235
+ return { ok: false, error: err };
236
+ }
237
+ }
238
+ /**
239
+ * Deliver card instance to an open space.
240
+ * API: POST /v1.0/card/instances/deliver
241
+ */
242
+ export async function deliverCardInstance(opts) {
243
+ const { account, outTrackId, openSpaceId, userIdType, imGroupOpenDeliverModel, imRobotOpenDeliverModel, tokenManager: providedTokenManager, logger, } = opts;
244
+ if (!outTrackId) {
245
+ return { ok: false, error: new Error("Missing outTrackId") };
246
+ }
247
+ if (!openSpaceId) {
248
+ return { ok: false, error: new Error("Missing openSpaceId") };
249
+ }
250
+ const tokenManager = providedTokenManager ?? createTokenManagerFromAccount(account, logger);
251
+ let accessToken;
252
+ try {
253
+ accessToken = await getAccessToken(account, tokenManager, logger, "card deliver");
254
+ }
255
+ catch (err) {
256
+ return { ok: false, error: err };
257
+ }
258
+ const url = `${account.apiBase}/v1.0/card/instances/deliver`;
259
+ const body = {
260
+ outTrackId,
261
+ openSpaceId,
262
+ };
263
+ if (userIdType !== undefined)
264
+ body.userIdType = userIdType;
265
+ if (imGroupOpenDeliverModel)
266
+ body.imGroupOpenDeliverModel = imGroupOpenDeliverModel;
267
+ if (imRobotOpenDeliverModel)
268
+ body.imRobotOpenDeliverModel = imRobotOpenDeliverModel;
269
+ try {
270
+ const resp = await fetch(url, {
271
+ method: "POST",
272
+ headers: {
273
+ "Content-Type": "application/json",
274
+ "x-acs-dingtalk-access-token": accessToken,
275
+ },
276
+ body: JSON.stringify(body),
277
+ signal: AbortSignal.timeout(30_000),
278
+ });
279
+ const respText = await resp.text();
280
+ let data = {};
281
+ try {
282
+ data = respText ? JSON.parse(respText) : {};
283
+ }
284
+ catch {
285
+ data = { raw: respText };
286
+ }
287
+ if (!resp.ok) {
288
+ logger?.error?.({ status: resp.status, error: respText.slice(0, 200) }, "Card instance deliver failed");
289
+ return {
290
+ ok: false,
291
+ error: new Error(`HTTP ${resp.status}: ${respText.slice(0, 200)}`),
292
+ raw: data,
293
+ };
294
+ }
295
+ logger?.debug?.({ outTrackId, openSpaceId }, "Card instance delivered");
296
+ return { ok: true, raw: data };
297
+ }
298
+ catch (err) {
299
+ logger?.error?.({ err: { message: err?.message } }, "Card instance deliver error");
300
+ return { ok: false, error: err };
301
+ }
302
+ }
303
+ //# sourceMappingURL=card-instances.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card-instances.js","sourceRoot":"","sources":["../../../src/api/card-instances.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,6 @@
5
5
  export { createTokenManager, createTokenManagerFromAccount, clearAllTokens, invalidateToken, type TokenManager, type TokenManagerOptions, } from "./token-manager.js";
6
6
  export { sendProactiveMessage, sendBatchDirectMessage, sendImageMessage, sendImageMessageWithMediaId, sendFileMessage, sendActionCardMessage, sendMediaByPath, parseTarget, type MessageTarget, type SendMessageOptions, type SendMessageResult, type SendImageOptions, type SendFileOptions, type SendMediaByPathOptions, } from "./send-message.js";
7
7
  export { uploadMedia, downloadMedia, type UploadMediaResult, type DownloadMediaResult, } from "./media.js";
8
+ export { createCardInstance, updateCardInstance, appendCardSpaces, deliverCardInstance, type CardInstanceResult, type CreateCardInstanceOptions, type UpdateCardInstanceOptions, type AppendCardSpacesOptions, type DeliverCardInstanceOptions, } from "./card-instances.js";
8
9
  export { uploadMediaToOAPI, uploadLocalFile, isLocalPath, normalizeLocalPath, isImageUrl, detectMediaType, type MediaType, type UploadMediaResult as UploadMediaToOAPIResult, } from "./media-upload.js";
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,mBAAmB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,2BAA2B,EAC3B,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,WAAW,EACX,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,sBAAsB,GAC5B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,WAAW,EACX,aAAa,EACb,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,KAAK,SAAS,EACd,KAAK,iBAAiB,IAAI,uBAAuB,GAClD,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,mBAAmB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,2BAA2B,EAC3B,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,WAAW,EACX,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,sBAAsB,GAC5B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,WAAW,EACX,aAAa,EACb,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,GAChC,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,KAAK,SAAS,EACd,KAAK,iBAAiB,IAAI,uBAAuB,GAClD,MAAM,mBAAmB,CAAC"}
@@ -5,5 +5,6 @@
5
5
  export { createTokenManager, createTokenManagerFromAccount, clearAllTokens, invalidateToken, } from "./token-manager.js";
6
6
  export { sendProactiveMessage, sendBatchDirectMessage, sendImageMessage, sendImageMessageWithMediaId, sendFileMessage, sendActionCardMessage, sendMediaByPath, parseTarget, } from "./send-message.js";
7
7
  export { uploadMedia, downloadMedia, } from "./media.js";
8
+ export { createCardInstance, updateCardInstance, appendCardSpaces, deliverCardInstance, } from "./card-instances.js";
8
9
  export { uploadMediaToOAPI, uploadLocalFile, isLocalPath, normalizeLocalPath, isImageUrl, detectMediaType, } from "./media-upload.js";
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,eAAe,GAGhB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,2BAA2B,EAC3B,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,WAAW,GAOZ,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,WAAW,EACX,aAAa,GAGd,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,eAAe,GAGhB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,cAAc,EACd,eAAe,GAGhB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,2BAA2B,EAC3B,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,WAAW,GAOZ,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,WAAW,EACX,aAAa,GAGd,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,GAMpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,eAAe,GAGhB,MAAM,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/channel.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,aAAa,EAId,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,KAAK,uBAAuB,EAK7B,MAAM,eAAe,CAAC;AA+DvB;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,uBAAuB,CA+ajE,CAAC"}
1
+ {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/channel.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,aAAa,EAId,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,KAAK,uBAAuB,EAK7B,MAAM,eAAe,CAAC;AAiEvB;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,uBAAuB,CAgjBjE,CAAC"}