agent-messenger 2.20.5 → 2.22.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.
Files changed (137) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/README.md +8 -5
  3. package/dist/package.json +9 -1
  4. package/dist/src/cli.d.ts.map +1 -1
  5. package/dist/src/cli.js +3 -0
  6. package/dist/src/cli.js.map +1 -1
  7. package/dist/src/platforms/webex/client.d.ts +19 -0
  8. package/dist/src/platforms/webex/client.d.ts.map +1 -1
  9. package/dist/src/platforms/webex/client.js +81 -1
  10. package/dist/src/platforms/webex/client.js.map +1 -1
  11. package/dist/src/platforms/webexbot/cli.d.ts +5 -0
  12. package/dist/src/platforms/webexbot/cli.d.ts.map +1 -0
  13. package/dist/src/platforms/webexbot/cli.js +33 -0
  14. package/dist/src/platforms/webexbot/cli.js.map +1 -0
  15. package/dist/src/platforms/webexbot/client.d.ts +61 -0
  16. package/dist/src/platforms/webexbot/client.d.ts.map +1 -0
  17. package/dist/src/platforms/webexbot/client.js +80 -0
  18. package/dist/src/platforms/webexbot/client.js.map +1 -0
  19. package/dist/src/platforms/webexbot/commands/auth.d.ts +28 -0
  20. package/dist/src/platforms/webexbot/commands/auth.d.ts.map +1 -0
  21. package/dist/src/platforms/webexbot/commands/auth.js +166 -0
  22. package/dist/src/platforms/webexbot/commands/auth.js.map +1 -0
  23. package/dist/src/platforms/webexbot/commands/file.d.ts +22 -0
  24. package/dist/src/platforms/webexbot/commands/file.d.ts.map +1 -0
  25. package/dist/src/platforms/webexbot/commands/file.js +64 -0
  26. package/dist/src/platforms/webexbot/commands/file.js.map +1 -0
  27. package/dist/src/platforms/webexbot/commands/index.d.ts +10 -0
  28. package/dist/src/platforms/webexbot/commands/index.d.ts.map +1 -0
  29. package/dist/src/platforms/webexbot/commands/index.js +10 -0
  30. package/dist/src/platforms/webexbot/commands/index.js.map +1 -0
  31. package/dist/src/platforms/webexbot/commands/listen.d.ts +12 -0
  32. package/dist/src/platforms/webexbot/commands/listen.d.ts.map +1 -0
  33. package/dist/src/platforms/webexbot/commands/listen.js +85 -0
  34. package/dist/src/platforms/webexbot/commands/listen.js.map +1 -0
  35. package/dist/src/platforms/webexbot/commands/member.d.ts +19 -0
  36. package/dist/src/platforms/webexbot/commands/member.d.ts.map +1 -0
  37. package/dist/src/platforms/webexbot/commands/member.js +33 -0
  38. package/dist/src/platforms/webexbot/commands/member.js.map +1 -0
  39. package/dist/src/platforms/webexbot/commands/message.d.ts +44 -0
  40. package/dist/src/platforms/webexbot/commands/message.d.ts.map +1 -0
  41. package/dist/src/platforms/webexbot/commands/message.js +193 -0
  42. package/dist/src/platforms/webexbot/commands/message.js.map +1 -0
  43. package/dist/src/platforms/webexbot/commands/shared.d.ts +9 -0
  44. package/dist/src/platforms/webexbot/commands/shared.d.ts.map +1 -0
  45. package/dist/src/platforms/webexbot/commands/shared.js +13 -0
  46. package/dist/src/platforms/webexbot/commands/shared.js.map +1 -0
  47. package/dist/src/platforms/webexbot/commands/snapshot.d.ts +24 -0
  48. package/dist/src/platforms/webexbot/commands/snapshot.d.ts.map +1 -0
  49. package/dist/src/platforms/webexbot/commands/snapshot.js +37 -0
  50. package/dist/src/platforms/webexbot/commands/snapshot.js.map +1 -0
  51. package/dist/src/platforms/webexbot/commands/space.d.ts +28 -0
  52. package/dist/src/platforms/webexbot/commands/space.d.ts.map +1 -0
  53. package/dist/src/platforms/webexbot/commands/space.js +61 -0
  54. package/dist/src/platforms/webexbot/commands/space.js.map +1 -0
  55. package/dist/src/platforms/webexbot/commands/user.d.ts +30 -0
  56. package/dist/src/platforms/webexbot/commands/user.d.ts.map +1 -0
  57. package/dist/src/platforms/webexbot/commands/user.js +66 -0
  58. package/dist/src/platforms/webexbot/commands/user.js.map +1 -0
  59. package/dist/src/platforms/webexbot/commands/whoami.d.ts +16 -0
  60. package/dist/src/platforms/webexbot/commands/whoami.d.ts.map +1 -0
  61. package/dist/src/platforms/webexbot/commands/whoami.js +29 -0
  62. package/dist/src/platforms/webexbot/commands/whoami.js.map +1 -0
  63. package/dist/src/platforms/webexbot/credential-manager.d.ts +17 -0
  64. package/dist/src/platforms/webexbot/credential-manager.d.ts.map +1 -0
  65. package/dist/src/platforms/webexbot/credential-manager.js +120 -0
  66. package/dist/src/platforms/webexbot/credential-manager.js.map +1 -0
  67. package/dist/src/platforms/webexbot/index.d.ts +9 -0
  68. package/dist/src/platforms/webexbot/index.d.ts.map +1 -0
  69. package/dist/src/platforms/webexbot/index.js +6 -0
  70. package/dist/src/platforms/webexbot/index.js.map +1 -0
  71. package/dist/src/platforms/webexbot/listener.d.ts +44 -0
  72. package/dist/src/platforms/webexbot/listener.d.ts.map +1 -0
  73. package/dist/src/platforms/webexbot/listener.js +214 -0
  74. package/dist/src/platforms/webexbot/listener.js.map +1 -0
  75. package/dist/src/platforms/webexbot/types.d.ts +60 -0
  76. package/dist/src/platforms/webexbot/types.d.ts.map +1 -0
  77. package/dist/src/platforms/webexbot/types.js +28 -0
  78. package/dist/src/platforms/webexbot/types.js.map +1 -0
  79. package/dist/src/platforms/webexbot/wdm-discovery.d.ts +4 -0
  80. package/dist/src/platforms/webexbot/wdm-discovery.d.ts.map +1 -0
  81. package/dist/src/platforms/webexbot/wdm-discovery.js +36 -0
  82. package/dist/src/platforms/webexbot/wdm-discovery.js.map +1 -0
  83. package/docs/content/docs/cli/meta.json +1 -0
  84. package/docs/content/docs/cli/webexbot.mdx +292 -0
  85. package/docs/content/docs/sdk/meta.json +1 -0
  86. package/docs/content/docs/sdk/webexbot.mdx +342 -0
  87. package/docs/src/app/page.tsx +115 -19
  88. package/package.json +9 -1
  89. package/skills/agent-channeltalk/SKILL.md +1 -1
  90. package/skills/agent-channeltalkbot/SKILL.md +1 -1
  91. package/skills/agent-discord/SKILL.md +1 -1
  92. package/skills/agent-discordbot/SKILL.md +1 -1
  93. package/skills/agent-instagram/SKILL.md +1 -1
  94. package/skills/agent-kakaotalk/SKILL.md +1 -1
  95. package/skills/agent-line/SKILL.md +1 -1
  96. package/skills/agent-slack/SKILL.md +1 -1
  97. package/skills/agent-slackbot/SKILL.md +1 -1
  98. package/skills/agent-teams/SKILL.md +1 -1
  99. package/skills/agent-telegram/SKILL.md +1 -1
  100. package/skills/agent-telegrambot/SKILL.md +1 -1
  101. package/skills/agent-webex/SKILL.md +1 -1
  102. package/skills/agent-webexbot/SKILL.md +414 -0
  103. package/skills/agent-webexbot/references/authentication.md +225 -0
  104. package/skills/agent-webexbot/references/common-patterns.md +708 -0
  105. package/skills/agent-wechatbot/SKILL.md +1 -1
  106. package/skills/agent-whatsapp/SKILL.md +1 -1
  107. package/skills/agent-whatsappbot/SKILL.md +1 -1
  108. package/src/cli.ts +4 -0
  109. package/src/platforms/webex/client.test.ts +10 -0
  110. package/src/platforms/webex/client.ts +97 -3
  111. package/src/platforms/webex/typings/webex-message-handler.d.ts +360 -29
  112. package/src/platforms/webexbot/cli.ts +48 -0
  113. package/src/platforms/webexbot/client.test.ts +198 -0
  114. package/src/platforms/webexbot/client.ts +113 -0
  115. package/src/platforms/webexbot/commands/auth.test.ts +185 -0
  116. package/src/platforms/webexbot/commands/auth.ts +210 -0
  117. package/src/platforms/webexbot/commands/file.ts +104 -0
  118. package/src/platforms/webexbot/commands/index.ts +9 -0
  119. package/src/platforms/webexbot/commands/listen.test.ts +20 -0
  120. package/src/platforms/webexbot/commands/listen.ts +104 -0
  121. package/src/platforms/webexbot/commands/member.ts +51 -0
  122. package/src/platforms/webexbot/commands/message.ts +263 -0
  123. package/src/platforms/webexbot/commands/shared.ts +22 -0
  124. package/src/platforms/webexbot/commands/snapshot.ts +60 -0
  125. package/src/platforms/webexbot/commands/space.ts +88 -0
  126. package/src/platforms/webexbot/commands/user.test.ts +77 -0
  127. package/src/platforms/webexbot/commands/user.ts +98 -0
  128. package/src/platforms/webexbot/commands/whoami.ts +43 -0
  129. package/src/platforms/webexbot/credential-manager.test.ts +182 -0
  130. package/src/platforms/webexbot/credential-manager.ts +149 -0
  131. package/src/platforms/webexbot/index.ts +8 -0
  132. package/src/platforms/webexbot/listener.test.ts +234 -0
  133. package/src/platforms/webexbot/listener.ts +255 -0
  134. package/src/platforms/webexbot/types.test.ts +87 -0
  135. package/src/platforms/webexbot/types.ts +72 -0
  136. package/src/platforms/webexbot/wdm-discovery.test.ts +97 -0
  137. package/src/platforms/webexbot/wdm-discovery.ts +43 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/platforms/webexbot/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { Command } from 'commander';
2
+ import { WebexBotCredentialManager } from '../credential-manager.js';
3
+ interface ActionOptions {
4
+ pretty?: boolean;
5
+ bot?: string;
6
+ _credManager?: WebexBotCredentialManager;
7
+ }
8
+ interface ActionResult {
9
+ success?: boolean;
10
+ error?: string;
11
+ bot_id?: string;
12
+ bot_name?: string;
13
+ valid?: boolean;
14
+ bots?: Array<{
15
+ bot_id: string;
16
+ bot_name: string;
17
+ is_current: boolean;
18
+ }>;
19
+ }
20
+ export declare function setAction(token: string, options: ActionOptions): Promise<ActionResult>;
21
+ export declare function clearAction(options: ActionOptions): Promise<ActionResult>;
22
+ export declare function statusAction(options: ActionOptions): Promise<ActionResult>;
23
+ export declare function listAction(options: ActionOptions): Promise<ActionResult>;
24
+ export declare function useAction(botId: string, options: ActionOptions): Promise<ActionResult>;
25
+ export declare function removeAction(botId: string, options: ActionOptions): Promise<ActionResult>;
26
+ export declare const authCommand: Command;
27
+ export {};
28
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAA;AAEjE,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,YAAY,CAAC,EAAE,yBAAyB,CAAA;CACzC;AAED,UAAU,YAAY;IACpB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,CAAC,EAAE,KAAK,CAAC;QACX,MAAM,EAAE,MAAM,CAAA;QACd,QAAQ,EAAE,MAAM,CAAA;QAChB,UAAU,EAAE,OAAO,CAAA;KACpB,CAAC,CAAA;CACH;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CA2B5F;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAQ/E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAiChF;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAe9E;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAkB5F;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAa/F;AAED,eAAO,MAAM,WAAW,SAwDrB,CAAA"}
@@ -0,0 +1,166 @@
1
+ import { Command } from 'commander';
2
+ import { cliOutput } from '../../../shared/utils/cli-output.js';
3
+ import { formatOutput } from '../../../shared/utils/output.js';
4
+ import { WebexBotClient } from '../client.js';
5
+ import { WebexBotCredentialManager } from '../credential-manager.js';
6
+ export async function setAction(token, options) {
7
+ try {
8
+ const client = await new WebexBotClient().login({ token });
9
+ const authInfo = await client.testAuth();
10
+ if (authInfo.type !== 'bot') {
11
+ return { error: 'Token is not a bot token. Use agent-webex for user tokens.' };
12
+ }
13
+ const botId = options.bot || authInfo.id || 'default';
14
+ const botName = authInfo.displayName || botId;
15
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
16
+ await credManager.setCredentials({
17
+ token,
18
+ bot_id: botId,
19
+ bot_name: botName,
20
+ });
21
+ return {
22
+ success: true,
23
+ bot_id: botId,
24
+ bot_name: botName,
25
+ };
26
+ }
27
+ catch (error) {
28
+ return { error: error.message };
29
+ }
30
+ }
31
+ export async function clearAction(options) {
32
+ try {
33
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
34
+ await credManager.clearCredentials();
35
+ return { success: true };
36
+ }
37
+ catch (error) {
38
+ return { error: error.message };
39
+ }
40
+ }
41
+ export async function statusAction(options) {
42
+ try {
43
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
44
+ const creds = await credManager.getCredentials(options.bot);
45
+ if (!creds) {
46
+ return {
47
+ valid: false,
48
+ error: options.bot
49
+ ? `Bot "${options.bot}" not found. Run "auth list" to see available bots.`
50
+ : 'No credentials configured. Run "auth set <token>" first.',
51
+ };
52
+ }
53
+ let valid = false;
54
+ let authInfo = null;
55
+ try {
56
+ const client = await new WebexBotClient().login({ token: creds.token });
57
+ authInfo = await client.testAuth();
58
+ valid = authInfo.type === 'bot';
59
+ }
60
+ catch {
61
+ valid = false;
62
+ }
63
+ return {
64
+ valid,
65
+ bot_id: authInfo?.id ?? creds.bot_id,
66
+ bot_name: authInfo?.displayName ?? creds.bot_name,
67
+ };
68
+ }
69
+ catch (error) {
70
+ return { error: error.message };
71
+ }
72
+ }
73
+ export async function listAction(options) {
74
+ try {
75
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
76
+ const all = await credManager.listAll();
77
+ return {
78
+ bots: all.map((b) => ({
79
+ bot_id: b.bot_id,
80
+ bot_name: b.bot_name,
81
+ is_current: b.is_current,
82
+ })),
83
+ };
84
+ }
85
+ catch (error) {
86
+ return { error: error.message };
87
+ }
88
+ }
89
+ export async function useAction(botId, options) {
90
+ try {
91
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
92
+ const found = await credManager.setCurrent(botId);
93
+ if (!found) {
94
+ return { error: `Bot "${botId}" not found. Run "auth list" to see available bots.` };
95
+ }
96
+ const creds = await credManager.getCredentials();
97
+ return {
98
+ success: true,
99
+ bot_id: creds?.bot_id,
100
+ bot_name: creds?.bot_name,
101
+ };
102
+ }
103
+ catch (error) {
104
+ return { error: error.message };
105
+ }
106
+ }
107
+ export async function removeAction(botId, options) {
108
+ try {
109
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
110
+ const removed = await credManager.removeBot(botId);
111
+ if (!removed) {
112
+ return { error: `Bot "${botId}" not found. Run "auth list" to see available bots.` };
113
+ }
114
+ return { success: true };
115
+ }
116
+ catch (error) {
117
+ return { error: error.message };
118
+ }
119
+ }
120
+ export const authCommand = new Command('auth')
121
+ .description('Bot authentication commands')
122
+ .addCommand(new Command('set')
123
+ .description('Set bot token')
124
+ .argument('<token>', 'Bot token')
125
+ .option('--bot <id>', 'Bot identifier for switching later')
126
+ .option('--pretty', 'Pretty print JSON output')
127
+ .action(async (token, opts) => {
128
+ cliOutput(await setAction(token, opts), opts.pretty);
129
+ }))
130
+ .addCommand(new Command('clear')
131
+ .description('Clear all stored credentials')
132
+ .option('--pretty', 'Pretty print JSON output')
133
+ .action(async (opts) => {
134
+ cliOutput(await clearAction(opts), opts.pretty);
135
+ }))
136
+ .addCommand(new Command('status')
137
+ .description('Show authentication status')
138
+ .option('--bot <id>', 'Check specific bot (default: current)')
139
+ .option('--pretty', 'Pretty print JSON output')
140
+ .action(async (opts) => {
141
+ const result = await statusAction(opts);
142
+ console.log(formatOutput(result, opts.pretty));
143
+ if (!result.valid)
144
+ process.exit(1);
145
+ }))
146
+ .addCommand(new Command('list')
147
+ .description('List all stored bots')
148
+ .option('--pretty', 'Pretty print JSON output')
149
+ .action(async (opts) => {
150
+ cliOutput(await listAction(opts), opts.pretty);
151
+ }))
152
+ .addCommand(new Command('use')
153
+ .description('Switch active bot')
154
+ .argument('<bot>', 'Bot ID')
155
+ .option('--pretty', 'Pretty print JSON output')
156
+ .action(async (botId, opts) => {
157
+ cliOutput(await useAction(botId, opts), opts.pretty);
158
+ }))
159
+ .addCommand(new Command('remove')
160
+ .description('Remove a stored bot')
161
+ .argument('<bot>', 'Bot ID')
162
+ .option('--pretty', 'Pretty print JSON output')
163
+ .action(async (botId, opts) => {
164
+ cliOutput(await removeAction(botId, opts), opts.pretty);
165
+ }));
166
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { Command } from 'commander';
2
+ import type { BotOption } from './shared.js';
3
+ interface FileResult {
4
+ id?: string;
5
+ roomId?: string;
6
+ files?: string[];
7
+ created?: string;
8
+ downloaded?: string;
9
+ filename?: string;
10
+ contentType?: string;
11
+ size?: number;
12
+ error?: string;
13
+ }
14
+ export declare function uploadAction(space: string, path: string, options: BotOption & {
15
+ text?: string;
16
+ markdown?: boolean;
17
+ parent?: string;
18
+ }): Promise<FileResult>;
19
+ export declare function downloadAction(contentRef: string, output: string | undefined, options: BotOption): Promise<FileResult>;
20
+ export declare const fileCommand: Command;
21
+ export {};
22
+ //# sourceMappingURL=file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/file.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAInC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAGzC,UAAU,UAAU;IAClB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,wBAAsB,YAAY,CAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1E,OAAO,CAAC,UAAU,CAAC,CAoBrB;AAED,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,SAAS,GACjB,OAAO,CAAC,UAAU,CAAC,CAiBrB;AAED,eAAO,MAAM,WAAW,SAgCrB,CAAA"}
@@ -0,0 +1,64 @@
1
+ import { readFile, writeFile } from 'node:fs/promises';
2
+ import { basename, resolve } from 'node:path';
3
+ import { Command } from 'commander';
4
+ import { cliOutput } from '../../../shared/utils/cli-output.js';
5
+ import { getClient } from './shared.js';
6
+ export async function uploadAction(space, path, options) {
7
+ try {
8
+ const client = await getClient(options);
9
+ const filePath = resolve(path);
10
+ const content = await readFile(filePath);
11
+ const message = await client.uploadFile(space, { content: new Blob([content]), filename: basename(filePath) }, { text: options.text, markdown: options.markdown, parentId: options.parent });
12
+ return {
13
+ id: message.id,
14
+ roomId: message.roomId,
15
+ files: message.files,
16
+ created: message.created,
17
+ };
18
+ }
19
+ catch (error) {
20
+ return { error: error.message };
21
+ }
22
+ }
23
+ export async function downloadAction(contentRef, output, options) {
24
+ try {
25
+ const client = await getClient(options);
26
+ const { data, filename, contentType } = await client.downloadContent(contentRef);
27
+ // When no explicit output is given, confine the server-provided name to cwd.
28
+ const outputPath = output ? resolve(output) : resolve(process.cwd(), basename(filename));
29
+ await writeFile(outputPath, Buffer.from(data));
30
+ return {
31
+ downloaded: outputPath,
32
+ filename,
33
+ contentType,
34
+ size: data.byteLength,
35
+ };
36
+ }
37
+ catch (error) {
38
+ return { error: error.message };
39
+ }
40
+ }
41
+ export const fileCommand = new Command('file')
42
+ .description('File commands')
43
+ .addCommand(new Command('upload')
44
+ .description('Upload a local file to a space')
45
+ .argument('<space>', 'Space/Room ID')
46
+ .argument('<path>', 'Local file path')
47
+ .option('--text <text>', 'Optional message to send with the file')
48
+ .option('--markdown', 'Treat --text as markdown')
49
+ .option('--parent <id>', 'Reply within a thread (parent message ID)')
50
+ .option('--bot <id>', 'Use specific bot')
51
+ .option('--pretty', 'Pretty print JSON output')
52
+ .action(async (space, path, opts) => {
53
+ cliOutput(await uploadAction(space, path, opts), opts.pretty);
54
+ }))
55
+ .addCommand(new Command('download')
56
+ .description('Download a file attachment by content URL or ID')
57
+ .argument('<content>', 'File content URL (from message.files) or content ID')
58
+ .argument('[output]', 'Output path (defaults to original filename)')
59
+ .option('--bot <id>', 'Use specific bot')
60
+ .option('--pretty', 'Pretty print JSON output')
61
+ .action(async (content, output, opts) => {
62
+ cliOutput(await downloadAction(content, output, opts), opts.pretty);
63
+ }));
64
+ //# sourceMappingURL=file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/file.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export { authCommand } from './auth.js';
2
+ export { fileCommand } from './file.js';
3
+ export { listenCommand } from './listen.js';
4
+ export { memberCommand } from './member.js';
5
+ export { messageCommand } from './message.js';
6
+ export { snapshotCommand } from './snapshot.js';
7
+ export { spaceCommand } from './space.js';
8
+ export { userCommand } from './user.js';
9
+ export { whoamiCommand } from './whoami.js';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA"}
@@ -0,0 +1,10 @@
1
+ export { authCommand } from './auth.js';
2
+ export { fileCommand } from './file.js';
3
+ export { listenCommand } from './listen.js';
4
+ export { memberCommand } from './member.js';
5
+ export { messageCommand } from './message.js';
6
+ export { snapshotCommand } from './snapshot.js';
7
+ export { spaceCommand } from './space.js';
8
+ export { userCommand } from './user.js';
9
+ export { whoamiCommand } from './whoami.js';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA"}
@@ -0,0 +1,12 @@
1
+ import { Command } from 'commander';
2
+ import type { WebexBotListenerEventMap } from '../types.js';
3
+ import type { BotOption } from './shared.js';
4
+ type ListenEvent = keyof WebexBotListenerEventMap;
5
+ interface ListenOptions extends BotOption {
6
+ events?: string;
7
+ }
8
+ export declare function parseEvents(events?: string): ListenEvent[];
9
+ export declare function listenAction(options: ListenOptions): Promise<void>;
10
+ export declare const listenCommand: Command;
11
+ export {};
12
+ //# sourceMappingURL=listen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listen.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/listen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAGzC,KAAK,WAAW,GAAG,MAAM,wBAAwB,CAAA;AA6BjD,UAAU,aAAc,SAAQ,SAAS;IACvC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAOD,wBAAgB,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,EAAE,CAe1D;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BxE;AAED,eAAO,MAAM,aAAa,SAOtB,CAAA"}
@@ -0,0 +1,85 @@
1
+ import { Command } from 'commander';
2
+ import { cliOutput } from '../../../shared/utils/cli-output.js';
3
+ import { WebexBotListener } from '../listener.js';
4
+ import { getClient } from './shared.js';
5
+ const SUPPORTED_EVENTS = new Set([
6
+ 'message_created',
7
+ 'message_updated',
8
+ 'message_deleted',
9
+ 'membership_created',
10
+ 'attachment_action',
11
+ 'room_created',
12
+ 'room_updated',
13
+ 'webex_event',
14
+ 'connected',
15
+ 'reconnecting',
16
+ 'disconnected',
17
+ 'error',
18
+ ]);
19
+ const DEFAULT_EVENTS = [
20
+ 'message_created',
21
+ 'message_updated',
22
+ 'message_deleted',
23
+ 'membership_created',
24
+ 'attachment_action',
25
+ 'connected',
26
+ 'reconnecting',
27
+ 'disconnected',
28
+ 'error',
29
+ ];
30
+ function printEvent(type, payload, pretty) {
31
+ const line = payload === undefined ? { type } : { type, payload };
32
+ console.log(JSON.stringify(line, null, pretty ? 2 : undefined));
33
+ }
34
+ export function parseEvents(events) {
35
+ if (!events)
36
+ return DEFAULT_EVENTS;
37
+ const tokens = events
38
+ .split(',')
39
+ .map((event) => event.trim())
40
+ .filter((event) => event.length > 0);
41
+ const unknown = tokens.filter((event) => !SUPPORTED_EVENTS.has(event));
42
+ if (unknown.length > 0) {
43
+ const supported = [...SUPPORTED_EVENTS].join(', ');
44
+ throw new Error(`Unknown event(s): ${unknown.join(', ')}. Supported events: ${supported}`);
45
+ }
46
+ return tokens;
47
+ }
48
+ export async function listenAction(options) {
49
+ let events;
50
+ try {
51
+ events = parseEvents(options.events);
52
+ }
53
+ catch (error) {
54
+ cliOutput({ error: error.message }, options.pretty, true);
55
+ return;
56
+ }
57
+ const client = await getClient(options);
58
+ const listener = new WebexBotListener(client);
59
+ for (const event of events) {
60
+ if (event === 'error') {
61
+ listener.on(event, (error) => printEvent(event, { message: error.message, name: error.name }, options.pretty));
62
+ continue;
63
+ }
64
+ listener.on(event, (payload) => printEvent(event, payload, options.pretty));
65
+ }
66
+ process.once('SIGINT', () => {
67
+ void listener.stop().finally(() => process.exit(0));
68
+ });
69
+ try {
70
+ await listener.start();
71
+ }
72
+ catch (error) {
73
+ printEvent('error', { message: error.message, name: error.name }, options.pretty);
74
+ process.exit(1);
75
+ }
76
+ }
77
+ export const listenCommand = new Command('listen')
78
+ .description('Listen for real-time Webex bot events')
79
+ .option('--events <list>', 'Comma-separated event filter')
80
+ .option('--bot <id>', 'Use specific bot')
81
+ .option('--pretty', 'Pretty print JSON output')
82
+ .action(async (opts) => {
83
+ await listenAction(opts);
84
+ });
85
+ //# sourceMappingURL=listen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listen.js","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/listen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAG9C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAIpC,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAc;IAC5C,iBAAiB;IACjB,iBAAiB;IACjB,iBAAiB;IACjB,oBAAoB;IACpB,mBAAmB;IACnB,cAAc;IACd,cAAc;IACd,aAAa;IACb,WAAW;IACX,cAAc;IACd,cAAc;IACd,OAAO;CACR,CAAC,CAAA;AAEF,MAAM,cAAc,GAAkB;IACpC,iBAAiB;IACjB,iBAAiB;IACjB,iBAAiB;IACjB,oBAAoB;IACpB,mBAAmB;IACnB,WAAW;IACX,cAAc;IACd,cAAc;IACd,OAAO;CACR,CAAA;AAMD,SAAS,UAAU,CAAC,IAAY,EAAE,OAAgB,EAAE,MAAgB;IAClE,MAAM,IAAI,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IACjE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;AACjE,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAe;IACzC,IAAI,CAAC,MAAM;QAAE,OAAO,cAAc,CAAA;IAElC,MAAM,MAAM,GAAG,MAAM;SAClB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAEtC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAoB,CAAC,CAAC,CAAA;IACrF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAClD,MAAM,IAAI,KAAK,CAAC,qBAAqB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAA;IAC5F,CAAC;IAED,OAAO,MAAuB,CAAA;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAAsB;IACvD,IAAI,MAAqB,CAAA;IACzB,IAAI,CAAC;QACH,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACpE,OAAM;IACR,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAA;IACvC,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAE7C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;YAC9G,SAAQ;QACV,CAAC;QACD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7E,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;QAC1B,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACrD,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAG,KAAe,CAAC,OAAO,EAAE,IAAI,EAAG,KAAe,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QACvG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,uCAAuC,CAAC;KACpD,MAAM,CAAC,iBAAiB,EAAE,8BAA8B,CAAC;KACzD,MAAM,CAAC,YAAY,EAAE,kBAAkB,CAAC;KACxC,MAAM,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAC9C,MAAM,CAAC,KAAK,EAAE,IAAmB,EAAE,EAAE;IACpC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAA;AAC1B,CAAC,CAAC,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { Command } from 'commander';
2
+ import type { BotOption } from './shared.js';
3
+ interface MemberResult {
4
+ members?: Array<{
5
+ id: string;
6
+ personId: string;
7
+ personEmail: string;
8
+ personDisplayName: string;
9
+ isModerator: boolean;
10
+ created: string;
11
+ }>;
12
+ error?: string;
13
+ }
14
+ export declare function listAction(space: string, options: BotOption & {
15
+ max?: string;
16
+ }): Promise<MemberResult>;
17
+ export declare const memberCommand: Command;
18
+ export {};
19
+ //# sourceMappingURL=member.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/member.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAInC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAGzC,UAAU,YAAY;IACpB,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,EAAE,EAAE,MAAM,CAAA;QACV,QAAQ,EAAE,MAAM,CAAA;QAChB,WAAW,EAAE,MAAM,CAAA;QACnB,iBAAiB,EAAE,MAAM,CAAA;QACzB,WAAW,EAAE,OAAO,CAAA;QACpB,OAAO,EAAE,MAAM,CAAA;KAChB,CAAC,CAAA;IACF,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAmB5G;AAED,eAAO,MAAM,aAAa,SAUzB,CAAA"}
@@ -0,0 +1,33 @@
1
+ import { Command } from 'commander';
2
+ import { cliOutput } from '../../../shared/utils/cli-output.js';
3
+ import { getClient } from './shared.js';
4
+ export async function listAction(space, options) {
5
+ try {
6
+ const client = await getClient(options);
7
+ const max = options.max ? parseInt(options.max, 10) : 100;
8
+ const members = await client.listMemberships(space, { max });
9
+ return {
10
+ members: members.map((m) => ({
11
+ id: m.id,
12
+ personId: m.personId,
13
+ personEmail: m.personEmail,
14
+ personDisplayName: m.personDisplayName,
15
+ isModerator: m.isModerator,
16
+ created: m.created,
17
+ })),
18
+ };
19
+ }
20
+ catch (error) {
21
+ return { error: error.message };
22
+ }
23
+ }
24
+ export const memberCommand = new Command('member').description('Member commands').addCommand(new Command('list')
25
+ .description('List members of a space')
26
+ .argument('<space>', 'Space ID')
27
+ .option('--max <n>', 'Number of members to retrieve', '100')
28
+ .option('--bot <id>', 'Use specific bot')
29
+ .option('--pretty', 'Pretty print JSON output')
30
+ .action(async (space, opts) => {
31
+ cliOutput(await listAction(space, opts), opts.pretty);
32
+ }));
33
+ //# sourceMappingURL=member.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member.js","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/member.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAGrD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAcpC,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,KAAa,EAAE,OAAqC;IACnF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAA;QACvC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QACzD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;QAE5D,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3B,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;gBACtC,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;aACnB,CAAC,CAAC;SACJ,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,CAAA;IAC5C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAC1F,IAAI,OAAO,CAAC,MAAM,CAAC;KAChB,WAAW,CAAC,yBAAyB,CAAC;KACtC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;KAC/B,MAAM,CAAC,WAAW,EAAE,+BAA+B,EAAE,KAAK,CAAC;KAC3D,MAAM,CAAC,YAAY,EAAE,kBAAkB,CAAC;KACxC,MAAM,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAC9C,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,IAAkC,EAAE,EAAE;IAClE,SAAS,CAAC,MAAM,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;AACvD,CAAC,CAAC,CACL,CAAA"}
@@ -0,0 +1,44 @@
1
+ import { Command } from 'commander';
2
+ import type { BotOption } from './shared.js';
3
+ interface MessageResult {
4
+ id?: string;
5
+ roomId?: string;
6
+ text?: string;
7
+ markdown?: string;
8
+ html?: string;
9
+ personEmail?: string;
10
+ created?: string;
11
+ messages?: Array<{
12
+ id: string;
13
+ roomId: string;
14
+ text?: string;
15
+ personEmail: string;
16
+ created: string;
17
+ }>;
18
+ deleted?: string;
19
+ error?: string;
20
+ }
21
+ export declare function sendAction(space: string, text: string, options: BotOption & {
22
+ markdown?: boolean;
23
+ parent?: string;
24
+ }): Promise<MessageResult>;
25
+ export declare function replyAction(space: string, parentId: string, text: string, options: BotOption & {
26
+ markdown?: boolean;
27
+ }): Promise<MessageResult>;
28
+ export declare function repliesAction(space: string, parentId: string, options: BotOption & {
29
+ max?: string;
30
+ }): Promise<MessageResult>;
31
+ export declare function dmAction(email: string, text: string, options: BotOption & {
32
+ markdown?: boolean;
33
+ }): Promise<MessageResult>;
34
+ export declare function listAction(space: string, options: BotOption & {
35
+ max?: string;
36
+ }): Promise<MessageResult>;
37
+ export declare function getAction(messageId: string, options: BotOption): Promise<MessageResult>;
38
+ export declare function deleteAction(messageId: string, options: BotOption): Promise<MessageResult>;
39
+ export declare function editAction(messageId: string, space: string, text: string, options: BotOption & {
40
+ markdown?: boolean;
41
+ }): Promise<MessageResult>;
42
+ export declare const messageCommand: Command;
43
+ export {};
44
+ //# sourceMappingURL=message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAGzC,UAAU,aAAa;IACrB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,EAAE,EAAE,MAAM,CAAA;QACV,MAAM,EAAE,MAAM,CAAA;QACd,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,WAAW,EAAE,MAAM,CAAA;QACnB,OAAO,EAAE,MAAM,CAAA;KAChB,CAAC,CAAA;IACF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAcD,wBAAsB,UAAU,CAC9B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3D,OAAO,CAAC,aAAa,CAAC,CASxB;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1C,OAAO,CAAC,aAAa,CAAC,CASxB;AAED,wBAAsB,aAAa,CACjC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,SAAS,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,OAAO,CAAC,aAAa,CAAC,CAkBxB;AAED,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1C,OAAO,CAAC,aAAa,CAAC,CASxB;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAkB7G;AAED,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,CAS7F;AAED,wBAAsB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,CAShG;AAED,wBAAsB,UAAU,CAC9B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1C,OAAO,CAAC,aAAa,CAAC,CASxB;AAED,eAAO,MAAM,cAAc,SA+FxB,CAAA"}