@azure/communication-call-automation 1.5.0 → 1.6.0-alpha.20250901.2

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 (481) hide show
  1. package/README.md +48 -0
  2. package/dist/browser/callAutomationClient.d.ts +8 -0
  3. package/dist/browser/callAutomationClient.d.ts.map +1 -1
  4. package/dist/browser/callAutomationClient.js +141 -84
  5. package/dist/browser/callAutomationClient.js.map +1 -1
  6. package/dist/browser/callAutomationEventParser.d.ts.map +1 -1
  7. package/dist/browser/callAutomationEventParser.js +56 -9
  8. package/dist/browser/callAutomationEventParser.js.map +1 -1
  9. package/dist/browser/callConnection.d.ts +15 -5
  10. package/dist/browser/callConnection.d.ts.map +1 -1
  11. package/dist/browser/callConnection.js +193 -86
  12. package/dist/browser/callConnection.js.map +1 -1
  13. package/dist/browser/callMedia.d.ts +19 -9
  14. package/dist/browser/callMedia.d.ts.map +1 -1
  15. package/dist/browser/callMedia.js +175 -28
  16. package/dist/browser/callMedia.js.map +1 -1
  17. package/dist/browser/callRecording.d.ts +8 -2
  18. package/dist/browser/callRecording.d.ts.map +1 -1
  19. package/dist/browser/callRecording.js +26 -16
  20. package/dist/browser/callRecording.js.map +1 -1
  21. package/dist/browser/contentDownloader.js +12 -11
  22. package/dist/browser/contentDownloader.js.map +1 -1
  23. package/dist/browser/credential/callAutomationAccessKeyCredentialPolicy.js +2 -1
  24. package/dist/browser/credential/callAutomationAccessKeyCredentialPolicy.js.map +1 -1
  25. package/dist/browser/credential/callAutomationAuthPolicy.js +1 -1
  26. package/dist/browser/credential/callAutomationAuthPolicy.js.map +1 -1
  27. package/dist/browser/credential/cryptoUtils-browser.mjs.map +1 -1
  28. package/dist/browser/credential/cryptoUtils.js +2 -1
  29. package/dist/browser/eventprocessor/callAutomationEventProcessor.d.ts +39 -0
  30. package/dist/browser/eventprocessor/callAutomationEventProcessor.d.ts.map +1 -0
  31. package/dist/browser/eventprocessor/callAutomationEventProcessor.js +137 -0
  32. package/dist/browser/eventprocessor/callAutomationEventProcessor.js.map +1 -0
  33. package/dist/browser/eventprocessor/eventResponses.d.ts +134 -0
  34. package/dist/browser/eventprocessor/eventResponses.d.ts.map +1 -0
  35. package/dist/browser/eventprocessor/eventResponses.js +4 -0
  36. package/dist/browser/eventprocessor/eventResponses.js.map +1 -0
  37. package/dist/browser/generated/src/callAutomationApiClient.d.ts +2 -1
  38. package/dist/browser/generated/src/callAutomationApiClient.d.ts.map +1 -1
  39. package/dist/browser/generated/src/callAutomationApiClient.js +7 -15
  40. package/dist/browser/generated/src/callAutomationApiClient.js.map +1 -1
  41. package/dist/browser/generated/src/models/index.d.ts +1129 -347
  42. package/dist/browser/generated/src/models/index.d.ts.map +1 -1
  43. package/dist/browser/generated/src/models/index.js +159 -75
  44. package/dist/browser/generated/src/models/index.js.map +1 -1
  45. package/dist/browser/generated/src/models/mappers.d.ts +88 -47
  46. package/dist/browser/generated/src/models/mappers.d.ts.map +1 -1
  47. package/dist/browser/generated/src/models/mappers.js +2136 -499
  48. package/dist/browser/generated/src/models/mappers.js.map +1 -1
  49. package/dist/browser/generated/src/models/parameters.d.ts +8 -1
  50. package/dist/browser/generated/src/models/parameters.d.ts.map +1 -1
  51. package/dist/browser/generated/src/models/parameters.js +45 -6
  52. package/dist/browser/generated/src/models/parameters.js.map +1 -1
  53. package/dist/browser/generated/src/operations/callConnection.d.ts +16 -2
  54. package/dist/browser/generated/src/operations/callConnection.d.ts.map +1 -1
  55. package/dist/browser/generated/src/operations/callConnection.js +105 -24
  56. package/dist/browser/generated/src/operations/callConnection.js.map +1 -1
  57. package/dist/browser/generated/src/operations/callDialog.d.ts +35 -0
  58. package/dist/browser/generated/src/operations/callDialog.d.ts.map +1 -0
  59. package/dist/browser/generated/src/operations/callDialog.js +111 -0
  60. package/dist/browser/generated/src/operations/callDialog.js.map +1 -0
  61. package/dist/browser/generated/src/operations/callMedia.d.ts +15 -8
  62. package/dist/browser/generated/src/operations/callMedia.d.ts.map +1 -1
  63. package/dist/browser/generated/src/operations/callMedia.js +50 -26
  64. package/dist/browser/generated/src/operations/callMedia.js.map +1 -1
  65. package/dist/browser/generated/src/operations/callRecording.d.ts +7 -1
  66. package/dist/browser/generated/src/operations/callRecording.d.ts.map +1 -1
  67. package/dist/browser/generated/src/operations/callRecording.js +24 -1
  68. package/dist/browser/generated/src/operations/callRecording.js.map +1 -1
  69. package/dist/browser/generated/src/operations/index.d.ts +1 -0
  70. package/dist/browser/generated/src/operations/index.d.ts.map +1 -1
  71. package/dist/browser/generated/src/operations/index.js +1 -0
  72. package/dist/browser/generated/src/operations/index.js.map +1 -1
  73. package/dist/browser/generated/src/operationsInterfaces/callConnection.d.ts +16 -2
  74. package/dist/browser/generated/src/operationsInterfaces/callConnection.d.ts.map +1 -1
  75. package/dist/browser/generated/src/operationsInterfaces/callConnection.js.map +1 -1
  76. package/dist/browser/generated/src/operationsInterfaces/callDialog.d.ts +27 -0
  77. package/dist/browser/generated/src/operationsInterfaces/callDialog.d.ts.map +1 -0
  78. package/dist/browser/generated/src/operationsInterfaces/callDialog.js +9 -0
  79. package/dist/browser/generated/src/operationsInterfaces/callDialog.js.map +1 -0
  80. package/dist/browser/generated/src/operationsInterfaces/callMedia.d.ts +15 -8
  81. package/dist/browser/generated/src/operationsInterfaces/callMedia.d.ts.map +1 -1
  82. package/dist/browser/generated/src/operationsInterfaces/callMedia.js.map +1 -1
  83. package/dist/browser/generated/src/operationsInterfaces/callRecording.d.ts +7 -1
  84. package/dist/browser/generated/src/operationsInterfaces/callRecording.d.ts.map +1 -1
  85. package/dist/browser/generated/src/operationsInterfaces/callRecording.js.map +1 -1
  86. package/dist/browser/generated/src/operationsInterfaces/index.d.ts +1 -0
  87. package/dist/browser/generated/src/operationsInterfaces/index.d.ts.map +1 -1
  88. package/dist/browser/generated/src/operationsInterfaces/index.js +1 -0
  89. package/dist/browser/generated/src/operationsInterfaces/index.js.map +1 -1
  90. package/dist/browser/generated/src/pagingHelper.js +4 -2
  91. package/dist/browser/generated/src/pagingHelper.js.map +1 -1
  92. package/dist/browser/index.d.ts +2 -0
  93. package/dist/browser/index.d.ts.map +1 -1
  94. package/dist/browser/index.js +2 -0
  95. package/dist/browser/index.js.map +1 -1
  96. package/dist/browser/models/constants.d.ts.map +1 -1
  97. package/dist/browser/models/constants.js +1 -1
  98. package/dist/browser/models/constants.js.map +1 -1
  99. package/dist/browser/models/events.d.ts +336 -296
  100. package/dist/browser/models/events.d.ts.map +1 -1
  101. package/dist/browser/models/events.js.map +1 -1
  102. package/dist/browser/models/models.d.ts +76 -38
  103. package/dist/browser/models/models.d.ts.map +1 -1
  104. package/dist/browser/models/models.js +3 -1
  105. package/dist/browser/models/models.js.map +1 -1
  106. package/dist/browser/models/options.d.ts +34 -4
  107. package/dist/browser/models/options.d.ts.map +1 -1
  108. package/dist/browser/models/options.js.map +1 -1
  109. package/dist/browser/models/responses.d.ts +82 -10
  110. package/dist/browser/models/responses.d.ts.map +1 -1
  111. package/dist/browser/models/responses.js.map +1 -1
  112. package/dist/browser/models/streaming.d.ts +27 -26
  113. package/dist/browser/models/streaming.d.ts.map +1 -1
  114. package/dist/browser/models/streaming.js +57 -28
  115. package/dist/browser/models/streaming.js.map +1 -1
  116. package/dist/browser/streamingData.d.ts.map +1 -1
  117. package/dist/browser/streamingData.js +1 -10
  118. package/dist/browser/streamingData.js.map +1 -1
  119. package/dist/browser/utli/converters.d.ts +26 -2
  120. package/dist/browser/utli/converters.d.ts.map +1 -1
  121. package/dist/browser/utli/converters.js +122 -48
  122. package/dist/browser/utli/converters.js.map +1 -1
  123. package/dist/commonjs/callAutomationClient.d.ts +8 -0
  124. package/dist/commonjs/callAutomationClient.d.ts.map +1 -1
  125. package/dist/commonjs/callAutomationClient.js +139 -82
  126. package/dist/commonjs/callAutomationClient.js.map +1 -1
  127. package/dist/commonjs/callAutomationEventParser.d.ts.map +1 -1
  128. package/dist/commonjs/callAutomationEventParser.js +55 -8
  129. package/dist/commonjs/callAutomationEventParser.js.map +1 -1
  130. package/dist/commonjs/callConnection.d.ts +15 -5
  131. package/dist/commonjs/callConnection.d.ts.map +1 -1
  132. package/dist/commonjs/callConnection.js +194 -87
  133. package/dist/commonjs/callConnection.js.map +1 -1
  134. package/dist/commonjs/callMedia.d.ts +19 -9
  135. package/dist/commonjs/callMedia.d.ts.map +1 -1
  136. package/dist/commonjs/callMedia.js +183 -36
  137. package/dist/commonjs/callMedia.js.map +1 -1
  138. package/dist/commonjs/callRecording.d.ts +8 -2
  139. package/dist/commonjs/callRecording.d.ts.map +1 -1
  140. package/dist/commonjs/callRecording.js +27 -17
  141. package/dist/commonjs/callRecording.js.map +1 -1
  142. package/dist/commonjs/contentDownloader.js +12 -11
  143. package/dist/commonjs/contentDownloader.js.map +1 -1
  144. package/dist/commonjs/credential/callAutomationAccessKeyCredentialPolicy.js +2 -1
  145. package/dist/commonjs/credential/callAutomationAccessKeyCredentialPolicy.js.map +1 -1
  146. package/dist/commonjs/credential/callAutomationAuthPolicy.js +1 -1
  147. package/dist/commonjs/credential/callAutomationAuthPolicy.js.map +1 -1
  148. package/dist/commonjs/eventprocessor/callAutomationEventProcessor.d.ts +39 -0
  149. package/dist/commonjs/eventprocessor/callAutomationEventProcessor.d.ts.map +1 -0
  150. package/dist/commonjs/eventprocessor/callAutomationEventProcessor.js +141 -0
  151. package/dist/commonjs/eventprocessor/callAutomationEventProcessor.js.map +1 -0
  152. package/dist/commonjs/eventprocessor/eventResponses.d.ts +134 -0
  153. package/dist/commonjs/eventprocessor/eventResponses.d.ts.map +1 -0
  154. package/dist/commonjs/eventprocessor/eventResponses.js +5 -0
  155. package/dist/commonjs/eventprocessor/eventResponses.js.map +1 -0
  156. package/dist/commonjs/generated/src/callAutomationApiClient.d.ts +2 -1
  157. package/dist/commonjs/generated/src/callAutomationApiClient.d.ts.map +1 -1
  158. package/dist/commonjs/generated/src/callAutomationApiClient.js +6 -14
  159. package/dist/commonjs/generated/src/callAutomationApiClient.js.map +1 -1
  160. package/dist/commonjs/generated/src/models/index.d.ts +1129 -347
  161. package/dist/commonjs/generated/src/models/index.d.ts.map +1 -1
  162. package/dist/commonjs/generated/src/models/index.js +160 -76
  163. package/dist/commonjs/generated/src/models/index.js.map +1 -1
  164. package/dist/commonjs/generated/src/models/mappers.d.ts +88 -47
  165. package/dist/commonjs/generated/src/models/mappers.d.ts.map +1 -1
  166. package/dist/commonjs/generated/src/models/mappers.js +2139 -502
  167. package/dist/commonjs/generated/src/models/mappers.js.map +1 -1
  168. package/dist/commonjs/generated/src/models/parameters.d.ts +8 -1
  169. package/dist/commonjs/generated/src/models/parameters.d.ts.map +1 -1
  170. package/dist/commonjs/generated/src/models/parameters.js +45 -6
  171. package/dist/commonjs/generated/src/models/parameters.js.map +1 -1
  172. package/dist/commonjs/generated/src/operations/callConnection.d.ts +16 -2
  173. package/dist/commonjs/generated/src/operations/callConnection.d.ts.map +1 -1
  174. package/dist/commonjs/generated/src/operations/callConnection.js +104 -24
  175. package/dist/commonjs/generated/src/operations/callConnection.js.map +1 -1
  176. package/dist/commonjs/generated/src/operations/callDialog.d.ts +35 -0
  177. package/dist/commonjs/generated/src/operations/callDialog.d.ts.map +1 -0
  178. package/dist/commonjs/generated/src/operations/callDialog.js +116 -0
  179. package/dist/commonjs/generated/src/operations/callDialog.js.map +1 -0
  180. package/dist/commonjs/generated/src/operations/callMedia.d.ts +15 -8
  181. package/dist/commonjs/generated/src/operations/callMedia.d.ts.map +1 -1
  182. package/dist/commonjs/generated/src/operations/callMedia.js +50 -26
  183. package/dist/commonjs/generated/src/operations/callMedia.js.map +1 -1
  184. package/dist/commonjs/generated/src/operations/callRecording.d.ts +7 -1
  185. package/dist/commonjs/generated/src/operations/callRecording.d.ts.map +1 -1
  186. package/dist/commonjs/generated/src/operations/callRecording.js +24 -1
  187. package/dist/commonjs/generated/src/operations/callRecording.js.map +1 -1
  188. package/dist/commonjs/generated/src/operations/index.d.ts +1 -0
  189. package/dist/commonjs/generated/src/operations/index.d.ts.map +1 -1
  190. package/dist/commonjs/generated/src/operations/index.js +1 -0
  191. package/dist/commonjs/generated/src/operations/index.js.map +1 -1
  192. package/dist/commonjs/generated/src/operationsInterfaces/callConnection.d.ts +16 -2
  193. package/dist/commonjs/generated/src/operationsInterfaces/callConnection.d.ts.map +1 -1
  194. package/dist/commonjs/generated/src/operationsInterfaces/callConnection.js.map +1 -1
  195. package/dist/commonjs/generated/src/operationsInterfaces/callDialog.d.ts +27 -0
  196. package/dist/commonjs/generated/src/operationsInterfaces/callDialog.d.ts.map +1 -0
  197. package/dist/commonjs/generated/src/operationsInterfaces/callDialog.js +10 -0
  198. package/dist/commonjs/generated/src/operationsInterfaces/callDialog.js.map +1 -0
  199. package/dist/commonjs/generated/src/operationsInterfaces/callMedia.d.ts +15 -8
  200. package/dist/commonjs/generated/src/operationsInterfaces/callMedia.d.ts.map +1 -1
  201. package/dist/commonjs/generated/src/operationsInterfaces/callMedia.js.map +1 -1
  202. package/dist/commonjs/generated/src/operationsInterfaces/callRecording.d.ts +7 -1
  203. package/dist/commonjs/generated/src/operationsInterfaces/callRecording.d.ts.map +1 -1
  204. package/dist/commonjs/generated/src/operationsInterfaces/callRecording.js.map +1 -1
  205. package/dist/commonjs/generated/src/operationsInterfaces/index.d.ts +1 -0
  206. package/dist/commonjs/generated/src/operationsInterfaces/index.d.ts.map +1 -1
  207. package/dist/commonjs/generated/src/operationsInterfaces/index.js +1 -0
  208. package/dist/commonjs/generated/src/operationsInterfaces/index.js.map +1 -1
  209. package/dist/commonjs/generated/src/pagingHelper.js +4 -2
  210. package/dist/commonjs/generated/src/pagingHelper.js.map +1 -1
  211. package/dist/commonjs/index.d.ts +2 -0
  212. package/dist/commonjs/index.d.ts.map +1 -1
  213. package/dist/commonjs/index.js +2 -0
  214. package/dist/commonjs/index.js.map +1 -1
  215. package/dist/commonjs/models/constants.d.ts.map +1 -1
  216. package/dist/commonjs/models/constants.js +1 -1
  217. package/dist/commonjs/models/constants.js.map +1 -1
  218. package/dist/commonjs/models/events.d.ts +336 -296
  219. package/dist/commonjs/models/events.d.ts.map +1 -1
  220. package/dist/commonjs/models/events.js.map +1 -1
  221. package/dist/commonjs/models/models.d.ts +76 -38
  222. package/dist/commonjs/models/models.d.ts.map +1 -1
  223. package/dist/commonjs/models/models.js +21 -2
  224. package/dist/commonjs/models/models.js.map +1 -1
  225. package/dist/commonjs/models/options.d.ts +34 -4
  226. package/dist/commonjs/models/options.d.ts.map +1 -1
  227. package/dist/commonjs/models/options.js.map +1 -1
  228. package/dist/commonjs/models/responses.d.ts +82 -10
  229. package/dist/commonjs/models/responses.d.ts.map +1 -1
  230. package/dist/commonjs/models/responses.js.map +1 -1
  231. package/dist/commonjs/models/streaming.d.ts +27 -26
  232. package/dist/commonjs/models/streaming.d.ts.map +1 -1
  233. package/dist/commonjs/models/streaming.js +59 -31
  234. package/dist/commonjs/models/streaming.js.map +1 -1
  235. package/dist/commonjs/streamingData.d.ts.map +1 -1
  236. package/dist/commonjs/streamingData.js +1 -10
  237. package/dist/commonjs/streamingData.js.map +1 -1
  238. package/dist/commonjs/tsdoc-metadata.json +11 -11
  239. package/dist/commonjs/utli/converters.d.ts +26 -2
  240. package/dist/commonjs/utli/converters.d.ts.map +1 -1
  241. package/dist/commonjs/utli/converters.js +127 -47
  242. package/dist/commonjs/utli/converters.js.map +1 -1
  243. package/dist/esm/callAutomationClient.d.ts +8 -0
  244. package/dist/esm/callAutomationClient.d.ts.map +1 -1
  245. package/dist/esm/callAutomationClient.js +141 -84
  246. package/dist/esm/callAutomationClient.js.map +1 -1
  247. package/dist/esm/callAutomationEventParser.d.ts.map +1 -1
  248. package/dist/esm/callAutomationEventParser.js +56 -9
  249. package/dist/esm/callAutomationEventParser.js.map +1 -1
  250. package/dist/esm/callConnection.d.ts +15 -5
  251. package/dist/esm/callConnection.d.ts.map +1 -1
  252. package/dist/esm/callConnection.js +193 -86
  253. package/dist/esm/callConnection.js.map +1 -1
  254. package/dist/esm/callMedia.d.ts +19 -9
  255. package/dist/esm/callMedia.d.ts.map +1 -1
  256. package/dist/esm/callMedia.js +175 -28
  257. package/dist/esm/callMedia.js.map +1 -1
  258. package/dist/esm/callRecording.d.ts +8 -2
  259. package/dist/esm/callRecording.d.ts.map +1 -1
  260. package/dist/esm/callRecording.js +26 -16
  261. package/dist/esm/callRecording.js.map +1 -1
  262. package/dist/esm/contentDownloader.js +12 -11
  263. package/dist/esm/contentDownloader.js.map +1 -1
  264. package/dist/esm/credential/callAutomationAccessKeyCredentialPolicy.js +2 -1
  265. package/dist/esm/credential/callAutomationAccessKeyCredentialPolicy.js.map +1 -1
  266. package/dist/esm/credential/callAutomationAuthPolicy.js +1 -1
  267. package/dist/esm/credential/callAutomationAuthPolicy.js.map +1 -1
  268. package/dist/esm/eventprocessor/callAutomationEventProcessor.d.ts +39 -0
  269. package/dist/esm/eventprocessor/callAutomationEventProcessor.d.ts.map +1 -0
  270. package/dist/esm/eventprocessor/callAutomationEventProcessor.js +137 -0
  271. package/dist/esm/eventprocessor/callAutomationEventProcessor.js.map +1 -0
  272. package/dist/esm/eventprocessor/eventResponses.d.ts +134 -0
  273. package/dist/esm/eventprocessor/eventResponses.d.ts.map +1 -0
  274. package/dist/esm/eventprocessor/eventResponses.js +4 -0
  275. package/dist/esm/eventprocessor/eventResponses.js.map +1 -0
  276. package/dist/esm/generated/src/callAutomationApiClient.d.ts +2 -1
  277. package/dist/esm/generated/src/callAutomationApiClient.d.ts.map +1 -1
  278. package/dist/esm/generated/src/callAutomationApiClient.js +7 -15
  279. package/dist/esm/generated/src/callAutomationApiClient.js.map +1 -1
  280. package/dist/esm/generated/src/models/index.d.ts +1129 -347
  281. package/dist/esm/generated/src/models/index.d.ts.map +1 -1
  282. package/dist/esm/generated/src/models/index.js +159 -75
  283. package/dist/esm/generated/src/models/index.js.map +1 -1
  284. package/dist/esm/generated/src/models/mappers.d.ts +88 -47
  285. package/dist/esm/generated/src/models/mappers.d.ts.map +1 -1
  286. package/dist/esm/generated/src/models/mappers.js +2136 -499
  287. package/dist/esm/generated/src/models/mappers.js.map +1 -1
  288. package/dist/esm/generated/src/models/parameters.d.ts +8 -1
  289. package/dist/esm/generated/src/models/parameters.d.ts.map +1 -1
  290. package/dist/esm/generated/src/models/parameters.js +45 -6
  291. package/dist/esm/generated/src/models/parameters.js.map +1 -1
  292. package/dist/esm/generated/src/operations/callConnection.d.ts +16 -2
  293. package/dist/esm/generated/src/operations/callConnection.d.ts.map +1 -1
  294. package/dist/esm/generated/src/operations/callConnection.js +105 -24
  295. package/dist/esm/generated/src/operations/callConnection.js.map +1 -1
  296. package/dist/esm/generated/src/operations/callDialog.d.ts +35 -0
  297. package/dist/esm/generated/src/operations/callDialog.d.ts.map +1 -0
  298. package/dist/esm/generated/src/operations/callDialog.js +111 -0
  299. package/dist/esm/generated/src/operations/callDialog.js.map +1 -0
  300. package/dist/esm/generated/src/operations/callMedia.d.ts +15 -8
  301. package/dist/esm/generated/src/operations/callMedia.d.ts.map +1 -1
  302. package/dist/esm/generated/src/operations/callMedia.js +50 -26
  303. package/dist/esm/generated/src/operations/callMedia.js.map +1 -1
  304. package/dist/esm/generated/src/operations/callRecording.d.ts +7 -1
  305. package/dist/esm/generated/src/operations/callRecording.d.ts.map +1 -1
  306. package/dist/esm/generated/src/operations/callRecording.js +24 -1
  307. package/dist/esm/generated/src/operations/callRecording.js.map +1 -1
  308. package/dist/esm/generated/src/operations/index.d.ts +1 -0
  309. package/dist/esm/generated/src/operations/index.d.ts.map +1 -1
  310. package/dist/esm/generated/src/operations/index.js +1 -0
  311. package/dist/esm/generated/src/operations/index.js.map +1 -1
  312. package/dist/esm/generated/src/operationsInterfaces/callConnection.d.ts +16 -2
  313. package/dist/esm/generated/src/operationsInterfaces/callConnection.d.ts.map +1 -1
  314. package/dist/esm/generated/src/operationsInterfaces/callConnection.js.map +1 -1
  315. package/dist/esm/generated/src/operationsInterfaces/callDialog.d.ts +27 -0
  316. package/dist/esm/generated/src/operationsInterfaces/callDialog.d.ts.map +1 -0
  317. package/dist/esm/generated/src/operationsInterfaces/callDialog.js +9 -0
  318. package/dist/esm/generated/src/operationsInterfaces/callDialog.js.map +1 -0
  319. package/dist/esm/generated/src/operationsInterfaces/callMedia.d.ts +15 -8
  320. package/dist/esm/generated/src/operationsInterfaces/callMedia.d.ts.map +1 -1
  321. package/dist/esm/generated/src/operationsInterfaces/callMedia.js.map +1 -1
  322. package/dist/esm/generated/src/operationsInterfaces/callRecording.d.ts +7 -1
  323. package/dist/esm/generated/src/operationsInterfaces/callRecording.d.ts.map +1 -1
  324. package/dist/esm/generated/src/operationsInterfaces/callRecording.js.map +1 -1
  325. package/dist/esm/generated/src/operationsInterfaces/index.d.ts +1 -0
  326. package/dist/esm/generated/src/operationsInterfaces/index.d.ts.map +1 -1
  327. package/dist/esm/generated/src/operationsInterfaces/index.js +1 -0
  328. package/dist/esm/generated/src/operationsInterfaces/index.js.map +1 -1
  329. package/dist/esm/generated/src/pagingHelper.js +4 -2
  330. package/dist/esm/generated/src/pagingHelper.js.map +1 -1
  331. package/dist/esm/index.d.ts +2 -0
  332. package/dist/esm/index.d.ts.map +1 -1
  333. package/dist/esm/index.js +2 -0
  334. package/dist/esm/index.js.map +1 -1
  335. package/dist/esm/models/constants.d.ts.map +1 -1
  336. package/dist/esm/models/constants.js +1 -1
  337. package/dist/esm/models/constants.js.map +1 -1
  338. package/dist/esm/models/events.d.ts +336 -296
  339. package/dist/esm/models/events.d.ts.map +1 -1
  340. package/dist/esm/models/events.js.map +1 -1
  341. package/dist/esm/models/models.d.ts +76 -38
  342. package/dist/esm/models/models.d.ts.map +1 -1
  343. package/dist/esm/models/models.js +3 -1
  344. package/dist/esm/models/models.js.map +1 -1
  345. package/dist/esm/models/options.d.ts +34 -4
  346. package/dist/esm/models/options.d.ts.map +1 -1
  347. package/dist/esm/models/options.js.map +1 -1
  348. package/dist/esm/models/responses.d.ts +82 -10
  349. package/dist/esm/models/responses.d.ts.map +1 -1
  350. package/dist/esm/models/responses.js.map +1 -1
  351. package/dist/esm/models/streaming.d.ts +27 -26
  352. package/dist/esm/models/streaming.d.ts.map +1 -1
  353. package/dist/esm/models/streaming.js +57 -28
  354. package/dist/esm/models/streaming.js.map +1 -1
  355. package/dist/esm/streamingData.d.ts.map +1 -1
  356. package/dist/esm/streamingData.js +1 -10
  357. package/dist/esm/streamingData.js.map +1 -1
  358. package/dist/esm/utli/converters.d.ts +26 -2
  359. package/dist/esm/utli/converters.d.ts.map +1 -1
  360. package/dist/esm/utli/converters.js +122 -48
  361. package/dist/esm/utli/converters.js.map +1 -1
  362. package/dist/react-native/callAutomationClient.d.ts +8 -0
  363. package/dist/react-native/callAutomationClient.d.ts.map +1 -1
  364. package/dist/react-native/callAutomationClient.js +141 -84
  365. package/dist/react-native/callAutomationClient.js.map +1 -1
  366. package/dist/react-native/callAutomationEventParser.d.ts.map +1 -1
  367. package/dist/react-native/callAutomationEventParser.js +56 -9
  368. package/dist/react-native/callAutomationEventParser.js.map +1 -1
  369. package/dist/react-native/callConnection.d.ts +15 -5
  370. package/dist/react-native/callConnection.d.ts.map +1 -1
  371. package/dist/react-native/callConnection.js +193 -86
  372. package/dist/react-native/callConnection.js.map +1 -1
  373. package/dist/react-native/callMedia.d.ts +19 -9
  374. package/dist/react-native/callMedia.d.ts.map +1 -1
  375. package/dist/react-native/callMedia.js +175 -28
  376. package/dist/react-native/callMedia.js.map +1 -1
  377. package/dist/react-native/callRecording.d.ts +8 -2
  378. package/dist/react-native/callRecording.d.ts.map +1 -1
  379. package/dist/react-native/callRecording.js +26 -16
  380. package/dist/react-native/callRecording.js.map +1 -1
  381. package/dist/react-native/contentDownloader.js +12 -11
  382. package/dist/react-native/contentDownloader.js.map +1 -1
  383. package/dist/react-native/credential/callAutomationAccessKeyCredentialPolicy.js +2 -1
  384. package/dist/react-native/credential/callAutomationAccessKeyCredentialPolicy.js.map +1 -1
  385. package/dist/react-native/credential/callAutomationAuthPolicy.js +1 -1
  386. package/dist/react-native/credential/callAutomationAuthPolicy.js.map +1 -1
  387. package/dist/react-native/eventprocessor/callAutomationEventProcessor.d.ts +39 -0
  388. package/dist/react-native/eventprocessor/callAutomationEventProcessor.d.ts.map +1 -0
  389. package/dist/react-native/eventprocessor/callAutomationEventProcessor.js +137 -0
  390. package/dist/react-native/eventprocessor/callAutomationEventProcessor.js.map +1 -0
  391. package/dist/react-native/eventprocessor/eventResponses.d.ts +134 -0
  392. package/dist/react-native/eventprocessor/eventResponses.d.ts.map +1 -0
  393. package/dist/react-native/eventprocessor/eventResponses.js +4 -0
  394. package/dist/react-native/eventprocessor/eventResponses.js.map +1 -0
  395. package/dist/react-native/generated/src/callAutomationApiClient.d.ts +2 -1
  396. package/dist/react-native/generated/src/callAutomationApiClient.d.ts.map +1 -1
  397. package/dist/react-native/generated/src/callAutomationApiClient.js +7 -15
  398. package/dist/react-native/generated/src/callAutomationApiClient.js.map +1 -1
  399. package/dist/react-native/generated/src/models/index.d.ts +1129 -347
  400. package/dist/react-native/generated/src/models/index.d.ts.map +1 -1
  401. package/dist/react-native/generated/src/models/index.js +159 -75
  402. package/dist/react-native/generated/src/models/index.js.map +1 -1
  403. package/dist/react-native/generated/src/models/mappers.d.ts +88 -47
  404. package/dist/react-native/generated/src/models/mappers.d.ts.map +1 -1
  405. package/dist/react-native/generated/src/models/mappers.js +2136 -499
  406. package/dist/react-native/generated/src/models/mappers.js.map +1 -1
  407. package/dist/react-native/generated/src/models/parameters.d.ts +8 -1
  408. package/dist/react-native/generated/src/models/parameters.d.ts.map +1 -1
  409. package/dist/react-native/generated/src/models/parameters.js +45 -6
  410. package/dist/react-native/generated/src/models/parameters.js.map +1 -1
  411. package/dist/react-native/generated/src/operations/callConnection.d.ts +16 -2
  412. package/dist/react-native/generated/src/operations/callConnection.d.ts.map +1 -1
  413. package/dist/react-native/generated/src/operations/callConnection.js +105 -24
  414. package/dist/react-native/generated/src/operations/callConnection.js.map +1 -1
  415. package/dist/react-native/generated/src/operations/callDialog.d.ts +35 -0
  416. package/dist/react-native/generated/src/operations/callDialog.d.ts.map +1 -0
  417. package/dist/react-native/generated/src/operations/callDialog.js +111 -0
  418. package/dist/react-native/generated/src/operations/callDialog.js.map +1 -0
  419. package/dist/react-native/generated/src/operations/callMedia.d.ts +15 -8
  420. package/dist/react-native/generated/src/operations/callMedia.d.ts.map +1 -1
  421. package/dist/react-native/generated/src/operations/callMedia.js +50 -26
  422. package/dist/react-native/generated/src/operations/callMedia.js.map +1 -1
  423. package/dist/react-native/generated/src/operations/callRecording.d.ts +7 -1
  424. package/dist/react-native/generated/src/operations/callRecording.d.ts.map +1 -1
  425. package/dist/react-native/generated/src/operations/callRecording.js +24 -1
  426. package/dist/react-native/generated/src/operations/callRecording.js.map +1 -1
  427. package/dist/react-native/generated/src/operations/index.d.ts +1 -0
  428. package/dist/react-native/generated/src/operations/index.d.ts.map +1 -1
  429. package/dist/react-native/generated/src/operations/index.js +1 -0
  430. package/dist/react-native/generated/src/operations/index.js.map +1 -1
  431. package/dist/react-native/generated/src/operationsInterfaces/callConnection.d.ts +16 -2
  432. package/dist/react-native/generated/src/operationsInterfaces/callConnection.d.ts.map +1 -1
  433. package/dist/react-native/generated/src/operationsInterfaces/callConnection.js.map +1 -1
  434. package/dist/react-native/generated/src/operationsInterfaces/callDialog.d.ts +27 -0
  435. package/dist/react-native/generated/src/operationsInterfaces/callDialog.d.ts.map +1 -0
  436. package/dist/react-native/generated/src/operationsInterfaces/callDialog.js +9 -0
  437. package/dist/react-native/generated/src/operationsInterfaces/callDialog.js.map +1 -0
  438. package/dist/react-native/generated/src/operationsInterfaces/callMedia.d.ts +15 -8
  439. package/dist/react-native/generated/src/operationsInterfaces/callMedia.d.ts.map +1 -1
  440. package/dist/react-native/generated/src/operationsInterfaces/callMedia.js.map +1 -1
  441. package/dist/react-native/generated/src/operationsInterfaces/callRecording.d.ts +7 -1
  442. package/dist/react-native/generated/src/operationsInterfaces/callRecording.d.ts.map +1 -1
  443. package/dist/react-native/generated/src/operationsInterfaces/callRecording.js.map +1 -1
  444. package/dist/react-native/generated/src/operationsInterfaces/index.d.ts +1 -0
  445. package/dist/react-native/generated/src/operationsInterfaces/index.d.ts.map +1 -1
  446. package/dist/react-native/generated/src/operationsInterfaces/index.js +1 -0
  447. package/dist/react-native/generated/src/operationsInterfaces/index.js.map +1 -1
  448. package/dist/react-native/generated/src/pagingHelper.js +4 -2
  449. package/dist/react-native/generated/src/pagingHelper.js.map +1 -1
  450. package/dist/react-native/index.d.ts +2 -0
  451. package/dist/react-native/index.d.ts.map +1 -1
  452. package/dist/react-native/index.js +2 -0
  453. package/dist/react-native/index.js.map +1 -1
  454. package/dist/react-native/models/constants.d.ts.map +1 -1
  455. package/dist/react-native/models/constants.js +1 -1
  456. package/dist/react-native/models/constants.js.map +1 -1
  457. package/dist/react-native/models/events.d.ts +336 -296
  458. package/dist/react-native/models/events.d.ts.map +1 -1
  459. package/dist/react-native/models/events.js.map +1 -1
  460. package/dist/react-native/models/models.d.ts +76 -38
  461. package/dist/react-native/models/models.d.ts.map +1 -1
  462. package/dist/react-native/models/models.js +3 -1
  463. package/dist/react-native/models/models.js.map +1 -1
  464. package/dist/react-native/models/options.d.ts +34 -4
  465. package/dist/react-native/models/options.d.ts.map +1 -1
  466. package/dist/react-native/models/options.js.map +1 -1
  467. package/dist/react-native/models/responses.d.ts +82 -10
  468. package/dist/react-native/models/responses.d.ts.map +1 -1
  469. package/dist/react-native/models/responses.js.map +1 -1
  470. package/dist/react-native/models/streaming.d.ts +27 -26
  471. package/dist/react-native/models/streaming.d.ts.map +1 -1
  472. package/dist/react-native/models/streaming.js +57 -28
  473. package/dist/react-native/models/streaming.js.map +1 -1
  474. package/dist/react-native/streamingData.d.ts.map +1 -1
  475. package/dist/react-native/streamingData.js +1 -10
  476. package/dist/react-native/streamingData.js.map +1 -1
  477. package/dist/react-native/utli/converters.d.ts +26 -2
  478. package/dist/react-native/utli/converters.d.ts.map +1 -1
  479. package/dist/react-native/utli/converters.js +122 -48
  480. package/dist/react-native/utli/converters.js.map +1 -1
  481. package/package.json +36 -35
@@ -1,7 +1,8 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
+ import { __rest } from "tslib";
3
4
  import { createSerializer } from "@azure/core-client";
4
- import { communicationIdentifierConverter, callParticipantConverter } from "./utli/converters.js";
5
+ import { communicationIdentifierConverter, callParticipantConverter, teamsPhoneCallDetailsConverter, } from "./utli/converters.js";
5
6
  import { CloudEventMapper } from "./models/mapper.js";
6
7
  const serializer = createSerializer();
7
8
  /**
@@ -33,9 +34,40 @@ export function parseCallAutomationEvent(encodedEvents) {
33
34
  callbackEvent = { kind: "RemoveParticipantFailed" };
34
35
  parsed.participant = communicationIdentifierConverter(data.participant);
35
36
  break;
37
+ case "Microsoft.Communication.MoveParticipantSucceeded":
38
+ callbackEvent = { kind: "MoveParticipantSucceeded" };
39
+ parsed.participant = communicationIdentifierConverter(data.participant);
40
+ parsed.fromCall = data.fromCall;
41
+ break;
42
+ case "Microsoft.Communication.MoveParticipantFailed":
43
+ callbackEvent = { kind: "MoveParticipantFailed" };
44
+ parsed.participant = communicationIdentifierConverter(data.participant);
45
+ parsed.fromCall = data.fromCall;
46
+ break;
36
47
  case "Microsoft.Communication.CallConnected":
37
48
  callbackEvent = { kind: "CallConnected" };
38
49
  break;
50
+ case "Microsoft.Communication.IncomingCall":
51
+ callbackEvent = { kind: "IncomingCall" };
52
+ // Normalize customContext: convert undefined to null and ensure all properties are null if undefined
53
+ if (data.customContext === undefined) {
54
+ parsed.customContext = {
55
+ voipHeaders: null,
56
+ sipHeaders: null,
57
+ teamsPhoneCallDetails: null,
58
+ };
59
+ }
60
+ else if (data.customContext) {
61
+ // If customContext exists, ensure its properties are null instead of undefined
62
+ parsed.customContext = {
63
+ voipHeaders: data.customContext.voipHeaders === undefined ? null : data.customContext.voipHeaders,
64
+ sipHeaders: data.customContext.sipHeaders === undefined ? null : data.customContext.sipHeaders,
65
+ teamsPhoneCallDetails: data.customContext.teamsPhoneCallDetails === undefined
66
+ ? null
67
+ : teamsPhoneCallDetailsConverter(data.customContext.teamsPhoneCallDetails),
68
+ };
69
+ }
70
+ break;
39
71
  case "Microsoft.Communication.CallDisconnected":
40
72
  callbackEvent = { kind: "CallDisconnected" };
41
73
  break;
@@ -130,16 +162,34 @@ export function parseCallAutomationEvent(encodedEvents) {
130
162
  case "Microsoft.Communication.MediaStreamingFailed":
131
163
  callbackEvent = { kind: "MediaStreamingFailed" };
132
164
  break;
165
+ case "Microsoft.Communication.StartRecordingFailed":
166
+ callbackEvent = { kind: "StartRecordingFailed" };
167
+ break;
133
168
  case "Microsoft.Communication.PlayStarted":
134
169
  callbackEvent = { kind: "PlayStarted" };
135
170
  break;
136
- case "Microsoft.Communication.StartRecordingFailed":
137
- callbackEvent = { kind: "StartRecordingFailed" };
171
+ case "Microsoft.Communication.PlayPaused":
172
+ callbackEvent = { kind: "PlayPaused" };
173
+ break;
174
+ case "Microsoft.Communication.PlayResumed":
175
+ callbackEvent = { kind: "PlayResumed" };
176
+ break;
177
+ case "Microsoft.Communication.HoldAudioStarted":
178
+ callbackEvent = { kind: "HoldAudioStarted" };
179
+ break;
180
+ case "Microsoft.Communication.HoldAudioPaused":
181
+ callbackEvent = { kind: "HoldAudioPaused" };
182
+ break;
183
+ case "Microsoft.Communication.HoldAudioResumed":
184
+ callbackEvent = { kind: "HoldAudioResumed" };
185
+ break;
186
+ case "Microsoft.Communication.HoldAudioCompleted":
187
+ callbackEvent = { kind: "HoldAudioCompleted" };
138
188
  break;
139
189
  default:
140
190
  throw new TypeError(`Unknown Call Automation Event type: ${eventType}`);
141
191
  }
142
- return { ...parsed, ...callbackEvent };
192
+ return Object.assign(Object.assign({}, parsed), callbackEvent);
143
193
  }
144
194
  function parseAndWrap(jsonStringOrObject) {
145
195
  if (typeof jsonStringOrObject === "string") {
@@ -165,10 +215,7 @@ function parseAndWrap(jsonStringOrObject) {
165
215
  }
166
216
  }
167
217
  function participantsParserForEvent(data) {
168
- const { participants, ...rest } = data;
169
- return {
170
- ...rest,
171
- participants: participants?.map((participant) => callParticipantConverter(participant)),
172
- };
218
+ const { participants } = data, rest = __rest(data, ["participants"]);
219
+ return Object.assign(Object.assign({}, rest), { participants: participants === null || participants === void 0 ? void 0 : participants.map((participant) => callParticipantConverter(participant)) });
173
220
  }
174
221
  //# sourceMappingURL=callAutomationEventParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"callAutomationEventParser.js","sourceRoot":"","sources":["../../src/callAutomationEventParser.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createSerializer } from \"@azure/core-client\";\nimport { communicationIdentifierConverter, callParticipantConverter } from \"./utli/converters.js\";\nimport type {\n CallAutomationEvent,\n AddParticipantSucceeded,\n AddParticipantFailed,\n CallConnected,\n CallDisconnected,\n CallTransferAccepted,\n CallTransferFailed,\n ParticipantsUpdated,\n RecordingStateChanged,\n PlayCompleted,\n PlayFailed,\n PlayCanceled,\n RecognizeCompleted,\n RecognizeCanceled,\n RecognizeFailed,\n RemoveParticipantSucceeded,\n RemoveParticipantFailed,\n ContinuousDtmfRecognitionToneReceived,\n ContinuousDtmfRecognitionToneFailed,\n ContinuousDtmfRecognitionStopped,\n SendDtmfTonesCompleted,\n SendDtmfTonesFailed,\n CancelAddParticipantSucceeded,\n CancelAddParticipantFailed,\n TranscriptionStarted,\n TranscriptionStopped,\n TranscriptionUpdated,\n TranscriptionFailed,\n CreateCallFailed,\n AnswerFailed,\n HoldFailed,\n ConnectFailed,\n MediaStreamingStarted,\n MediaStreamingStopped,\n MediaStreamingFailed,\n PlayStarted,\n StartRecordingFailed,\n} from \"./models/events.js\";\n\nimport { CloudEventMapper } from \"./models/mapper.js\";\nimport type { CallParticipantInternal } from \"./generated/src/index.js\";\n\nconst serializer = createSerializer();\n\n/**\n * Helper function for parsing Acs callback events.\n */\nexport function parseCallAutomationEvent(\n encodedEvents: string | Record<string, unknown>,\n): CallAutomationEvent {\n const decodedInput = parseAndWrap(encodedEvents);\n\n // parse cloudevent\n const deserialized = serializer.deserialize(CloudEventMapper, decodedInput, \"\");\n const data = deserialized.data;\n const eventType = deserialized.type;\n\n // get proper callbackevent and its parser\n let callbackEvent: CallAutomationEvent;\n let parsed: any = data;\n switch (eventType) {\n case \"Microsoft.Communication.AddParticipantSucceeded\":\n callbackEvent = { kind: \"AddParticipantSucceeded\" } as AddParticipantSucceeded;\n parsed.participant = communicationIdentifierConverter(data.participant);\n break;\n case \"Microsoft.Communication.AddParticipantFailed\":\n callbackEvent = { kind: \"AddParticipantFailed\" } as AddParticipantFailed;\n parsed.participant = communicationIdentifierConverter(data.participant);\n break;\n case \"Microsoft.Communication.RemoveParticipantSucceeded\":\n callbackEvent = { kind: \"RemoveParticipantSucceeded\" } as RemoveParticipantSucceeded;\n parsed.participant = communicationIdentifierConverter(data.participant);\n break;\n case \"Microsoft.Communication.RemoveParticipantFailed\":\n callbackEvent = { kind: \"RemoveParticipantFailed\" } as RemoveParticipantFailed;\n parsed.participant = communicationIdentifierConverter(data.participant);\n break;\n case \"Microsoft.Communication.CallConnected\":\n callbackEvent = { kind: \"CallConnected\" } as CallConnected;\n break;\n case \"Microsoft.Communication.CallDisconnected\":\n callbackEvent = { kind: \"CallDisconnected\" } as CallDisconnected;\n break;\n case \"Microsoft.Communication.CallTransferAccepted\":\n callbackEvent = { kind: \"CallTransferAccepted\" } as CallTransferAccepted;\n break;\n case \"Microsoft.Communication.CallTransferFailed\":\n callbackEvent = { kind: \"CallTransferFailed\" } as CallTransferFailed;\n break;\n case \"Microsoft.Communication.ParticipantsUpdated\":\n callbackEvent = { kind: \"ParticipantsUpdated\" } as ParticipantsUpdated;\n parsed = participantsParserForEvent(data);\n break;\n case \"Microsoft.Communication.RecordingStateChanged\":\n callbackEvent = { kind: \"RecordingStateChanged\" } as RecordingStateChanged;\n break;\n case \"Microsoft.Communication.PlayCompleted\":\n callbackEvent = { kind: \"PlayCompleted\" } as PlayCompleted;\n break;\n case \"Microsoft.Communication.PlayFailed\":\n callbackEvent = { kind: \"PlayFailed\" } as PlayFailed;\n break;\n case \"Microsoft.Communication.PlayCanceled\":\n callbackEvent = { kind: \"PlayCanceled\" } as PlayCanceled;\n break;\n case \"Microsoft.Communication.RecognizeCompleted\":\n callbackEvent = { kind: \"RecognizeCompleted\" } as RecognizeCompleted;\n break;\n case \"Microsoft.Communication.RecognizeCanceled\":\n callbackEvent = { kind: \"RecognizeCanceled\" } as RecognizeCanceled;\n break;\n case \"Microsoft.Communication.RecognizeFailed\":\n callbackEvent = { kind: \"RecognizeFailed\" } as RecognizeFailed;\n break;\n case \"Microsoft.Communication.ContinuousDtmfRecognitionToneReceived\":\n callbackEvent = {\n kind: \"ContinuousDtmfRecognitionToneReceived\",\n } as ContinuousDtmfRecognitionToneReceived;\n break;\n case \"Microsoft.Communication.ContinuousDtmfRecognitionToneFailed\":\n callbackEvent = {\n kind: \"ContinuousDtmfRecognitionToneFailed\",\n } as ContinuousDtmfRecognitionToneFailed;\n break;\n case \"Microsoft.Communication.ContinuousDtmfRecognitionStopped\":\n callbackEvent = {\n kind: \"ContinuousDtmfRecognitionStopped\",\n } as ContinuousDtmfRecognitionStopped;\n break;\n case \"Microsoft.Communication.SendDtmfTonesCompleted\":\n callbackEvent = { kind: \"SendDtmfTonesCompleted\" } as SendDtmfTonesCompleted;\n break;\n case \"Microsoft.Communication.SendDtmfTonesFailed\":\n callbackEvent = { kind: \"SendDtmfTonesFailed\" } as SendDtmfTonesFailed;\n break;\n case \"Microsoft.Communication.CancelAddParticipantSucceeded\":\n callbackEvent = { kind: \"CancelAddParticipantSucceeded\" } as CancelAddParticipantSucceeded;\n break;\n case \"Microsoft.Communication.CancelAddParticipantFailed\":\n callbackEvent = { kind: \"CancelAddParticipantFailed\" } as CancelAddParticipantFailed;\n break;\n case \"Microsoft.Communication.TranscriptionStarted\":\n callbackEvent = { kind: \"TranscriptionStarted\" } as TranscriptionStarted;\n break;\n case \"Microsoft.Communication.TranscriptionStopped\":\n callbackEvent = { kind: \"TranscriptionStopped\" } as TranscriptionStopped;\n break;\n case \"Microsoft.Communication.TranscriptionUpdated\":\n callbackEvent = { kind: \"TranscriptionUpdated\" } as TranscriptionUpdated;\n break;\n case \"Microsoft.Communication.TranscriptionFailed\":\n callbackEvent = { kind: \"TranscriptionFailed\" } as TranscriptionFailed;\n break;\n case \"Microsoft.Communication.CreateCallFailed\":\n callbackEvent = { kind: \"CreateCallFailed\" } as CreateCallFailed;\n break;\n case \"Microsoft.Communication.AnswerFailed\":\n callbackEvent = { kind: \"AnswerFailed\" } as AnswerFailed;\n break;\n case \"Microsoft.Communication.HoldFailed\":\n callbackEvent = { kind: \"HoldFailed\" } as HoldFailed;\n break;\n case \"Microsoft.Communication.ConnectFailed\":\n callbackEvent = { kind: \"ConnectFailed\" } as ConnectFailed;\n break;\n case \"Microsoft.Communication.MediaStreamingStarted\":\n callbackEvent = { kind: \"MediaStreamingStarted\" } as MediaStreamingStarted;\n break;\n case \"Microsoft.Communication.MediaStreamingStopped\":\n callbackEvent = { kind: \"MediaStreamingStopped\" } as MediaStreamingStopped;\n break;\n case \"Microsoft.Communication.MediaStreamingFailed\":\n callbackEvent = { kind: \"MediaStreamingFailed\" } as MediaStreamingFailed;\n break;\n case \"Microsoft.Communication.PlayStarted\":\n callbackEvent = { kind: \"PlayStarted\" } as PlayStarted;\n break;\n case \"Microsoft.Communication.StartRecordingFailed\":\n callbackEvent = { kind: \"StartRecordingFailed\" } as StartRecordingFailed;\n break;\n default:\n throw new TypeError(`Unknown Call Automation Event type: ${eventType}`);\n }\n\n return { ...parsed, ...callbackEvent } as CallAutomationEvent;\n}\n\nfunction parseAndWrap(jsonStringOrObject: string | Record<string, unknown>): any {\n if (typeof jsonStringOrObject === \"string\") {\n const o = JSON.parse(jsonStringOrObject);\n if (Array.isArray(o)) {\n if (o.length === 0) {\n throw Error(\"Empty event array.\");\n }\n return o[0];\n } else {\n return o;\n }\n }\n\n if (Array.isArray(jsonStringOrObject)) {\n if (jsonStringOrObject.length === 0) {\n throw Error(\"Empty event array.\");\n }\n return jsonStringOrObject[0];\n } else {\n return jsonStringOrObject;\n }\n}\n\nfunction participantsParserForEvent(data: any): any {\n const { participants, ...rest } = data;\n return {\n ...rest,\n participants: participants?.map((participant: CallParticipantInternal) =>\n callParticipantConverter(participant),\n ),\n };\n}\n"]}
1
+ {"version":3,"file":"callAutomationEventParser.js","sourceRoot":"","sources":["../../src/callAutomationEventParser.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createSerializer } from \"@azure/core-client\";\nimport {\n communicationIdentifierConverter,\n callParticipantConverter,\n teamsPhoneCallDetailsConverter,\n} from \"./utli/converters.js\";\nimport type {\n CallAutomationEvent,\n AddParticipantSucceeded,\n AddParticipantFailed,\n CallConnected,\n CallDisconnected,\n CallTransferAccepted,\n CallTransferFailed,\n ParticipantsUpdated,\n RecordingStateChanged,\n PlayCompleted,\n PlayFailed,\n PlayCanceled,\n RecognizeCompleted,\n RecognizeCanceled,\n RecognizeFailed,\n RemoveParticipantSucceeded,\n RemoveParticipantFailed,\n MoveParticipantSucceeded,\n MoveParticipantFailed,\n ContinuousDtmfRecognitionToneReceived,\n ContinuousDtmfRecognitionToneFailed,\n ContinuousDtmfRecognitionStopped,\n SendDtmfTonesCompleted,\n SendDtmfTonesFailed,\n CancelAddParticipantSucceeded,\n CancelAddParticipantFailed,\n TranscriptionStarted,\n TranscriptionStopped,\n TranscriptionUpdated,\n TranscriptionFailed,\n CreateCallFailed,\n AnswerFailed,\n HoldFailed,\n ConnectFailed,\n MediaStreamingStarted,\n MediaStreamingStopped,\n MediaStreamingFailed,\n StartRecordingFailed,\n PlayStarted,\n PlayPaused,\n PlayResumed,\n HoldAudioStarted,\n HoldAudioPaused,\n HoldAudioResumed,\n HoldAudioCompleted,\n IncomingCall,\n} from \"./models/events.js\";\n\nimport { CloudEventMapper } from \"./models/mapper.js\";\nimport type { CallParticipantInternal } from \"./generated/src/index.js\";\n\nconst serializer = createSerializer();\n\n/**\n * Helper function for parsing Acs callback events.\n */\nexport function parseCallAutomationEvent(\n encodedEvents: string | Record<string, unknown>,\n): CallAutomationEvent {\n const decodedInput = parseAndWrap(encodedEvents);\n\n // parse cloudevent\n const deserialized = serializer.deserialize(CloudEventMapper, decodedInput, \"\");\n const data = deserialized.data;\n const eventType = deserialized.type;\n\n // get proper callbackevent and its parser\n let callbackEvent: CallAutomationEvent;\n let parsed: any = data;\n switch (eventType) {\n case \"Microsoft.Communication.AddParticipantSucceeded\":\n callbackEvent = { kind: \"AddParticipantSucceeded\" } as AddParticipantSucceeded;\n parsed.participant = communicationIdentifierConverter(data.participant);\n break;\n case \"Microsoft.Communication.AddParticipantFailed\":\n callbackEvent = { kind: \"AddParticipantFailed\" } as AddParticipantFailed;\n parsed.participant = communicationIdentifierConverter(data.participant);\n break;\n case \"Microsoft.Communication.RemoveParticipantSucceeded\":\n callbackEvent = { kind: \"RemoveParticipantSucceeded\" } as RemoveParticipantSucceeded;\n parsed.participant = communicationIdentifierConverter(data.participant);\n break;\n case \"Microsoft.Communication.RemoveParticipantFailed\":\n callbackEvent = { kind: \"RemoveParticipantFailed\" } as RemoveParticipantFailed;\n parsed.participant = communicationIdentifierConverter(data.participant);\n break;\n case \"Microsoft.Communication.MoveParticipantSucceeded\":\n callbackEvent = { kind: \"MoveParticipantSucceeded\" } as MoveParticipantSucceeded;\n parsed.participant = communicationIdentifierConverter(data.participant);\n parsed.fromCall = data.fromCall;\n break;\n case \"Microsoft.Communication.MoveParticipantFailed\":\n callbackEvent = { kind: \"MoveParticipantFailed\" } as MoveParticipantFailed;\n parsed.participant = communicationIdentifierConverter(data.participant);\n parsed.fromCall = data.fromCall;\n break;\n case \"Microsoft.Communication.CallConnected\":\n callbackEvent = { kind: \"CallConnected\" } as CallConnected;\n break;\n case \"Microsoft.Communication.IncomingCall\":\n callbackEvent = { kind: \"IncomingCall\" } as IncomingCall;\n\n // Normalize customContext: convert undefined to null and ensure all properties are null if undefined\n if (data.customContext === undefined) {\n parsed.customContext = {\n voipHeaders: null,\n sipHeaders: null,\n teamsPhoneCallDetails: null,\n };\n } else if (data.customContext) {\n // If customContext exists, ensure its properties are null instead of undefined\n parsed.customContext = {\n voipHeaders:\n data.customContext.voipHeaders === undefined ? null : data.customContext.voipHeaders,\n sipHeaders:\n data.customContext.sipHeaders === undefined ? null : data.customContext.sipHeaders,\n teamsPhoneCallDetails:\n data.customContext.teamsPhoneCallDetails === undefined\n ? null\n : teamsPhoneCallDetailsConverter(data.customContext.teamsPhoneCallDetails),\n };\n }\n break;\n case \"Microsoft.Communication.CallDisconnected\":\n callbackEvent = { kind: \"CallDisconnected\" } as CallDisconnected;\n break;\n case \"Microsoft.Communication.CallTransferAccepted\":\n callbackEvent = { kind: \"CallTransferAccepted\" } as CallTransferAccepted;\n break;\n case \"Microsoft.Communication.CallTransferFailed\":\n callbackEvent = { kind: \"CallTransferFailed\" } as CallTransferFailed;\n break;\n case \"Microsoft.Communication.ParticipantsUpdated\":\n callbackEvent = { kind: \"ParticipantsUpdated\" } as ParticipantsUpdated;\n parsed = participantsParserForEvent(data);\n break;\n case \"Microsoft.Communication.RecordingStateChanged\":\n callbackEvent = { kind: \"RecordingStateChanged\" } as RecordingStateChanged;\n break;\n case \"Microsoft.Communication.PlayCompleted\":\n callbackEvent = { kind: \"PlayCompleted\" } as PlayCompleted;\n break;\n case \"Microsoft.Communication.PlayFailed\":\n callbackEvent = { kind: \"PlayFailed\" } as PlayFailed;\n break;\n case \"Microsoft.Communication.PlayCanceled\":\n callbackEvent = { kind: \"PlayCanceled\" } as PlayCanceled;\n break;\n case \"Microsoft.Communication.RecognizeCompleted\":\n callbackEvent = { kind: \"RecognizeCompleted\" } as RecognizeCompleted;\n break;\n case \"Microsoft.Communication.RecognizeCanceled\":\n callbackEvent = { kind: \"RecognizeCanceled\" } as RecognizeCanceled;\n break;\n case \"Microsoft.Communication.RecognizeFailed\":\n callbackEvent = { kind: \"RecognizeFailed\" } as RecognizeFailed;\n break;\n case \"Microsoft.Communication.ContinuousDtmfRecognitionToneReceived\":\n callbackEvent = {\n kind: \"ContinuousDtmfRecognitionToneReceived\",\n } as ContinuousDtmfRecognitionToneReceived;\n break;\n case \"Microsoft.Communication.ContinuousDtmfRecognitionToneFailed\":\n callbackEvent = {\n kind: \"ContinuousDtmfRecognitionToneFailed\",\n } as ContinuousDtmfRecognitionToneFailed;\n break;\n case \"Microsoft.Communication.ContinuousDtmfRecognitionStopped\":\n callbackEvent = {\n kind: \"ContinuousDtmfRecognitionStopped\",\n } as ContinuousDtmfRecognitionStopped;\n break;\n case \"Microsoft.Communication.SendDtmfTonesCompleted\":\n callbackEvent = { kind: \"SendDtmfTonesCompleted\" } as SendDtmfTonesCompleted;\n break;\n case \"Microsoft.Communication.SendDtmfTonesFailed\":\n callbackEvent = { kind: \"SendDtmfTonesFailed\" } as SendDtmfTonesFailed;\n break;\n case \"Microsoft.Communication.CancelAddParticipantSucceeded\":\n callbackEvent = { kind: \"CancelAddParticipantSucceeded\" } as CancelAddParticipantSucceeded;\n break;\n case \"Microsoft.Communication.CancelAddParticipantFailed\":\n callbackEvent = { kind: \"CancelAddParticipantFailed\" } as CancelAddParticipantFailed;\n break;\n case \"Microsoft.Communication.TranscriptionStarted\":\n callbackEvent = { kind: \"TranscriptionStarted\" } as TranscriptionStarted;\n break;\n case \"Microsoft.Communication.TranscriptionStopped\":\n callbackEvent = { kind: \"TranscriptionStopped\" } as TranscriptionStopped;\n break;\n case \"Microsoft.Communication.TranscriptionUpdated\":\n callbackEvent = { kind: \"TranscriptionUpdated\" } as TranscriptionUpdated;\n break;\n case \"Microsoft.Communication.TranscriptionFailed\":\n callbackEvent = { kind: \"TranscriptionFailed\" } as TranscriptionFailed;\n break;\n case \"Microsoft.Communication.CreateCallFailed\":\n callbackEvent = { kind: \"CreateCallFailed\" } as CreateCallFailed;\n break;\n case \"Microsoft.Communication.AnswerFailed\":\n callbackEvent = { kind: \"AnswerFailed\" } as AnswerFailed;\n break;\n case \"Microsoft.Communication.HoldFailed\":\n callbackEvent = { kind: \"HoldFailed\" } as HoldFailed;\n break;\n case \"Microsoft.Communication.ConnectFailed\":\n callbackEvent = { kind: \"ConnectFailed\" } as ConnectFailed;\n break;\n case \"Microsoft.Communication.MediaStreamingStarted\":\n callbackEvent = { kind: \"MediaStreamingStarted\" } as MediaStreamingStarted;\n break;\n case \"Microsoft.Communication.MediaStreamingStopped\":\n callbackEvent = { kind: \"MediaStreamingStopped\" } as MediaStreamingStopped;\n break;\n case \"Microsoft.Communication.MediaStreamingFailed\":\n callbackEvent = { kind: \"MediaStreamingFailed\" } as MediaStreamingFailed;\n break;\n case \"Microsoft.Communication.StartRecordingFailed\":\n callbackEvent = { kind: \"StartRecordingFailed\" } as StartRecordingFailed;\n break;\n case \"Microsoft.Communication.PlayStarted\":\n callbackEvent = { kind: \"PlayStarted\" } as PlayStarted;\n break;\n case \"Microsoft.Communication.PlayPaused\":\n callbackEvent = { kind: \"PlayPaused\" } as PlayPaused;\n break;\n case \"Microsoft.Communication.PlayResumed\":\n callbackEvent = { kind: \"PlayResumed\" } as PlayResumed;\n break;\n case \"Microsoft.Communication.HoldAudioStarted\":\n callbackEvent = { kind: \"HoldAudioStarted\" } as HoldAudioStarted;\n break;\n case \"Microsoft.Communication.HoldAudioPaused\":\n callbackEvent = { kind: \"HoldAudioPaused\" } as HoldAudioPaused;\n break;\n case \"Microsoft.Communication.HoldAudioResumed\":\n callbackEvent = { kind: \"HoldAudioResumed\" } as HoldAudioResumed;\n break;\n case \"Microsoft.Communication.HoldAudioCompleted\":\n callbackEvent = { kind: \"HoldAudioCompleted\" } as HoldAudioCompleted;\n break;\n default:\n throw new TypeError(`Unknown Call Automation Event type: ${eventType}`);\n }\n\n return { ...parsed, ...callbackEvent } as CallAutomationEvent;\n}\n\nfunction parseAndWrap(jsonStringOrObject: string | Record<string, unknown>): any {\n if (typeof jsonStringOrObject === \"string\") {\n const o = JSON.parse(jsonStringOrObject);\n if (Array.isArray(o)) {\n if (o.length === 0) {\n throw Error(\"Empty event array.\");\n }\n return o[0];\n } else {\n return o;\n }\n }\n\n if (Array.isArray(jsonStringOrObject)) {\n if (jsonStringOrObject.length === 0) {\n throw Error(\"Empty event array.\");\n }\n return jsonStringOrObject[0];\n } else {\n return jsonStringOrObject;\n }\n}\n\nfunction participantsParserForEvent(data: any): any {\n const { participants, ...rest } = data;\n return {\n ...rest,\n participants: participants?.map((participant: CallParticipantInternal) =>\n callParticipantConverter(participant),\n ),\n };\n}\n"]}
@@ -1,10 +1,11 @@
1
- import { CommunicationIdentifier } from "@azure/communication-common";
1
+ import type { CommunicationIdentifier } from "@azure/communication-common";
2
2
  import { CallMedia } from "./callMedia.js";
3
- import { CallAutomationApiClientOptionalParams } from "./generated/src/index.js";
3
+ import type { CallAutomationApiClientOptionalParams } from "./generated/src/index.js";
4
4
  import { type CallConnectionProperties, type CallInvite, type CallParticipant } from "./models/models.js";
5
- import type { AddParticipantOptions, CancelAddParticipantOperationOptions, GetCallConnectionPropertiesOptions, GetParticipantOptions, HangUpOptions, MuteParticipantOption, RemoveParticipantsOption, TransferCallToParticipantOptions } from "./models/options.js";
6
- import type { ListParticipantsResult, TransferCallResult, AddParticipantResult, RemoveParticipantResult, MuteParticipantResult, CancelAddParticipantOperationResult } from "./models/responses.js";
5
+ import type { AddParticipantOptions, CancelAddParticipantOperationOptions, GetCallConnectionPropertiesOptions, GetParticipantOptions, HangUpOptions, MoveParticipantsOptions, MuteParticipantOption, RemoveParticipantsOption, TransferCallToParticipantOptions } from "./models/options.js";
6
+ import type { ListParticipantsResult, TransferCallResult, AddParticipantResult, RemoveParticipantResult, MoveParticipantsResult, MuteParticipantResult, CancelAddParticipantOperationResult } from "./models/responses.js";
7
7
  import type { KeyCredential, TokenCredential } from "@azure/core-auth";
8
+ import type { CallAutomationEventProcessor } from "./eventprocessor/callAutomationEventProcessor.js";
8
9
  /**
9
10
  * CallConnection class represents call connection based APIs.
10
11
  */
@@ -15,7 +16,8 @@ export declare class CallConnection {
15
16
  private readonly endpoint;
16
17
  private readonly credential;
17
18
  private readonly callAutomationApiClientOptions?;
18
- constructor(callConnectionId: string, endpoint: string, credential: KeyCredential | TokenCredential, options?: CallAutomationApiClientOptionalParams);
19
+ private readonly callAutomationEventProcessor;
20
+ constructor(callConnectionId: string, endpoint: string, credential: KeyCredential | TokenCredential, eventProcessor: CallAutomationEventProcessor, options?: CallAutomationApiClientOptionalParams);
19
21
  /**
20
22
  * Initializes a new instance of CallMedia.
21
23
  */
@@ -59,6 +61,14 @@ export declare class CallConnection {
59
61
  * @param participant - The participant is going to be removed from the call.
60
62
  */
61
63
  removeParticipant(participant: CommunicationIdentifier, options?: RemoveParticipantsOption): Promise<RemoveParticipantResult>;
64
+ /**
65
+ * Move participants to the call
66
+ *
67
+ * @param targetParticipants - The participants to be moved to the call.
68
+ * @param fromCall - The CallConnectionId for the call you want to move the participant from.
69
+ * @param options - Additional attributes for move participants.
70
+ */
71
+ moveParticipants(targetParticipants: CommunicationIdentifier[], fromCall: string, options?: MoveParticipantsOptions): Promise<MoveParticipantsResult>;
62
72
  /**
63
73
  * Mute participant from the call.
64
74
  *
@@ -1 +1 @@
1
- {"version":3,"file":"callConnection.d.ts","sourceRoot":"","sources":["../../src/callConnection.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,uBAAuB,EAExB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAGL,qCAAqC,EAKtC,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,UAAU,EACf,KAAK,eAAe,EAErB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EACV,qBAAqB,EACrB,oCAAoC,EACpC,kCAAkC,EAClC,qBAAqB,EACrB,aAAa,EACb,qBAAqB,EACrB,wBAAwB,EACxB,gCAAgC,EACjC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,mCAAmC,EACpC,MAAM,uBAAuB,CAAC;AAU/B,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEvE;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA0B;IAClE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAC7D,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAwC;gBAEtF,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,aAAa,GAAG,eAAe,EAC3C,OAAO,CAAC,EAAE,qCAAqC;IAYjD;;OAEG;IACI,YAAY,IAAI,SAAS;IAShC;;OAEG;IACU,2BAA2B,CACtC,OAAO,GAAE,kCAAuC,GAC/C,OAAO,CAAC,wBAAwB,CAAC;IAgBpC;;;;OAIG;IACU,MAAM,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAcvF;;;;OAIG;IACU,cAAc,CACzB,iBAAiB,EAAE,uBAAuB,EAC1C,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,eAAe,CAAC;IAe3B;;OAEG;IACU,gBAAgB,CAC3B,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,sBAAsB,CAAC;IAkBlC,OAAO,CAAC,kCAAkC;IAuB1C;;;;OAIG;IACU,cAAc,CACzB,iBAAiB,EAAE,UAAU,EAC7B,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,oBAAoB,CAAC;IAoChC;;;;OAIG;IACU,yBAAyB,CACpC,iBAAiB,EAAE,uBAAuB,EAC1C,OAAO,GAAE,gCAAqC,GAC7C,OAAO,CAAC,kBAAkB,CAAC;IAyB9B;;;;OAIG;IACU,iBAAiB,CAC5B,WAAW,EAAE,uBAAuB,EACpC,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,uBAAuB,CAAC;IAsBnC;;;;;OAKG;IACU,eAAe,CAC1B,WAAW,EAAE,uBAAuB,EACpC,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,qBAAqB,CAAC;IAqBjC;;;OAGG;IACU,6BAA6B,CACxC,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,oCAAyC,GACjD,OAAO,CAAC,mCAAmC,CAAC;CA6BhD"}
1
+ {"version":3,"file":"callConnection.d.ts","sourceRoot":"","sources":["../../src/callConnection.ts"],"names":[],"mappings":"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"}
@@ -1,52 +1,38 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
- import { createCommunicationAuthPolicy, } from "@azure/communication-common";
3
+ import { __asyncValues, __rest } from "tslib";
4
4
  import { CallMedia } from "./callMedia.js";
5
- import { CallAutomationApiClient, } from "./generated/src/index.js";
6
5
  import { CallConnectionImpl } from "./generated/src/operations/index.js";
7
- import { callParticipantConverter, communicationIdentifierConverter, communicationIdentifierModelConverter, communicationUserIdentifierConverter, phoneNumberIdentifierConverter, PhoneNumberIdentifierModelConverter, } from "./utli/converters.js";
6
+ import { callParticipantConverter, communicationIdentifierConverter, communicationIdentifierModelConverter, communicationUserIdentifierConverter, phoneNumberIdentifierConverter, PhoneNumberIdentifierModelConverter, teamsPhoneCallDetailsModelConverter, } from "./utli/converters.js";
8
7
  import { randomUUID } from "@azure/core-util";
8
+ import { createCustomCallAutomationApiClient } from "./credential/callAutomationAuthPolicy.js";
9
9
  /**
10
10
  * CallConnection class represents call connection based APIs.
11
11
  */
12
12
  export class CallConnection {
13
- callConnectionId;
14
- callConnection;
15
- callAutomationApiClient;
16
- endpoint;
17
- credential;
18
- callAutomationApiClientOptions;
19
- constructor(callConnectionId, endpoint, credential, options) {
20
- this.callAutomationApiClient = new CallAutomationApiClient(endpoint, options);
21
- const authPolicy = createCommunicationAuthPolicy(credential);
22
- this.callAutomationApiClient.pipeline.addPolicy(authPolicy);
13
+ constructor(callConnectionId, endpoint, credential, eventProcessor, options) {
14
+ this.callAutomationApiClient = createCustomCallAutomationApiClient(credential, options, endpoint);
23
15
  this.callConnectionId = callConnectionId;
24
16
  this.callConnection = new CallConnectionImpl(this.callAutomationApiClient);
25
17
  this.endpoint = endpoint;
26
18
  this.credential = credential;
19
+ this.callAutomationEventProcessor = eventProcessor;
27
20
  this.callAutomationApiClientOptions = options;
28
21
  }
29
22
  /**
30
23
  * Initializes a new instance of CallMedia.
31
24
  */
32
25
  getCallMedia() {
33
- return new CallMedia(this.callConnectionId, this.endpoint, this.credential, this.callAutomationApiClientOptions);
26
+ return new CallMedia(this.callConnectionId, this.endpoint, this.credential, this.callAutomationEventProcessor, this.callAutomationApiClientOptions);
34
27
  }
35
28
  /**
36
29
  * Get call connection properties of the call
37
30
  */
38
31
  async getCallConnectionProperties(options = {}) {
39
- const { targets, sourceCallerIdNumber, answeredBy, source, answeredFor, ...result } = await this.callConnection.getCall(this.callConnectionId, options);
40
- const callConnectionProperties = {
41
- ...result,
42
- source: source ? communicationIdentifierConverter(source) : undefined,
43
- answeredby: communicationUserIdentifierConverter(answeredBy),
44
- answeredFor: answeredFor ? phoneNumberIdentifierConverter(answeredFor) : undefined,
45
- targetParticipants: targets?.map((target) => communicationIdentifierConverter(target)),
46
- sourceCallerIdNumber: sourceCallerIdNumber
32
+ const _a = await this.callConnection.getCall(this.callConnectionId, options), { targets, sourceCallerIdNumber, answeredBy, source, answeredFor } = _a, result = __rest(_a, ["targets", "sourceCallerIdNumber", "answeredBy", "source", "answeredFor"]);
33
+ const callConnectionProperties = Object.assign(Object.assign({}, result), { source: source ? communicationIdentifierConverter(source) : undefined, answeredby: communicationUserIdentifierConverter(answeredBy), answeredFor: answeredFor ? phoneNumberIdentifierConverter(answeredFor) : undefined, targetParticipants: targets === null || targets === void 0 ? void 0 : targets.map((target) => communicationIdentifierConverter(target)), sourceCallerIdNumber: sourceCallerIdNumber
47
34
  ? phoneNumberIdentifierConverter(sourceCallerIdNumber)
48
- : undefined,
49
- };
35
+ : undefined });
50
36
  return callConnectionProperties;
51
37
  }
52
38
  /**
@@ -56,11 +42,7 @@ export class CallConnection {
56
42
  */
57
43
  async hangUp(isForEveryone, options = {}) {
58
44
  if (isForEveryone) {
59
- const optionsInternal = {
60
- ...options,
61
- repeatabilityFirstSent: new Date(),
62
- repeatabilityRequestID: randomUUID(),
63
- };
45
+ const optionsInternal = Object.assign(Object.assign({}, options), { repeatabilityFirstSent: new Date(), repeatabilityRequestID: randomUUID() });
64
46
  await this.callConnection.terminateCall(this.callConnectionId, optionsInternal);
65
47
  }
66
48
  else {
@@ -90,23 +72,34 @@ export class CallConnection {
90
72
  * Get all participants from the call
91
73
  */
92
74
  async listParticipants(options = {}) {
75
+ var _a, e_1, _b, _c;
93
76
  const result = this.callConnection.listParticipants(this.callConnectionId, options);
94
77
  const participants = [];
95
- const pages = result?.byPage();
96
- for await (const page of pages) {
97
- for (const participant of page) {
98
- participants.push(callParticipantConverter(participant));
78
+ const pages = result === null || result === void 0 ? void 0 : result.byPage();
79
+ try {
80
+ for (var _d = true, pages_1 = __asyncValues(pages), pages_1_1; pages_1_1 = await pages_1.next(), _a = pages_1_1.done, !_a; _d = true) {
81
+ _c = pages_1_1.value;
82
+ _d = false;
83
+ const page = _c;
84
+ for (const participant of page) {
85
+ participants.push(callParticipantConverter(participant));
86
+ }
99
87
  }
100
88
  }
101
- const listParticipantResponse = {
102
- ...result,
103
- values: participants,
104
- };
89
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
90
+ finally {
91
+ try {
92
+ if (!_d && !_a && (_b = pages_1.return)) await _b.call(pages_1);
93
+ }
94
+ finally { if (e_1) throw e_1.error; }
95
+ }
96
+ const listParticipantResponse = Object.assign(Object.assign({}, result), { values: participants });
105
97
  return listParticipantResponse;
106
98
  }
107
99
  createCustomCallingContextInternal(customCallingContext) {
108
100
  const sipHeaders = {};
109
101
  const voipHeaders = {};
102
+ let teamsPhoneCallDetails = undefined;
110
103
  if (customCallingContext) {
111
104
  for (const header of customCallingContext) {
112
105
  if (header.kind === "sipuui") {
@@ -123,9 +116,16 @@ export class CallConnection {
123
116
  else if (header.kind === "voip") {
124
117
  voipHeaders[`${header.key}`] = header.value;
125
118
  }
119
+ else if (header.kind === "teamsPhoneCallDetails") {
120
+ teamsPhoneCallDetails = teamsPhoneCallDetailsModelConverter(header);
121
+ }
126
122
  }
127
123
  }
128
- return { sipHeaders: sipHeaders, voipHeaders: voipHeaders };
124
+ return {
125
+ sipHeaders: sipHeaders,
126
+ voipHeaders: voipHeaders,
127
+ teamsPhoneCallDetails: teamsPhoneCallDetails,
128
+ };
129
129
  }
130
130
  /**
131
131
  * Add a participant to the call
@@ -133,30 +133,45 @@ export class CallConnection {
133
133
  * @param participant - The participant is going to be added.
134
134
  */
135
135
  async addParticipant(targetParticipant, options = {}) {
136
+ var _a, _b;
136
137
  const addParticipantRequest = {
137
138
  participantToAdd: communicationIdentifierModelConverter(targetParticipant.targetParticipant),
138
139
  sourceCallerIdNumber: PhoneNumberIdentifierModelConverter(targetParticipant.sourceCallIdNumber),
139
140
  sourceDisplayName: targetParticipant.sourceDisplayName,
140
141
  invitationTimeoutInSeconds: options.invitationTimeoutInSeconds,
141
- operationContext: options.operationContext,
142
+ operationContext: options.operationContext ? options.operationContext : randomUUID(),
142
143
  operationCallbackUri: options.operationCallbackUrl,
143
144
  customCallingContext: this.createCustomCallingContextInternal(targetParticipant.customCallingContext),
144
145
  };
145
- const optionsInternal = {
146
- ...options,
147
- repeatabilityFirstSent: new Date(),
148
- repeatabilityRequestID: randomUUID(),
149
- };
146
+ const optionsInternal = Object.assign(Object.assign({}, options), { repeatabilityFirstSent: new Date(), repeatabilityRequestID: randomUUID() });
150
147
  const result = await this.callConnection.addParticipant(this.callConnectionId, addParticipantRequest, optionsInternal);
151
- const addParticipantsResult = {
152
- ...result,
153
- participant: {
154
- ...result.participant,
155
- identifier: result.participant?.identifier
156
- ? communicationIdentifierConverter(result.participant?.identifier)
157
- : undefined,
158
- },
159
- };
148
+ const addParticipantsResult = Object.assign(Object.assign({}, result), { participant: Object.assign(Object.assign({}, result.participant), { identifier: ((_a = result.participant) === null || _a === void 0 ? void 0 : _a.identifier)
149
+ ? communicationIdentifierConverter((_b = result.participant) === null || _b === void 0 ? void 0 : _b.identifier)
150
+ : undefined }), waitForEventProcessor: async (abortSignal, timeoutInMs) => {
151
+ const addParticipantEventResult = {
152
+ isSuccess: false,
153
+ };
154
+ await this.callAutomationEventProcessor.waitForEventProcessor((event) => {
155
+ if (event.callConnectionId === this.callConnectionId &&
156
+ event.kind === "AddParticipantSucceeded" &&
157
+ event.operationContext === addParticipantRequest.operationContext) {
158
+ addParticipantEventResult.isSuccess = true;
159
+ addParticipantEventResult.successResult = event;
160
+ return true;
161
+ }
162
+ else if (event.callConnectionId === this.callConnectionId &&
163
+ event.kind === "AddParticipantFailed" &&
164
+ event.operationContext === addParticipantRequest.operationContext) {
165
+ addParticipantEventResult.isSuccess = false;
166
+ addParticipantEventResult.failureResult = event;
167
+ return true;
168
+ }
169
+ else {
170
+ return false;
171
+ }
172
+ }, abortSignal, timeoutInMs);
173
+ return addParticipantEventResult;
174
+ } });
160
175
  return addParticipantsResult;
161
176
  }
162
177
  /**
@@ -173,15 +188,33 @@ export class CallConnection {
173
188
  customCallingContext: this.createCustomCallingContextInternal(options.customCallingContext),
174
189
  sourceCallerIdNumber: PhoneNumberIdentifierModelConverter(options.sourceCallIdNumber),
175
190
  };
176
- const optionsInternal = {
177
- ...options,
178
- repeatabilityFirstSent: new Date(),
179
- repeatabilityRequestID: randomUUID(),
180
- };
191
+ const optionsInternal = Object.assign(Object.assign({}, options), { repeatabilityFirstSent: new Date(), repeatabilityRequestID: randomUUID() });
181
192
  const result = await this.callConnection.transferToParticipant(this.callConnectionId, transferToParticipantRequest, optionsInternal);
182
- const transferCallResult = {
183
- ...result,
184
- };
193
+ const transferCallResult = Object.assign(Object.assign({}, result), { waitForEventProcessor: async (abortSignal, timeoutInMs) => {
194
+ const transferCallToParticipantEventResult = {
195
+ isSuccess: false,
196
+ };
197
+ await this.callAutomationEventProcessor.waitForEventProcessor((event) => {
198
+ if (event.callConnectionId === this.callConnectionId &&
199
+ event.kind === "CallTransferAccepted" &&
200
+ event.operationContext === transferToParticipantRequest.operationContext) {
201
+ transferCallToParticipantEventResult.isSuccess = true;
202
+ transferCallToParticipantEventResult.successResult = event;
203
+ return true;
204
+ }
205
+ else if (event.callConnectionId === this.callConnectionId &&
206
+ event.kind === "CallTransferFailed" &&
207
+ event.operationContext === transferToParticipantRequest.operationContext) {
208
+ transferCallToParticipantEventResult.isSuccess = false;
209
+ transferCallToParticipantEventResult.failureResult = event;
210
+ return true;
211
+ }
212
+ else {
213
+ return false;
214
+ }
215
+ }, abortSignal, timeoutInMs);
216
+ return transferCallToParticipantEventResult;
217
+ } });
185
218
  return transferCallResult;
186
219
  }
187
220
  /**
@@ -195,17 +228,79 @@ export class CallConnection {
195
228
  operationContext: options.operationContext ? options.operationContext : randomUUID(),
196
229
  operationCallbackUri: options.operationCallbackUrl,
197
230
  };
198
- const optionsInternal = {
199
- ...options,
200
- repeatabilityFirstSent: new Date(),
201
- repeatabilityRequestID: randomUUID(),
202
- };
231
+ const optionsInternal = Object.assign(Object.assign({}, options), { repeatabilityFirstSent: new Date(), repeatabilityRequestID: randomUUID() });
203
232
  const result = await this.callConnection.removeParticipant(this.callConnectionId, removeParticipantRequest, optionsInternal);
204
- const removeParticipantsResult = {
205
- ...result,
206
- };
233
+ const removeParticipantsResult = Object.assign(Object.assign({}, result), { waitForEventProcessor: async (abortSignal, timeoutInMs) => {
234
+ const removeParticipantEventResult = {
235
+ isSuccess: false,
236
+ };
237
+ await this.callAutomationEventProcessor.waitForEventProcessor((event) => {
238
+ if (event.callConnectionId === this.callConnectionId &&
239
+ event.kind === "RemoveParticipantSucceeded" &&
240
+ event.operationContext === removeParticipantRequest.operationContext) {
241
+ removeParticipantEventResult.isSuccess = true;
242
+ removeParticipantEventResult.successResult = event;
243
+ return true;
244
+ }
245
+ else if (event.callConnectionId === this.callConnectionId &&
246
+ event.kind === "RemoveParticipantFailed" &&
247
+ event.operationContext === removeParticipantRequest.operationContext) {
248
+ removeParticipantEventResult.isSuccess = false;
249
+ removeParticipantEventResult.failureResult = event;
250
+ return true;
251
+ }
252
+ else {
253
+ return false;
254
+ }
255
+ }, abortSignal, timeoutInMs);
256
+ return removeParticipantEventResult;
257
+ } });
207
258
  return removeParticipantsResult;
208
259
  }
260
+ /**
261
+ * Move participants to the call
262
+ *
263
+ * @param targetParticipants - The participants to be moved to the call.
264
+ * @param fromCall - The CallConnectionId for the call you want to move the participant from.
265
+ * @param options - Additional attributes for move participants.
266
+ */
267
+ async moveParticipants(targetParticipants, fromCall, options = {}) {
268
+ var _a;
269
+ const moveParticipantsRequest = {
270
+ targetParticipants: targetParticipants.map((participant) => communicationIdentifierModelConverter(participant)),
271
+ fromCall: fromCall,
272
+ operationContext: options.operationContext ? options.operationContext : randomUUID(),
273
+ operationCallbackUri: options.operationCallbackUrl,
274
+ };
275
+ const optionsInternal = Object.assign(Object.assign({}, options), { repeatabilityFirstSent: new Date(), repeatabilityRequestID: randomUUID() });
276
+ const result = await this.callConnection.moveParticipants(this.callConnectionId, moveParticipantsRequest, optionsInternal);
277
+ const moveParticipantsResult = Object.assign(Object.assign({}, result), { participants: (_a = result.participants) === null || _a === void 0 ? void 0 : _a.map((participant) => callParticipantConverter(participant)), fromCall: fromCall, waitForEventProcessor: async (abortSignal, timeoutInMs) => {
278
+ const moveParticipantEventResult = {
279
+ isSuccess: false,
280
+ };
281
+ await this.callAutomationEventProcessor.waitForEventProcessor((event) => {
282
+ if (event.callConnectionId === this.callConnectionId &&
283
+ event.kind === "MoveParticipantSucceeded" &&
284
+ event.operationContext === moveParticipantsRequest.operationContext) {
285
+ moveParticipantEventResult.isSuccess = true;
286
+ moveParticipantEventResult.successResult = event;
287
+ return true;
288
+ }
289
+ else if (event.callConnectionId === this.callConnectionId &&
290
+ event.kind === "MoveParticipantFailed" &&
291
+ event.operationContext === moveParticipantsRequest.operationContext) {
292
+ moveParticipantEventResult.isSuccess = false;
293
+ moveParticipantEventResult.failureResult = event;
294
+ return true;
295
+ }
296
+ else {
297
+ return false;
298
+ }
299
+ }, abortSignal, timeoutInMs);
300
+ return moveParticipantEventResult;
301
+ } });
302
+ return moveParticipantsResult;
303
+ }
209
304
  /**
210
305
  * Mute participant from the call.
211
306
  *
@@ -217,15 +312,9 @@ export class CallConnection {
217
312
  targetParticipants: [communicationIdentifierModelConverter(participant)],
218
313
  operationContext: options.operationContext,
219
314
  };
220
- const optionsInternal = {
221
- ...options,
222
- repeatabilityFirstSent: new Date(),
223
- repeatabilityRequestID: randomUUID(),
224
- };
315
+ const optionsInternal = Object.assign(Object.assign({}, options), { repeatabilityFirstSent: new Date(), repeatabilityRequestID: randomUUID() });
225
316
  const result = await this.callConnection.mute(this.callConnectionId, muteParticipantsRequest, optionsInternal);
226
- const muteParticipantResult = {
227
- ...result,
228
- };
317
+ const muteParticipantResult = Object.assign({}, result);
229
318
  return muteParticipantResult;
230
319
  }
231
320
  /** Cancel add participant request.
@@ -233,21 +322,39 @@ export class CallConnection {
233
322
  * @param invitationId - Invitation ID used to cancel the add participant request.
234
323
  */
235
324
  async cancelAddParticipantOperation(invitationId, options = {}) {
236
- const { operationContext, operationCallbackUrl: operationCallbackUri, ...operationOptions } = options;
325
+ const { operationContext, operationCallbackUrl: operationCallbackUri } = options, operationOptions = __rest(options, ["operationContext", "operationCallbackUrl"]);
237
326
  const cancelAddParticipantRequest = {
238
327
  invitationId,
239
328
  operationContext: operationContext ? operationContext : randomUUID(),
240
329
  operationCallbackUri,
241
330
  };
242
- const optionsInternal = {
243
- ...operationOptions,
244
- repeatabilityFirstSent: new Date(),
245
- repeatabilityRequestID: randomUUID(),
246
- };
331
+ const optionsInternal = Object.assign(Object.assign({}, operationOptions), { repeatabilityFirstSent: new Date(), repeatabilityRequestID: randomUUID() });
247
332
  const result = await this.callConnection.cancelAddParticipant(this.callConnectionId, cancelAddParticipantRequest, optionsInternal);
248
- const cancelAddParticipantResult = {
249
- ...result,
250
- };
333
+ const cancelAddParticipantResult = Object.assign(Object.assign({}, result), { waitForEventProcessor: async (abortSignal, timeoutInMs) => {
334
+ const cancelAddParticipantEventResult = {
335
+ isSuccess: false,
336
+ };
337
+ await this.callAutomationEventProcessor.waitForEventProcessor((event) => {
338
+ if (event.callConnectionId === this.callConnectionId &&
339
+ event.kind === "CancelAddParticipantSucceeded" &&
340
+ event.operationContext === cancelAddParticipantRequest.operationContext) {
341
+ cancelAddParticipantEventResult.isSuccess = true;
342
+ cancelAddParticipantEventResult.successResult = event;
343
+ return true;
344
+ }
345
+ else if (event.callConnectionId === this.callConnectionId &&
346
+ event.kind === "CancelAddParticipantFailed" &&
347
+ event.operationContext === cancelAddParticipantRequest.operationContext) {
348
+ cancelAddParticipantEventResult.isSuccess = false;
349
+ cancelAddParticipantEventResult.failureResult = event;
350
+ return true;
351
+ }
352
+ else {
353
+ return false;
354
+ }
355
+ }, abortSignal, timeoutInMs);
356
+ return cancelAddParticipantEventResult;
357
+ } });
251
358
  return cancelAddParticipantResult;
252
359
  }
253
360
  }