n8n-nodes-microsoft-teams-bot 1.3.7 → 2.2.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 (269) hide show
  1. package/README.md +166 -0
  2. package/dist/credentials/TeamsBotApi.credentials.d.ts +1 -2
  3. package/dist/credentials/TeamsBotApi.credentials.js +0 -9
  4. package/dist/credentials/TeamsBotApi.credentials.js.map +1 -1
  5. package/dist/index.d.ts +1 -0
  6. package/dist/index.js +1 -0
  7. package/dist/index.js.map +1 -1
  8. package/dist/nodes/TeamsBot/TeamsBot.node.js +81 -9
  9. package/dist/nodes/TeamsBot/TeamsBot.node.js.map +1 -1
  10. package/dist/nodes/TeamsBot/TeamsBot.node.json +72 -72
  11. package/dist/nodes/TeamsBot/TeamsBotAiTools.node.d.ts +12 -0
  12. package/dist/nodes/TeamsBot/TeamsBotAiTools.node.js +238 -0
  13. package/dist/nodes/TeamsBot/TeamsBotAiTools.node.js.map +1 -0
  14. package/dist/nodes/TeamsBot/TeamsBotTrigger.node.d.ts +2 -0
  15. package/dist/nodes/TeamsBot/TeamsBotTrigger.node.js +141 -20
  16. package/dist/nodes/TeamsBot/TeamsBotTrigger.node.js.map +1 -1
  17. package/dist/nodes/TeamsBot/TeamsBotTrigger.node.json +56 -56
  18. package/dist/nodes/TeamsBot/actions/buildCard.js +35 -64
  19. package/dist/nodes/TeamsBot/actions/buildCard.js.map +1 -1
  20. package/dist/nodes/TeamsBot/actions/cards.d.ts +5 -4
  21. package/dist/nodes/TeamsBot/actions/cards.js +3 -2
  22. package/dist/nodes/TeamsBot/actions/cards.js.map +1 -1
  23. package/dist/nodes/TeamsBot/actions/cards.process.js +33 -22
  24. package/dist/nodes/TeamsBot/actions/cards.process.js.map +1 -1
  25. package/dist/nodes/TeamsBot/actions/cards.send.js +6 -30
  26. package/dist/nodes/TeamsBot/actions/cards.send.js.map +1 -1
  27. package/dist/nodes/TeamsBot/actions/cards.update.d.ts +5 -0
  28. package/dist/nodes/TeamsBot/actions/cards.update.js +35 -22
  29. package/dist/nodes/TeamsBot/actions/cards.update.js.map +1 -1
  30. package/dist/nodes/TeamsBot/actions/cards.validation.js.map +1 -1
  31. package/dist/nodes/TeamsBot/actions/channels.d.ts +1 -1
  32. package/dist/nodes/TeamsBot/actions/channels.js +19 -28
  33. package/dist/nodes/TeamsBot/actions/channels.js.map +1 -1
  34. package/dist/nodes/TeamsBot/actions/chats.d.ts +13 -0
  35. package/dist/nodes/TeamsBot/actions/chats.js +266 -0
  36. package/dist/nodes/TeamsBot/actions/chats.js.map +1 -0
  37. package/dist/nodes/TeamsBot/actions/messages.d.ts +78 -38
  38. package/dist/nodes/TeamsBot/actions/messages.files.d.ts +2 -0
  39. package/dist/nodes/TeamsBot/actions/messages.files.js +84 -26
  40. package/dist/nodes/TeamsBot/actions/messages.files.js.map +1 -1
  41. package/dist/nodes/TeamsBot/actions/messages.js +117 -57
  42. package/dist/nodes/TeamsBot/actions/messages.js.map +1 -1
  43. package/dist/nodes/TeamsBot/actions/messages.list.d.ts +8 -0
  44. package/dist/nodes/TeamsBot/actions/messages.list.js +491 -0
  45. package/dist/nodes/TeamsBot/actions/messages.list.js.map +1 -0
  46. package/dist/nodes/TeamsBot/actions/messages.pins.js +13 -42
  47. package/dist/nodes/TeamsBot/actions/messages.pins.js.map +1 -1
  48. package/dist/nodes/TeamsBot/actions/messages.reactions.d.ts +4 -0
  49. package/dist/nodes/TeamsBot/actions/messages.reactions.js +151 -22
  50. package/dist/nodes/TeamsBot/actions/messages.reactions.js.map +1 -1
  51. package/dist/nodes/TeamsBot/actions/messages.send.js +315 -85
  52. package/dist/nodes/TeamsBot/actions/messages.send.js.map +1 -1
  53. package/dist/nodes/TeamsBot/actions/messages.sendAndWait.js +291 -52
  54. package/dist/nodes/TeamsBot/actions/messages.sendAndWait.js.map +1 -1
  55. package/dist/nodes/TeamsBot/actions/router.js +29 -178
  56. package/dist/nodes/TeamsBot/actions/router.js.map +1 -1
  57. package/dist/nodes/TeamsBot/actions/subscriptions.d.ts +5 -0
  58. package/dist/nodes/TeamsBot/actions/subscriptions.js +28 -0
  59. package/dist/nodes/TeamsBot/actions/subscriptions.js.map +1 -0
  60. package/dist/nodes/TeamsBot/actions/teams.d.ts +2 -2
  61. package/dist/nodes/TeamsBot/actions/teams.js +23 -32
  62. package/dist/nodes/TeamsBot/actions/teams.js.map +1 -1
  63. package/dist/nodes/TeamsBot/actions/users.d.ts +1 -1
  64. package/dist/nodes/TeamsBot/actions/users.js +13 -20
  65. package/dist/nodes/TeamsBot/actions/users.js.map +1 -1
  66. package/dist/nodes/TeamsBot/ai-tools/constants.d.ts +24 -0
  67. package/dist/nodes/TeamsBot/ai-tools/constants.js +74 -0
  68. package/dist/nodes/TeamsBot/ai-tools/constants.js.map +1 -0
  69. package/dist/nodes/TeamsBot/ai-tools/description-builders.d.ts +2 -0
  70. package/dist/nodes/TeamsBot/ai-tools/description-builders.js +132 -0
  71. package/dist/nodes/TeamsBot/ai-tools/description-builders.js.map +1 -0
  72. package/dist/nodes/TeamsBot/ai-tools/error-formatter.d.ts +37 -0
  73. package/dist/nodes/TeamsBot/ai-tools/error-formatter.js +64 -0
  74. package/dist/nodes/TeamsBot/ai-tools/error-formatter.js.map +1 -0
  75. package/dist/nodes/TeamsBot/ai-tools/executors/card.executor.d.ts +2 -0
  76. package/dist/nodes/TeamsBot/ai-tools/executors/card.executor.js +84 -0
  77. package/dist/nodes/TeamsBot/ai-tools/executors/card.executor.js.map +1 -0
  78. package/dist/nodes/TeamsBot/ai-tools/executors/channel.executor.d.ts +2 -0
  79. package/dist/nodes/TeamsBot/ai-tools/executors/channel.executor.js +65 -0
  80. package/dist/nodes/TeamsBot/ai-tools/executors/channel.executor.js.map +1 -0
  81. package/dist/nodes/TeamsBot/ai-tools/executors/chat.executor.d.ts +2 -0
  82. package/dist/nodes/TeamsBot/ai-tools/executors/chat.executor.js +81 -0
  83. package/dist/nodes/TeamsBot/ai-tools/executors/chat.executor.js.map +1 -0
  84. package/dist/nodes/TeamsBot/ai-tools/executors/index.d.ts +6 -0
  85. package/dist/nodes/TeamsBot/ai-tools/executors/index.js +16 -0
  86. package/dist/nodes/TeamsBot/ai-tools/executors/index.js.map +1 -0
  87. package/dist/nodes/TeamsBot/ai-tools/executors/message.executor.d.ts +2 -0
  88. package/dist/nodes/TeamsBot/ai-tools/executors/message.executor.js +183 -0
  89. package/dist/nodes/TeamsBot/ai-tools/executors/message.executor.js.map +1 -0
  90. package/dist/nodes/TeamsBot/ai-tools/executors/team.executor.d.ts +2 -0
  91. package/dist/nodes/TeamsBot/ai-tools/executors/team.executor.js +81 -0
  92. package/dist/nodes/TeamsBot/ai-tools/executors/team.executor.js.map +1 -0
  93. package/dist/nodes/TeamsBot/ai-tools/executors/user.executor.d.ts +2 -0
  94. package/dist/nodes/TeamsBot/ai-tools/executors/user.executor.js +67 -0
  95. package/dist/nodes/TeamsBot/ai-tools/executors/user.executor.js.map +1 -0
  96. package/dist/nodes/TeamsBot/ai-tools/resolvers/channel.resolver.d.ts +3 -0
  97. package/dist/nodes/TeamsBot/ai-tools/resolvers/channel.resolver.js +53 -0
  98. package/dist/nodes/TeamsBot/ai-tools/resolvers/channel.resolver.js.map +1 -0
  99. package/dist/nodes/TeamsBot/ai-tools/resolvers/index.d.ts +28 -0
  100. package/dist/nodes/TeamsBot/ai-tools/resolvers/index.js +72 -0
  101. package/dist/nodes/TeamsBot/ai-tools/resolvers/index.js.map +1 -0
  102. package/dist/nodes/TeamsBot/ai-tools/resolvers/team.resolver.d.ts +3 -0
  103. package/dist/nodes/TeamsBot/ai-tools/resolvers/team.resolver.js +57 -0
  104. package/dist/nodes/TeamsBot/ai-tools/resolvers/team.resolver.js.map +1 -0
  105. package/dist/nodes/TeamsBot/ai-tools/resolvers/user.resolver.d.ts +3 -0
  106. package/dist/nodes/TeamsBot/ai-tools/resolvers/user.resolver.js +91 -0
  107. package/dist/nodes/TeamsBot/ai-tools/resolvers/user.resolver.js.map +1 -0
  108. package/dist/nodes/TeamsBot/ai-tools/runtime.d.ts +14 -0
  109. package/dist/nodes/TeamsBot/ai-tools/runtime.js +71 -0
  110. package/dist/nodes/TeamsBot/ai-tools/runtime.js.map +1 -0
  111. package/dist/nodes/TeamsBot/ai-tools/schema-generator.d.ts +10 -0
  112. package/dist/nodes/TeamsBot/ai-tools/schema-generator.js +454 -0
  113. package/dist/nodes/TeamsBot/ai-tools/schema-generator.js.map +1 -0
  114. package/dist/nodes/TeamsBot/ai-tools/tool-executor.d.ts +2 -0
  115. package/dist/nodes/TeamsBot/ai-tools/tool-executor.js +86 -0
  116. package/dist/nodes/TeamsBot/ai-tools/tool-executor.js.map +1 -0
  117. package/dist/nodes/TeamsBot/descriptions/buildCard.description.approval.js.map +1 -1
  118. package/dist/nodes/TeamsBot/descriptions/buildCard.description.custom.js +2 -2
  119. package/dist/nodes/TeamsBot/descriptions/buildCard.description.custom.js.map +1 -1
  120. package/dist/nodes/TeamsBot/descriptions/buildCard.description.list.js +1 -1
  121. package/dist/nodes/TeamsBot/descriptions/buildCard.description.list.js.map +1 -1
  122. package/dist/nodes/TeamsBot/descriptions/buildCard.description.notification.js.map +1 -1
  123. package/dist/nodes/TeamsBot/descriptions/buildCard.description.operations.js.map +1 -1
  124. package/dist/nodes/TeamsBot/descriptions/buildCard.description.welcome.js +3 -3
  125. package/dist/nodes/TeamsBot/descriptions/buildCard.description.welcome.js.map +1 -1
  126. package/dist/nodes/TeamsBot/descriptions/card.description.js.map +1 -1
  127. package/dist/nodes/TeamsBot/descriptions/card.description.operations.js +25 -21
  128. package/dist/nodes/TeamsBot/descriptions/card.description.operations.js.map +1 -1
  129. package/dist/nodes/TeamsBot/descriptions/card.description.process.js +2 -6
  130. package/dist/nodes/TeamsBot/descriptions/card.description.process.js.map +1 -1
  131. package/dist/nodes/TeamsBot/descriptions/card.description.send.js +35 -154
  132. package/dist/nodes/TeamsBot/descriptions/card.description.send.js.map +1 -1
  133. package/dist/nodes/TeamsBot/descriptions/card.description.update.js +39 -32
  134. package/dist/nodes/TeamsBot/descriptions/card.description.update.js.map +1 -1
  135. package/dist/nodes/TeamsBot/descriptions/chat.description.d.ts +2 -0
  136. package/dist/nodes/TeamsBot/descriptions/chat.description.js +196 -0
  137. package/dist/nodes/TeamsBot/descriptions/chat.description.js.map +1 -0
  138. package/dist/nodes/TeamsBot/descriptions/common.fields.d.ts +31 -0
  139. package/dist/nodes/TeamsBot/descriptions/common.fields.js +150 -0
  140. package/dist/nodes/TeamsBot/descriptions/common.fields.js.map +1 -0
  141. package/dist/nodes/TeamsBot/descriptions/message.description.d.ts +2 -2
  142. package/dist/nodes/TeamsBot/descriptions/message.description.js +4 -4
  143. package/dist/nodes/TeamsBot/descriptions/message.description.js.map +1 -1
  144. package/dist/nodes/TeamsBot/descriptions/message.list.description.d.ts +8 -0
  145. package/dist/nodes/TeamsBot/descriptions/message.list.description.js +363 -0
  146. package/dist/nodes/TeamsBot/descriptions/message.list.description.js.map +1 -0
  147. package/dist/nodes/TeamsBot/descriptions/message.mutate.description.js +73 -3
  148. package/dist/nodes/TeamsBot/descriptions/message.mutate.description.js.map +1 -1
  149. package/dist/nodes/TeamsBot/descriptions/message.reactionsAndFiles.description.js +158 -4
  150. package/dist/nodes/TeamsBot/descriptions/message.reactionsAndFiles.description.js.map +1 -1
  151. package/dist/nodes/TeamsBot/descriptions/message.send.description.js +19 -0
  152. package/dist/nodes/TeamsBot/descriptions/message.send.description.js.map +1 -1
  153. package/dist/nodes/TeamsBot/descriptions/message.sendAndWait.description.js +34 -0
  154. package/dist/nodes/TeamsBot/descriptions/message.sendAndWait.description.js.map +1 -1
  155. package/dist/nodes/TeamsBot/descriptions/message.shared.description.d.ts +1 -1
  156. package/dist/nodes/TeamsBot/descriptions/message.shared.description.js +143 -133
  157. package/dist/nodes/TeamsBot/descriptions/message.shared.description.js.map +1 -1
  158. package/dist/nodes/TeamsBot/descriptions/node.description.base.js +58 -100
  159. package/dist/nodes/TeamsBot/descriptions/node.description.base.js.map +1 -1
  160. package/dist/nodes/TeamsBot/descriptions/node.description.js +2 -0
  161. package/dist/nodes/TeamsBot/descriptions/node.description.js.map +1 -1
  162. package/dist/nodes/TeamsBot/methods/credentialTest.js +6 -6
  163. package/dist/nodes/TeamsBot/methods/credentialTest.js.map +1 -1
  164. package/dist/nodes/TeamsBot/methods/listSearch.d.ts +1 -1
  165. package/dist/nodes/TeamsBot/methods/listSearch.js +105 -10
  166. package/dist/nodes/TeamsBot/methods/listSearch.js.map +1 -1
  167. package/dist/nodes/TeamsBot/teams.svg +11 -11
  168. package/dist/nodes/TeamsBot/transport/BotActivityHandler.d.ts +27 -0
  169. package/dist/nodes/TeamsBot/transport/BotActivityHandler.js +39 -0
  170. package/dist/nodes/TeamsBot/transport/BotActivityHandler.js.map +1 -0
  171. package/dist/nodes/TeamsBot/transport/TeamsApiClient.d.ts +113 -13
  172. package/dist/nodes/TeamsBot/transport/TeamsApiClient.graph.d.ts +117 -17
  173. package/dist/nodes/TeamsBot/transport/TeamsApiClient.graph.js +153 -25
  174. package/dist/nodes/TeamsBot/transport/TeamsApiClient.graph.js.map +1 -1
  175. package/dist/nodes/TeamsBot/transport/TeamsApiClient.js +140 -21
  176. package/dist/nodes/TeamsBot/transport/TeamsApiClient.js.map +1 -1
  177. package/dist/nodes/TeamsBot/transport/TeamsApiClient.messages.d.ts +8 -0
  178. package/dist/nodes/TeamsBot/transport/TeamsApiClient.messages.js +9 -0
  179. package/dist/nodes/TeamsBot/transport/TeamsApiClient.messages.js.map +1 -1
  180. package/dist/nodes/TeamsBot/transport/api/AgentsApi.auth.js +7 -7
  181. package/dist/nodes/TeamsBot/transport/api/AgentsApi.auth.js.map +1 -1
  182. package/dist/nodes/TeamsBot/transport/api/AgentsApi.cards.js +6 -6
  183. package/dist/nodes/TeamsBot/transport/api/AgentsApi.cards.js.map +1 -1
  184. package/dist/nodes/TeamsBot/transport/api/AgentsApi.conversations.d.ts +9 -1
  185. package/dist/nodes/TeamsBot/transport/api/AgentsApi.conversations.js +29 -1
  186. package/dist/nodes/TeamsBot/transport/api/AgentsApi.conversations.js.map +1 -1
  187. package/dist/nodes/TeamsBot/transport/api/AgentsApi.d.ts +5 -0
  188. package/dist/nodes/TeamsBot/transport/api/AgentsApi.helpers.d.ts +9 -1
  189. package/dist/nodes/TeamsBot/transport/api/AgentsApi.helpers.js +39 -2
  190. package/dist/nodes/TeamsBot/transport/api/AgentsApi.helpers.js.map +1 -1
  191. package/dist/nodes/TeamsBot/transport/api/AgentsApi.js +6 -0
  192. package/dist/nodes/TeamsBot/transport/api/AgentsApi.js.map +1 -1
  193. package/dist/nodes/TeamsBot/transport/api/AgentsApi.messages.d.ts +6 -0
  194. package/dist/nodes/TeamsBot/transport/api/AgentsApi.messages.js +22 -5
  195. package/dist/nodes/TeamsBot/transport/api/AgentsApi.messages.js.map +1 -1
  196. package/dist/nodes/TeamsBot/transport/api/GraphApi.auth.d.ts +6 -3
  197. package/dist/nodes/TeamsBot/transport/api/GraphApi.auth.js +44 -5
  198. package/dist/nodes/TeamsBot/transport/api/GraphApi.auth.js.map +1 -1
  199. package/dist/nodes/TeamsBot/transport/api/GraphApi.channels.d.ts +0 -5
  200. package/dist/nodes/TeamsBot/transport/api/GraphApi.channels.js +0 -16
  201. package/dist/nodes/TeamsBot/transport/api/GraphApi.channels.js.map +1 -1
  202. package/dist/nodes/TeamsBot/transport/api/GraphApi.chats.d.ts +20 -0
  203. package/dist/nodes/TeamsBot/transport/api/GraphApi.chats.js +42 -0
  204. package/dist/nodes/TeamsBot/transport/api/GraphApi.chats.js.map +1 -0
  205. package/dist/nodes/TeamsBot/transport/api/GraphApi.d.ts +81 -7
  206. package/dist/nodes/TeamsBot/transport/api/GraphApi.js +118 -14
  207. package/dist/nodes/TeamsBot/transport/api/GraphApi.js.map +1 -1
  208. package/dist/nodes/TeamsBot/transport/api/GraphApi.messages.d.ts +82 -4
  209. package/dist/nodes/TeamsBot/transport/api/GraphApi.messages.js +244 -11
  210. package/dist/nodes/TeamsBot/transport/api/GraphApi.messages.js.map +1 -1
  211. package/dist/nodes/TeamsBot/transport/api/GraphApi.pins.d.ts +1 -1
  212. package/dist/nodes/TeamsBot/transport/api/GraphApi.pins.js +5 -3
  213. package/dist/nodes/TeamsBot/transport/api/GraphApi.pins.js.map +1 -1
  214. package/dist/nodes/TeamsBot/transport/api/GraphApi.teams.js +2 -1
  215. package/dist/nodes/TeamsBot/transport/api/GraphApi.teams.js.map +1 -1
  216. package/dist/nodes/TeamsBot/transport/api/GraphApi.users.js +2 -1
  217. package/dist/nodes/TeamsBot/transport/api/GraphApi.users.js.map +1 -1
  218. package/dist/nodes/TeamsBot/transport/api/GraphApiClient.auth.js +8 -8
  219. package/dist/nodes/TeamsBot/transport/api/GraphApiClient.auth.js.map +1 -1
  220. package/dist/nodes/TeamsBot/types/ConversationReferenceStore.d.ts +20 -0
  221. package/dist/nodes/TeamsBot/types/ConversationReferenceStore.js +3 -0
  222. package/dist/nodes/TeamsBot/types/ConversationReferenceStore.js.map +1 -0
  223. package/dist/nodes/TeamsBot/types/api-types.d.ts +136 -0
  224. package/dist/nodes/TeamsBot/types/index.d.ts +1 -0
  225. package/dist/nodes/TeamsBot/types/index.js +2 -0
  226. package/dist/nodes/TeamsBot/types/index.js.map +1 -1
  227. package/dist/nodes/TeamsBot/utils/ActivityNormaliser.d.ts +33 -0
  228. package/dist/nodes/TeamsBot/utils/ActivityNormaliser.js +93 -0
  229. package/dist/nodes/TeamsBot/utils/ActivityNormaliser.js.map +1 -0
  230. package/dist/nodes/TeamsBot/utils/ConversationIdResolver.d.ts +21 -0
  231. package/dist/nodes/TeamsBot/utils/ConversationIdResolver.js +41 -0
  232. package/dist/nodes/TeamsBot/utils/ConversationIdResolver.js.map +1 -0
  233. package/dist/nodes/TeamsBot/utils/StaticDataConversationReferenceStore.d.ts +11 -0
  234. package/dist/nodes/TeamsBot/utils/StaticDataConversationReferenceStore.js +32 -0
  235. package/dist/nodes/TeamsBot/utils/StaticDataConversationReferenceStore.js.map +1 -0
  236. package/dist/nodes/TeamsBot/utils/{subscriptionManager.d.ts → SubscriptionManager.d.ts} +28 -1
  237. package/dist/nodes/TeamsBot/utils/{subscriptionManager.js → SubscriptionManager.js} +37 -2
  238. package/dist/nodes/TeamsBot/utils/SubscriptionManager.js.map +1 -0
  239. package/dist/nodes/TeamsBot/utils/constants.d.ts +21 -0
  240. package/dist/nodes/TeamsBot/utils/constants.js +26 -1
  241. package/dist/nodes/TeamsBot/utils/constants.js.map +1 -1
  242. package/dist/nodes/TeamsBot/utils/graphNotificationParser.d.ts +8 -0
  243. package/dist/nodes/TeamsBot/utils/graphNotificationParser.js +17 -0
  244. package/dist/nodes/TeamsBot/utils/graphNotificationParser.js.map +1 -1
  245. package/dist/nodes/TeamsBot/utils/index.d.ts +9 -0
  246. package/dist/nodes/TeamsBot/utils/index.js +22 -1
  247. package/dist/nodes/TeamsBot/utils/index.js.map +1 -1
  248. package/dist/nodes/TeamsBot/utils/invokeResponse.d.ts +5 -0
  249. package/dist/nodes/TeamsBot/utils/invokeResponse.js +14 -0
  250. package/dist/nodes/TeamsBot/utils/invokeResponse.js.map +1 -0
  251. package/dist/nodes/TeamsBot/utils/operationHelpers.d.ts +27 -0
  252. package/dist/nodes/TeamsBot/utils/operationHelpers.js +58 -0
  253. package/dist/nodes/TeamsBot/utils/operationHelpers.js.map +1 -0
  254. package/dist/nodes/TeamsBot/utils/sendAndWaitWebhook.js +53 -14
  255. package/dist/nodes/TeamsBot/utils/sendAndWaitWebhook.js.map +1 -1
  256. package/dist/nodes/TeamsBot/utils/tokenHelpers.d.ts +5 -0
  257. package/dist/nodes/TeamsBot/utils/tokenHelpers.js +39 -3
  258. package/dist/nodes/TeamsBot/utils/tokenHelpers.js.map +1 -1
  259. package/package.json +18 -8
  260. package/dist/nodes/TeamsBot/actions/messages.history.d.ts +0 -4
  261. package/dist/nodes/TeamsBot/actions/messages.history.js +0 -143
  262. package/dist/nodes/TeamsBot/actions/messages.history.js.map +0 -1
  263. package/dist/nodes/TeamsBot/descriptions/index.d.ts +0 -3
  264. package/dist/nodes/TeamsBot/descriptions/index.js +0 -20
  265. package/dist/nodes/TeamsBot/descriptions/index.js.map +0 -1
  266. package/dist/nodes/TeamsBot/descriptions/message.history.description.d.ts +0 -8
  267. package/dist/nodes/TeamsBot/descriptions/message.history.description.js +0 -106
  268. package/dist/nodes/TeamsBot/descriptions/message.history.description.js.map +0 -1
  269. package/dist/nodes/TeamsBot/utils/subscriptionManager.js.map +0 -1
package/README.md ADDED
@@ -0,0 +1,166 @@
1
+ # n8n-nodes-microsoft-teams-bot
2
+
3
+ This is an n8n community node package for Microsoft Teams Bot integration. It provides comprehensive bot-powered messaging, Adaptive Card support, and Graph API operations for Microsoft Teams.
4
+
5
+ The package exposes three nodes:
6
+
7
+ - **TeamsBot** -- an action node for sending messages, managing Adaptive Cards, querying channels, chats, teams, and users.
8
+ - **TeamsBotAiTools** -- an AI tools output node exposing Teams operations for the n8n AI Agent and MCP Trigger.
9
+ - **TeamsBotTrigger** -- a trigger node that receives Teams events via Microsoft Graph API change subscriptions.
10
+
11
+ ## Installation
12
+
13
+ Follow the [n8n community nodes installation guide](https://docs.n8n.io/integrations/community-nodes/installation/).
14
+
15
+ 1. Open your n8n instance.
16
+ 2. Go to **Settings > Community Nodes**.
17
+ 3. Select **Install**.
18
+ 4. Enter `n8n-nodes-microsoft-teams-bot` in the package name field.
19
+ 5. Agree to the risks of using community nodes and select **Install**.
20
+
21
+ ## Operations
22
+
23
+ ### TeamsBot (Action Node)
24
+
25
+ #### Messages
26
+
27
+ - Send a message to a channel or chat
28
+ - Send and wait for a response (with Graph API subscription monitoring)
29
+ - Send or reply with file attachments
30
+ - Reply to an existing message (1:1 chats and channel threads)
31
+ - Reply to a channel thread via Agents SDK thread-scoped conversation IDs
32
+ - @mention team members via searchable dropdown (auto-constructs mention entities)
33
+ - Update or delete a message
34
+ - Soft delete and restore messages
35
+ - List, get, and get all messages
36
+ - List replies and delta queries
37
+ - Pin and unpin messages (chat and channel)
38
+ - Set and unset reactions
39
+ - Analyse reactions and get reaction analytics
40
+ - Export all or retained chat messages
41
+ - Process files and generate thumbnails
42
+ - Monitor upload progress
43
+
44
+ #### Adaptive Cards
45
+
46
+ - Send an Adaptive Card
47
+ - Send approval cards
48
+ - Send notification cards
49
+ - Update a card (in chat or channel)
50
+ - Process card actions
51
+
52
+ #### Card Builder
53
+
54
+ - Build Adaptive Cards using a visual builder with templates
55
+
56
+ #### Chats
57
+
58
+ - Create, get, update, and delete chats
59
+ - Get chat for app
60
+ - Add, get, list, and remove members
61
+ - Remove all access for a user
62
+
63
+ #### Channels
64
+
65
+ - Get channel by ID or name
66
+ - List all channels for a team
67
+
68
+ #### Teams
69
+
70
+ - Get team by ID or name
71
+ - List all teams
72
+
73
+ #### Users
74
+
75
+ - Get user by UPN (User Principal Name)
76
+ - List users
77
+
78
+ ### TeamsBotAiTools (AI Tools Output Node)
79
+
80
+ Exposes Microsoft Teams Bot operations as AI tools for the n8n AI Agent node and MCP Trigger. Each resource produces a single unified tool with an `operation` enum field.
81
+
82
+ #### Resources
83
+
84
+ | Resource | Tool Name | Operations |
85
+ |----------|-----------|-----------|
86
+ | Message | `teamsbot_message` | send, reply, get, getAll, update, delete |
87
+ | Channel | `teamsbot_channel` | get, getAll |
88
+ | Team | `teamsbot_team` | get, getAll |
89
+ | User | `teamsbot_user` | get, getAll |
90
+ | Chat | `teamsbot_chat` | get, create, update, delete |
91
+ | Adaptive Card | `teamsbot_card` | send, update |
92
+
93
+ #### Features
94
+
95
+ - **Name→GUID resolution**: team names, channel names, and user display names/emails are automatically resolved to Microsoft Graph GUIDs. Ambiguous matches return candidates for user disambiguation.
96
+ - **Two-tier write safety**: operations classified as mutating (send, reply, create, update) or destructive (delete) with independent UI toggles. Read-only by default.
97
+ - **Structured response envelopes**: consistent JSON responses with `schemaVersion`, success/error indicators, and `nextAction` guidance for LLM self-correction.
98
+
99
+ ### TeamsBotTrigger (Trigger Node)
100
+
101
+ Triggers a workflow when messages are posted in Microsoft Teams. Supports the following subscription scopes:
102
+
103
+ - **Specific Channel** -- trigger on messages in a particular Teams channel
104
+ - **Specific Chat** -- trigger on messages in a particular chat
105
+ - **All Chats** -- trigger on all chat messages across the tenant (requires additional licensing)
106
+ - **All Channels** -- trigger on all channel messages across the tenant (requires additional licensing)
107
+
108
+ The trigger node manages Graph API subscription lifecycle automatically, including creation on workflow activation and removal on deactivation.
109
+
110
+ ## Credentials
111
+
112
+ This node uses a single credential type (`Teams Bot API`) that requires authentication details for two distinct Microsoft APIs.
113
+
114
+ ### Microsoft 365 Agents SDK (required for messaging operations)
115
+
116
+ All message sending, updating, deleting, and Adaptive Card operations use the Microsoft 365 Agents SDK (formerly Bot Framework). You will need:
117
+
118
+ | Field | Description |
119
+ |---|---|
120
+ | **Bot ID (Microsoft App ID)** | The Application (Client) ID from your Azure Bot / Agents SDK app registration. |
121
+ | **Bot Secret** | The client secret for the bot app registration. |
122
+ | **Service URL** | The regional Bot Framework service URL for your Teams tenant (e.g. Americas, EMEA, APAC, India). |
123
+
124
+ ### Microsoft Graph API (required for queries and subscriptions)
125
+
126
+ Channel, chat, team, and user queries, bot installation, and webhook subscriptions use the Microsoft Graph API with OAuth client credentials. You will need:
127
+
128
+ | Field | Description |
129
+ |---|---|
130
+ | **Azure AD App (Client) ID** | The Application (Client) ID from your Azure AD app registration. |
131
+ | **Tenant ID** | The Directory (Tenant) ID from the Azure Portal. |
132
+ | **Client Secret** | The client secret for Graph API authentication. |
133
+
134
+ ### Teams App Configuration
135
+
136
+ | Field | Description |
137
+ |---|---|
138
+ | **Teams App ID** | The ID from your Teams app manifest (different from the Bot ID). Required for bot installation operations. |
139
+
140
+ ### Optional: Encryption Certificates
141
+
142
+ For encrypted Graph API webhook notifications using `includeResourceData: true`, you can optionally provide:
143
+
144
+ - **Certificate Thumbprint** -- SHA-1 thumbprint of your X.509 certificate.
145
+ - **Certificate (PEM Format)** -- Your X.509 certificate in PEM format.
146
+
147
+ **Note:** If you use a single Azure AD app registration for both the Agents SDK and Graph API (recommended for simpler setup), the Bot ID and Client ID can be the same value, as can the Bot Secret and Client Secret.
148
+
149
+ ## Compatibility
150
+
151
+ - Minimum n8n version: 1.0.0
152
+ - Node.js: >= 18.0.0
153
+ - Tested with n8n 1.14.x
154
+
155
+ ## Resources
156
+
157
+ - [n8n Community Nodes Documentation](https://docs.n8n.io/integrations/community-nodes/)
158
+ - [Microsoft Graph API Documentation](https://learn.microsoft.com/en-us/graph/overview)
159
+ - [Microsoft 365 Agents SDK Documentation](https://learn.microsoft.com/en-us/microsoft-365/agents-sdk/)
160
+ - [Azure Bot Service Registration](https://learn.microsoft.com/en-us/azure/bot-service/bot-service-quickstart-registration)
161
+ - [Teams Change Notifications Overview](https://learn.microsoft.com/en-us/graph/teams-change-notification-in-microsoft-teams-overview)
162
+ - [Adaptive Cards Documentation](https://adaptivecards.io/)
163
+
164
+ ## Licence
165
+
166
+ [MIT](https://opensource.org/licenses/MIT)
@@ -1,9 +1,8 @@
1
- import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
1
+ import type { ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
2
2
  export declare class TeamsBotApi implements ICredentialType {
3
3
  name: string;
4
4
  displayName: string;
5
5
  documentationUrl: string;
6
- authenticate: IAuthenticateGeneric;
7
6
  test: ICredentialTestRequest;
8
7
  properties: INodeProperties[];
9
8
  }
@@ -6,15 +6,6 @@ class TeamsBotApi {
6
6
  this.name = 'teamsBotApi';
7
7
  this.displayName = 'Teams Bot API';
8
8
  this.documentationUrl = 'https://learn.microsoft.com/en-us/microsoft-365/agents-sdk/azure-bot-authentication-for-javascript';
9
- // Authentication configuration for the Agents SDK
10
- this.authenticate = {
11
- type: 'generic',
12
- properties: {
13
- headers: {
14
- Authorization: '={{$credentials.botToken}}',
15
- },
16
- },
17
- };
18
9
  // Basic test - validates that Tenant ID is properly formatted
19
10
  // Note: This does NOT test actual authentication (OAuth token endpoints require form-urlencoded)
20
11
  // Comprehensive testing with actual API validation exists in teamsBotApiTest but requires
@@ -1 +1 @@
1
- {"version":3,"file":"TeamsBotApi.credentials.js","sourceRoot":"","sources":["../../credentials/TeamsBotApi.credentials.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TeamsBotApi.credentials.js","sourceRoot":"","sources":["../../credentials/TeamsBotApi.credentials.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from './nodes/TeamsBot/TeamsBot.node';
2
2
  export * from './nodes/TeamsBot/TeamsBotTrigger.node';
3
+ export * from './nodes/TeamsBot/TeamsBotAiTools.node';
3
4
  export * from './credentials/TeamsBotApi.credentials';
package/dist/index.js CHANGED
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  // Export nodes
18
18
  __exportStar(require("./nodes/TeamsBot/TeamsBot.node"), exports);
19
19
  __exportStar(require("./nodes/TeamsBot/TeamsBotTrigger.node"), exports);
20
+ __exportStar(require("./nodes/TeamsBot/TeamsBotAiTools.node"), exports);
20
21
  // Export credentials
21
22
  __exportStar(require("./credentials/TeamsBotApi.credentials"), exports);
22
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,eAAe;AACf,iEAA+C;AAC/C,wEAAsD;AAEtD,qBAAqB;AACrB,wEAAsD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,eAAe;AACf,iEAA+C;AAC/C,wEAAsD;AACtD,wEAAsD;AAEtD,qBAAqB;AACrB,wEAAsD"}
@@ -103,7 +103,55 @@ class TeamsBot {
103
103
  source: query.source,
104
104
  });
105
105
  const decision = typeof query.decision === 'string' ? query.decision : undefined;
106
- const source = typeof query.source === 'string' ? query.source : undefined;
106
+ // Extract execution ID from resume URL path: /webhook-waiting/{executionId}/...
107
+ const path = req.path || req.url || '';
108
+ const execMatch = path.match(/\/webhook-waiting\/([^/]+)/);
109
+ const executionIdFromPath = execMatch === null || execMatch === void 0 ? void 0 : execMatch[1];
110
+ // Look up context from workflow static data (global) keyed by execution ID
111
+ // This persists across execution and webhook contexts in activated workflows
112
+ const workflowStaticData = this.getWorkflowStaticData('global');
113
+ if (!workflowStaticData.sendAndWaitExecutions) {
114
+ workflowStaticData.sendAndWaitExecutions = {};
115
+ }
116
+ const now = Date.now();
117
+ this.logger.info('[TeamsBot] Looking up send-and-wait context', {
118
+ executionIdFromPath,
119
+ sendAndWaitExecutionsKeys: Object.keys(workflowStaticData.sendAndWaitExecutions),
120
+ });
121
+ // Clean up expired entries
122
+ for (const [key, ctx] of Object.entries(workflowStaticData.sendAndWaitExecutions)) {
123
+ if (ctx.expiresAt < now) {
124
+ delete workflowStaticData.sendAndWaitExecutions[key];
125
+ workflowStaticData.__dataUpdated = true;
126
+ }
127
+ }
128
+ let context;
129
+ if (executionIdFromPath && workflowStaticData.sendAndWaitExecutions[executionIdFromPath]) {
130
+ const storedContext = workflowStaticData.sendAndWaitExecutions[executionIdFromPath];
131
+ if (storedContext.expiresAt >= now) {
132
+ context = storedContext;
133
+ this.logger.info('[TeamsBot] Found valid send-and-wait context by executionId', {
134
+ executionIdFromPath,
135
+ });
136
+ delete workflowStaticData.sendAndWaitExecutions[executionIdFromPath];
137
+ workflowStaticData.__dataUpdated = true;
138
+ }
139
+ else {
140
+ // Entry was already removed by the expiry sweep above; this branch is defensive only.
141
+ delete workflowStaticData.sendAndWaitExecutions[executionIdFromPath];
142
+ this.logger.warn('[TeamsBot] Send-and-wait context expired', {
143
+ executionIdFromPath,
144
+ expiresAt: new Date(storedContext.expiresAt).toISOString(),
145
+ });
146
+ workflowStaticData.__dataUpdated = true;
147
+ }
148
+ }
149
+ if (!context) {
150
+ this.logger.warn('[TeamsBot] No send-and-wait context found', {
151
+ executionIdFromPath,
152
+ availableKeys: Object.keys(workflowStaticData.sendAndWaitExecutions),
153
+ });
154
+ }
107
155
  const decisionLabel = decision === 'approved'
108
156
  ? 'Approved'
109
157
  : decision === 'declined'
@@ -130,16 +178,40 @@ class TeamsBot {
130
178
  </body>
131
179
  </html>
132
180
  `;
181
+ const sendResponse = context === null || context === void 0 ? void 0 : context.sendResponse;
182
+ const contextResource = context === null || context === void 0 ? void 0 : context.resource;
183
+ let chatId = null;
184
+ let teamId = null;
185
+ let channelId = null;
186
+ if (contextResource) {
187
+ const chatMatch = contextResource.match(/\/chats\/([^\/]+)/);
188
+ if (chatMatch)
189
+ chatId = chatMatch[1];
190
+ const channelMatch = contextResource.match(/\/teams\/([^\/]+)\/channels\/([^\/]+)/);
191
+ if (channelMatch) {
192
+ teamId = channelMatch[1];
193
+ channelId = channelMatch[2];
194
+ }
195
+ }
196
+ const approved = decision === 'approved';
197
+ const decisionField = decision === 'approved' ? 'approved'
198
+ : decision === 'declined' ? 'declined'
199
+ : 'unknown';
200
+ const responsePayload = {
201
+ data: { approved },
202
+ decision: decisionField,
203
+ respondedAt: new Date().toISOString(),
204
+ from: null,
205
+ reply: null,
206
+ messageId: null,
207
+ sendResponse: sendResponse !== null && sendResponse !== void 0 ? sendResponse : null,
208
+ chatId,
209
+ teamId,
210
+ channelId,
211
+ };
133
212
  return {
134
213
  webhookResponse: htmlPage,
135
- workflowData: [[{
136
- json: {
137
- responded: true,
138
- decision,
139
- source,
140
- timestamp: new Date().toISOString(),
141
- },
142
- }]],
214
+ workflowData: [[{ json: responsePayload }]],
143
215
  };
144
216
  }
145
217
  // Handle Graph API validation token
@@ -1 +1 @@
1
- {"version":3,"file":"TeamsBot.node.js","sourceRoot":"","sources":["../../../nodes/TeamsBot/TeamsBot.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TeamsBot.node.js","sourceRoot":"","sources":["../../../nodes/TeamsBot/TeamsBot.node.ts"],"names":[],"mappings":"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"}
@@ -1,73 +1,73 @@
1
- {
2
- "node": "n8n-nodes-microsoft-teams-bot",
3
- "nodeVersion": 1,
4
- "codexVersion": 1,
5
- "categories": [
6
- "Communication"
7
- ],
8
- "resources": {
9
- "credentialDocumentation": [
10
- {
11
- "url": "https://learn.microsoft.com/en-us/azure/bot-service/bot-service-quickstart-registration"
12
- }
13
- ],
14
- "primaryDocumentation": [
15
- {
16
- "url": "https://learn.microsoft.com/en-us/azure/bot-service/bot-builder-basics?view=azure-bot-service-4.0"
17
- }
18
- ]
19
- },
20
- "subcategories": {
21
- "Core Nodes": [
22
- "Communication"
23
- ]
24
- },
25
- "alias": [
26
- "Microsoft",
27
- "Teams",
28
- "Bot",
29
- "Chat",
30
- "Message",
31
- "Channel",
32
- "Card",
33
- "Adaptive Card"
34
- ],
35
- "operations": {
36
- "channel": {
37
- "send": {
38
- "description": "Send a message to a channel (Agents SDK)",
39
- "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-send-and-receive-messages"
40
- },
41
- "sendCard": {
42
- "description": "Send an adaptive card to a channel (Agents SDK)",
43
- "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-add-rich-cards"
44
- }
45
- },
46
- "user": {
47
- "send": {
48
- "description": "Send a message to a user (Agents SDK)",
49
- "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-send-and-receive-messages"
50
- },
51
- "sendCard": {
52
- "description": "Send an adaptive card to a user (Agents SDK)",
53
- "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-add-rich-cards"
54
- }
55
- },
56
- "card": {
57
- "update": {
58
- "description": "Update an existing adaptive card (Agents SDK)",
59
- "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-add-rich-cards"
60
- }
61
- },
62
- "app": {
63
- "install": {
64
- "description": "Install the bot in a team or for a user (Graph API)",
65
- "documentationUrl": "https://learn.microsoft.com/en-us/graph/api/teamsappinstallation-add"
66
- },
67
- "check": {
68
- "description": "Check if the bot is installed (Graph API)",
69
- "documentationUrl": "https://learn.microsoft.com/en-us/graph/api/teamsappinstallation-list"
70
- }
71
- }
72
- }
1
+ {
2
+ "node": "n8n-nodes-microsoft-teams-bot",
3
+ "nodeVersion": 1,
4
+ "codexVersion": 1,
5
+ "categories": [
6
+ "Communication"
7
+ ],
8
+ "resources": {
9
+ "credentialDocumentation": [
10
+ {
11
+ "url": "https://learn.microsoft.com/en-us/azure/bot-service/bot-service-quickstart-registration"
12
+ }
13
+ ],
14
+ "primaryDocumentation": [
15
+ {
16
+ "url": "https://learn.microsoft.com/en-us/azure/bot-service/bot-builder-basics?view=azure-bot-service-4.0"
17
+ }
18
+ ]
19
+ },
20
+ "subcategories": {
21
+ "Core Nodes": [
22
+ "Communication"
23
+ ]
24
+ },
25
+ "alias": [
26
+ "Microsoft",
27
+ "Teams",
28
+ "Bot",
29
+ "Chat",
30
+ "Message",
31
+ "Channel",
32
+ "Card",
33
+ "Adaptive Card"
34
+ ],
35
+ "operations": {
36
+ "channel": {
37
+ "send": {
38
+ "description": "Send a message to a channel (Agents SDK)",
39
+ "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-send-and-receive-messages"
40
+ },
41
+ "sendCard": {
42
+ "description": "Send an adaptive card to a channel (Agents SDK)",
43
+ "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-add-rich-cards"
44
+ }
45
+ },
46
+ "user": {
47
+ "send": {
48
+ "description": "Send a message to a user (Agents SDK)",
49
+ "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-send-and-receive-messages"
50
+ },
51
+ "sendCard": {
52
+ "description": "Send an adaptive card to a user (Agents SDK)",
53
+ "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-add-rich-cards"
54
+ }
55
+ },
56
+ "card": {
57
+ "update": {
58
+ "description": "Update an existing adaptive card (Agents SDK)",
59
+ "documentationUrl": "https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-add-rich-cards"
60
+ }
61
+ },
62
+ "app": {
63
+ "install": {
64
+ "description": "Install the bot in a team or for a user (Graph API)",
65
+ "documentationUrl": "https://learn.microsoft.com/en-us/graph/api/teamsappinstallation-add"
66
+ },
67
+ "check": {
68
+ "description": "Check if the bot is installed (Graph API)",
69
+ "documentationUrl": "https://learn.microsoft.com/en-us/graph/api/teamsappinstallation-list"
70
+ }
71
+ }
72
+ }
73
73
  }
@@ -0,0 +1,12 @@
1
+ import type { IExecuteFunctions, ILoadOptionsFunctions, INodeType, INodeTypeDescription, INodePropertyOptions, INodeExecutionData, ISupplyDataFunctions, SupplyData } from 'n8n-workflow';
2
+ export declare class TeamsBotAiTools implements INodeType {
3
+ description: INodeTypeDescription;
4
+ methods: {
5
+ loadOptions: {
6
+ getToolResources(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]>;
7
+ getToolResourceOperations(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]>;
8
+ };
9
+ };
10
+ supplyData(this: ISupplyDataFunctions, itemIndex: number): Promise<SupplyData>;
11
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
12
+ }