@cognigy/rest-api-client 0.12.0 → 0.13.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 (277) hide show
  1. package/.eslintignore +15 -0
  2. package/.eslintrc.json +28 -0
  3. package/.prettierrc.json +7 -0
  4. package/build/GenericAPIFn.js +3 -3
  5. package/build/GenericUploadFn.js +8 -5
  6. package/build/PluginBase.js +1 -1
  7. package/build/RestAPIClient.js +1 -1
  8. package/build/apigroups/AdministrationAPIGroup_2_0.js +53 -47
  9. package/build/apigroups/AnalyticsAPIGroup_2_0.js +1 -1
  10. package/build/apigroups/ExternalAPIGroup_2_0.js +5 -5
  11. package/build/apigroups/InsightsAPIGroup_2_0.js +17 -12
  12. package/build/apigroups/ManagementAPIGroup_2_0.js +19 -15
  13. package/build/apigroups/MetricsAPIGroup_2_0.js +29 -29
  14. package/build/apigroups/ResourcesAPIGroup_2_0.js +238 -186
  15. package/build/apigroups/SessionsAPIGroup_2_0.js +7 -7
  16. package/build/authentication/ApiKey/ApiKeyAuthentication.js +1 -1
  17. package/build/authentication/AuthenticationAPI.js +2 -2
  18. package/build/authentication/BasicAuthentication/BasicAuthentication.js +2 -2
  19. package/build/authentication/OAuth2/IOAuth2ErrorResponse.js +1 -1
  20. package/build/authentication/OAuth2/OAuth2Authentication.js +34 -27
  21. package/build/connector/AxiosAdapter.js +28 -24
  22. package/build/connector/isRetryAllowed.js +0 -1
  23. package/build/connector/retryAfterDelay.js +3 -3
  24. package/build/shared/{interfaces/debugEvents/TSessionStateEmitParams.js → api/liveAgent/liveAgentInterfaces.js} +1 -1
  25. package/build/shared/charts/descriptors/allFields.js +1 -1
  26. package/build/shared/charts/descriptors/{profile → analytics}/activateProfile.js +2 -2
  27. package/build/shared/charts/descriptors/{profile → analytics}/blindMode.js +11 -4
  28. package/build/shared/charts/descriptors/{profile → analytics}/completeGoal.js +2 -2
  29. package/build/shared/charts/descriptors/{profile → analytics}/deactivateProfile.js +2 -2
  30. package/build/shared/charts/descriptors/{profile → analytics}/deleteProfile.js +2 -2
  31. package/build/shared/charts/descriptors/{profile → analytics}/index.js +0 -0
  32. package/build/shared/charts/descriptors/{profile → analytics}/mergeProfile.js +2 -2
  33. package/build/shared/charts/descriptors/{profile → analytics}/overwriteAnalytics.js +6 -3
  34. package/build/shared/charts/descriptors/{profile → analytics}/requestRating.js +2 -2
  35. package/build/shared/charts/descriptors/{profile → analytics}/setRating.js +2 -2
  36. package/build/shared/charts/descriptors/{profile → analytics}/updateProfile.js +2 -2
  37. package/build/shared/charts/descriptors/apps/getAppSessionPin.js +46 -0
  38. package/build/shared/charts/descriptors/apps/index.js +7 -1
  39. package/build/shared/charts/descriptors/apps/initAppSession.js +467 -12
  40. package/build/shared/charts/descriptors/apps/setAdaptiveCardAppState.js +79 -0
  41. package/build/shared/charts/descriptors/apps/setAppState.js +13 -15
  42. package/build/shared/charts/descriptors/apps/setHtmlAppState.js +108 -0
  43. package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/amazonStorageProviderConnection.js +14 -0
  44. package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/azureBlobStorageProviderConnection.js +13 -0
  45. package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/googleCloudStorageProviderConnection.js +13 -0
  46. package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/index.js +23 -0
  47. package/build/shared/charts/descriptors/connectionNodes/mongoDB/aggregate.js +1 -1
  48. package/build/shared/charts/descriptors/connectionNodes/mongoDB/find.js +1 -1
  49. package/build/shared/charts/descriptors/connectionNodes/mongoDB/findOne.js +1 -1
  50. package/build/shared/charts/descriptors/connectionNodes/mongoDB/index.js +1 -1
  51. package/build/shared/charts/descriptors/connectionNodes/mongoDB/insert.js +1 -1
  52. package/build/shared/charts/descriptors/connectionNodes/mongoDB/remove.js +1 -1
  53. package/build/shared/charts/descriptors/connectionNodes/mongoDB/updateMany.js +1 -1
  54. package/build/shared/charts/descriptors/connectionNodes/mongoDB/updateOne.js +1 -1
  55. package/build/shared/charts/descriptors/connectionNodes/smtp/emailNotification.js +2 -2
  56. package/build/shared/charts/descriptors/connectionNodes/smtp/index.js +1 -1
  57. package/build/shared/charts/descriptors/connectionNodes/smtp/sendEmail.js +2 -2
  58. package/build/shared/charts/descriptors/connectionNodes/sql/index.js +1 -1
  59. package/build/shared/charts/descriptors/connectionNodes/sql/runQuery.js +1 -1
  60. package/build/shared/charts/descriptors/connectionNodes/sql/runStoredProcedure.js +1 -1
  61. package/build/shared/charts/descriptors/connectionNodes/sql/runTransaction.js +1 -1
  62. package/build/shared/charts/descriptors/data/addToContext.js +1 -1
  63. package/build/shared/charts/descriptors/data/code.js +1 -1
  64. package/build/shared/charts/descriptors/data/copyDataToContext.js +1 -1
  65. package/build/shared/charts/descriptors/data/copySlotsToContext.js +1 -1
  66. package/build/shared/charts/descriptors/data/log.js +1 -1
  67. package/build/shared/charts/descriptors/data/removeFromContext.js +1 -1
  68. package/build/shared/charts/descriptors/data/resetContext.js +1 -1
  69. package/build/shared/charts/descriptors/end.js +1 -1
  70. package/build/shared/charts/descriptors/index.js +25 -16
  71. package/build/shared/charts/descriptors/liveAgent/assistInfo.js +195 -0
  72. package/build/shared/charts/descriptors/liveAgent/index.js +6 -0
  73. package/build/shared/charts/descriptors/liveAgent/utils/buildCognigyWhisperAssistResponse.js +135 -0
  74. package/build/shared/charts/descriptors/liveAgent/utils/index.js +6 -0
  75. package/build/shared/charts/descriptors/logic/disableSlotFillers.js +1 -1
  76. package/build/shared/charts/descriptors/logic/enableSlotFillers.js +1 -1
  77. package/build/shared/charts/descriptors/logic/executeFlow.js +1 -1
  78. package/build/shared/charts/descriptors/logic/goTo.js +1 -1
  79. package/build/shared/charts/descriptors/logic/if/else.js +1 -1
  80. package/build/shared/charts/descriptors/logic/if/if.js +1 -1
  81. package/build/shared/charts/descriptors/logic/if/then.js +1 -1
  82. package/build/shared/charts/descriptors/logic/interval/elseInterval.js +1 -1
  83. package/build/shared/charts/descriptors/logic/interval/interval.js +1 -1
  84. package/build/shared/charts/descriptors/logic/interval/onInterval.js +1 -1
  85. package/build/shared/charts/descriptors/logic/once/afterwards.js +1 -1
  86. package/build/shared/charts/descriptors/logic/once/onFirstExecution.js +1 -1
  87. package/build/shared/charts/descriptors/logic/once/once.js +1 -1
  88. package/build/shared/charts/descriptors/logic/resetState.js +1 -1
  89. package/build/shared/charts/descriptors/logic/setState.js +1 -1
  90. package/build/shared/charts/descriptors/logic/setTranslation.js +1 -1
  91. package/build/shared/charts/descriptors/logic/sleep.js +1 -1
  92. package/build/shared/charts/descriptors/logic/stop.js +1 -1
  93. package/build/shared/charts/descriptors/logic/switch/case.js +1 -1
  94. package/build/shared/charts/descriptors/logic/switch/default.js +1 -1
  95. package/build/shared/charts/descriptors/logic/switch/switch.js +22 -8
  96. package/build/shared/charts/descriptors/logic/switchLocale.js +1 -1
  97. package/build/shared/charts/descriptors/logic/think.js +1 -1
  98. package/build/shared/charts/descriptors/logic/thinkV2.js +1 -1
  99. package/build/shared/charts/descriptors/logic/wait.js +1 -1
  100. package/build/shared/charts/descriptors/message/checkChannelChange/checkChannelChange.js +1 -1
  101. package/build/shared/charts/descriptors/message/checkChannelChange/onNo.js +1 -1
  102. package/build/shared/charts/descriptors/message/checkChannelChange/onYes.js +1 -1
  103. package/build/shared/charts/descriptors/message/checkChannelChange/unchanged.js +1 -1
  104. package/build/shared/charts/descriptors/message/datePicker.js +5 -5
  105. package/build/shared/charts/descriptors/message/question/onAnswer.js +1 -1
  106. package/build/shared/charts/descriptors/message/question/onQuestion.js +1 -1
  107. package/build/shared/charts/descriptors/message/question/optionalQuestion.js +2 -2
  108. package/build/shared/charts/descriptors/message/question/question.js +201 -24
  109. package/build/shared/charts/descriptors/message/question/utils/datepickerUtils.js +31 -2
  110. package/build/shared/charts/descriptors/message/question/utils/evaluateQuestionAnswer.js +4 -1
  111. package/build/shared/charts/descriptors/message/question/utils/questionHandover.js +13 -0
  112. package/build/shared/charts/descriptors/message/say.js +10 -4
  113. package/build/shared/charts/descriptors/message/sendImage.js +1 -1
  114. package/build/shared/charts/descriptors/message/sendText.js +1 -1
  115. package/build/shared/charts/descriptors/microsoft/getToken.js +1 -1
  116. package/build/shared/charts/descriptors/microsoft/index.js +1 -1
  117. package/build/shared/charts/descriptors/microsoft/invalidateToken.js +1 -1
  118. package/build/shared/charts/descriptors/microsoft/tokenStatus/index.js +1 -1
  119. package/build/shared/charts/descriptors/microsoft/tokenStatus/tokenGranted.js +1 -1
  120. package/build/shared/charts/descriptors/microsoft/tokenStatus/tokenNotGranted.js +1 -1
  121. package/build/shared/charts/descriptors/nlu/addLexiconKeyphrase.js +1 -1
  122. package/build/shared/charts/descriptors/nlu/executeCognigyNLU.js +18 -3
  123. package/build/shared/charts/descriptors/nlu/extractAnswer.js +1 -1
  124. package/build/shared/charts/descriptors/nlu/fuzzySearch.js +2 -2
  125. package/build/shared/charts/descriptors/nlu/matchPattern.js +13 -4
  126. package/build/shared/charts/descriptors/nlu/regexSlotFiller.js +1 -1
  127. package/build/shared/charts/descriptors/nlu/utils/patternMatcher.js +129 -61
  128. package/build/shared/charts/descriptors/placeholder.js +1 -1
  129. package/build/shared/charts/descriptors/requiredFields.js +1 -1
  130. package/build/shared/charts/descriptors/service/checkAgentAvailability.js +203 -0
  131. package/build/shared/charts/descriptors/service/handover.js +1 -1
  132. package/build/shared/charts/descriptors/service/handoverV2.js +66 -3
  133. package/build/shared/charts/descriptors/service/httpRequest.js +16 -5
  134. package/build/shared/charts/descriptors/service/index.js +3 -1
  135. package/build/shared/charts/descriptors/service/triggerFunction/onScheduled.js +1 -1
  136. package/build/shared/charts/descriptors/service/triggerFunction/onSchedulingError.js +1 -1
  137. package/build/shared/charts/descriptors/service/triggerFunction/triggerFunction.js +1 -1
  138. package/build/shared/charts/descriptors/start.js +1 -1
  139. package/build/shared/charts/descriptors/voice/index.js +20 -0
  140. package/build/shared/charts/descriptors/voice/interface/IAudioCodes.js +3 -0
  141. package/build/shared/charts/descriptors/voice/interface/IVoiceGateway2.js +3 -0
  142. package/build/shared/charts/descriptors/voice/mappers/hangup.mapper.js +59 -0
  143. package/build/shared/charts/descriptors/voice/mappers/play.mapper.js +99 -0
  144. package/build/shared/charts/descriptors/voice/mappers/setSessionConfig.mapper.js +296 -0
  145. package/build/shared/charts/descriptors/voice/mappers/transfer.mapper.js +86 -0
  146. package/build/shared/charts/descriptors/voice/nodes/bargeIn.js +60 -0
  147. package/build/shared/charts/descriptors/voice/nodes/continuousAsr.js +72 -0
  148. package/build/shared/charts/descriptors/voice/nodes/dtmf.js +86 -0
  149. package/build/shared/charts/descriptors/voice/nodes/hangup.js +48 -0
  150. package/build/shared/charts/descriptors/voice/nodes/noUserInput.js +105 -0
  151. package/build/shared/charts/descriptors/voice/nodes/play.js +95 -0
  152. package/build/shared/charts/descriptors/voice/nodes/sessionSpeechParameters.js +105 -0
  153. package/build/shared/charts/descriptors/voice/nodes/transfer.js +114 -0
  154. package/build/shared/charts/descriptors/voice/utils/constants.js +8 -0
  155. package/build/shared/charts/descriptors/voice/utils/design.js +5 -0
  156. package/build/shared/charts/descriptors/voice/utils/helper.js +11 -0
  157. package/build/shared/charts/descriptors/voicegateway/index.js +1 -1
  158. package/build/shared/charts/descriptors/voicegateway/nodes/agentAssist.js +1 -1
  159. package/build/shared/charts/descriptors/voicegateway/nodes/callRecording.js +1 -1
  160. package/build/shared/charts/descriptors/voicegateway/nodes/handover.js +18 -32
  161. package/build/shared/charts/descriptors/voicegateway/nodes/hangup.js +11 -20
  162. package/build/shared/charts/descriptors/voicegateway/nodes/playURL.js +14 -29
  163. package/build/shared/charts/descriptors/voicegateway/nodes/sendMessage.js +4 -4
  164. package/build/shared/charts/descriptors/voicegateway/nodes/sendMetaData.js +1 -1
  165. package/build/shared/charts/descriptors/voicegateway/nodes/setSessionParams.js +4 -4
  166. package/build/shared/charts/descriptors/voicegateway/utils/paramUtils.js +25 -5
  167. package/build/shared/charts/descriptors/voicegateway2/index.js +6 -2
  168. package/build/shared/charts/descriptors/voicegateway2/nodes/dtmf.js +9 -5
  169. package/build/shared/charts/descriptors/voicegateway2/nodes/hangup.js +17 -19
  170. package/build/shared/charts/descriptors/voicegateway2/nodes/play.js +19 -105
  171. package/build/shared/charts/descriptors/voicegateway2/nodes/refer.js +73 -14
  172. package/build/shared/charts/descriptors/voicegateway2/nodes/sendMetadata.js +64 -0
  173. package/build/shared/charts/descriptors/voicegateway2/nodes/setSessionConfig.js +95 -325
  174. package/build/shared/charts/descriptors/voicegateway2/nodes/transfer.js +99 -0
  175. package/build/shared/charts/descriptors/voicegateway2/utils/constants.js +7 -0
  176. package/build/shared/charts/descriptors/voicegateway2/utils/helper.js +39 -0
  177. package/build/shared/constants.js +3 -1
  178. package/build/shared/errors/baseError.js +2 -2
  179. package/build/shared/handoverClients/interfaces/TAnyProviderResponse.js +3 -0
  180. package/build/shared/handoverClients/interfaces/THandoverEventType.js +12 -0
  181. package/build/shared/helper/BaseContext.js +1 -1
  182. package/build/shared/helper/defaultDatepickerFunction.js +13 -0
  183. package/build/shared/helper/rest/query-string/index.js +5 -5
  184. package/build/shared/helper/rest/query.js +0 -0
  185. package/build/shared/interfaces/IApiKey.js +1 -1
  186. package/build/shared/interfaces/IOrganisation.js +21 -2
  187. package/build/shared/interfaces/IProfile.js +1 -1
  188. package/build/shared/interfaces/ISayNodeSettings.js +3 -0
  189. package/build/shared/interfaces/ai.js +0 -1
  190. package/build/shared/interfaces/amazonLexV2Interface.js +3 -0
  191. package/build/shared/interfaces/amqpInterface.js +1 -1
  192. package/build/shared/interfaces/analytics/IAnalyticsRating.js +13 -0
  193. package/build/shared/interfaces/analytics/IStepEvent.js +2 -0
  194. package/build/shared/interfaces/fileStorage.js +23 -0
  195. package/build/shared/interfaces/handover.js +74 -4
  196. package/build/shared/interfaces/journeys/IJourney.js +1 -1
  197. package/build/shared/interfaces/management/deleteOrganisation/deleteOrganisationTypes.js +3 -0
  198. package/build/shared/interfaces/messageAPI/analytics.js +3 -0
  199. package/build/shared/interfaces/messageAPI/endpoints.js +89 -3
  200. package/build/shared/interfaces/messageAPI/handover.js +270 -0
  201. package/build/shared/interfaces/resources/IAppTemplate.js +24 -0
  202. package/build/shared/interfaces/resources/IAuditEvent.js +25 -2
  203. package/build/shared/interfaces/resources/IChart.js +2 -1
  204. package/build/shared/interfaces/resources/IChartNode.js +3 -2
  205. package/build/shared/interfaces/resources/IConnection.js +1 -1
  206. package/build/shared/interfaces/resources/IConnectionSchema.js +1 -1
  207. package/build/shared/interfaces/resources/IEndpoint.js +2 -0
  208. package/build/shared/interfaces/resources/IExtension.js +17 -0
  209. package/build/shared/interfaces/resources/IFile.js +1 -1
  210. package/build/shared/interfaces/resources/IFlow.js +10 -2
  211. package/build/shared/interfaces/resources/IFlowState.js +1 -1
  212. package/build/shared/interfaces/resources/IFunctionInstance.js +1 -1
  213. package/build/shared/interfaces/resources/IHandoverConfiguration.js +13 -0
  214. package/build/shared/interfaces/resources/ILexicon.js +1 -1
  215. package/build/shared/interfaces/resources/ILexiconEntry.js +1 -1
  216. package/build/shared/interfaces/resources/INodeDescriptorSet.js +5 -1
  217. package/build/shared/interfaces/resources/IOrganisationDeletion.js +10 -0
  218. package/build/shared/interfaces/resources/IPlaybookRun.js +7 -7
  219. package/build/shared/interfaces/resources/IProject.js +14 -1
  220. package/build/shared/interfaces/resources/IRemoveDuplicatedSlotsAndUpdateLexionEntries.js +3 -0
  221. package/build/shared/interfaces/resources/TNLUConnectorType.js +1 -0
  222. package/build/shared/interfaces/resources/TRestChannelType.js +5 -0
  223. package/build/shared/interfaces/resources/TSocketChannelType.js +5 -5
  224. package/build/shared/interfaces/resources/TWebhookChannelType.js +10 -0
  225. package/build/shared/interfaces/resources/intent/IIntent.js +26 -8
  226. package/build/shared/interfaces/resources/intent/IIntentTrainGroup.js +19 -1
  227. package/build/shared/interfaces/resources/settings/IAgentSettings.js +47 -6
  228. package/build/shared/interfaces/resources/settings/IFlowSettings.js +20 -2
  229. package/build/shared/interfaces/resources/settings/ISharedSettings.js +5 -1
  230. package/build/shared/interfaces/resources/yesNoIntent/IYesNoItem.js +9 -0
  231. package/build/shared/interfaces/resources/yesNoIntent/index.js +3 -0
  232. package/build/shared/interfaces/restAPI/administration/liveAgent/v2.0/IUpdateCognigyLiveAgentInboxRest_2_0.js +3 -0
  233. package/build/shared/interfaces/restAPI/administration/organisations/v2.0/IReadCollectionsToBeDeletedRest_2_0.js +21 -0
  234. package/build/shared/interfaces/restAPI/administration/organisations/v2.0/IRequestOrganisationDeletionRest_2_0.js +3 -0
  235. package/build/shared/interfaces/restAPI/administration/organisations/v2.0/index.js +3 -0
  236. package/build/shared/interfaces/restAPI/audio/v2.0/IAudioPreviewLanguages_2_0.js +3 -0
  237. package/build/shared/interfaces/restAPI/audio/v2.0/IAudioPreviewRest_2_0.js +3 -0
  238. package/build/shared/interfaces/restAPI/audio/v2.0/IIndexAudioPreviewLanguages_2_0.js +4 -0
  239. package/build/shared/interfaces/restAPI/audio/v2.0/ITestVoiceProviderRest_2_0.js +3 -0
  240. package/build/shared/interfaces/restAPI/audio/v2.0/ITestVoiceProvider_2_0.js +3 -0
  241. package/build/shared/interfaces/restAPI/audio/v2.0/IVGCallSettings_2_0.js +4 -0
  242. package/build/shared/interfaces/restAPI/audio/v2.0/IVoicePrepareCallRest_2_0.js +3 -0
  243. package/build/shared/interfaces/restAPI/audio/v2.0/IVoicePrepareCall_2_0.js +4 -0
  244. package/build/shared/interfaces/restAPI/audio/v2.0/index.js +3 -0
  245. package/build/shared/interfaces/restAPI/insights/publish/IPublishAnalyticsRestDataBody.js +4 -0
  246. package/build/shared/interfaces/restAPI/management/organisations/v2.0/IDeleteOrganisationRest_2_0.js +4 -0
  247. package/build/shared/interfaces/restAPI/resources/file/v2.0/IUploadFileRest_2_0.js +3 -0
  248. package/build/shared/interfaces/restAPI/resources/file/v2.0/index.js +3 -0
  249. package/build/shared/interfaces/restAPI/resources/flow/v2.0/ICloneFlowRest_2_0.js +4 -0
  250. package/build/shared/interfaces/restAPI/resources/flow/v2.0/sentence/IYesNoSentence_2_0.js +3 -0
  251. package/build/shared/interfaces/restAPI/resources/flow/v2.0/settings/ILocaleSettings_2_0.js +16 -0
  252. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoIntents/IDeleteYesNoIntentRest_2_0.js +3 -0
  253. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoIntents/IReadYesNoIntentsRest_2_0.js +3 -0
  254. package/build/shared/interfaces/restAPI/resources/{flow/v2.0/intent → locales/v2.0/yesNoIntents}/ITrainYesNoIntentsRest_2_0.js +0 -0
  255. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoIntents/IUpdateYesNoIntentRest_2_0.js +3 -0
  256. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoIntents/IYesNoIntentItem_2_0.js +3 -0
  257. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoIntents/IYesNoIntentMetaData_2_0.js +4 -0
  258. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoIntents/IYesNoIntents_2_0.js +8 -0
  259. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoIntents/index.js +3 -0
  260. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoSentence/ICreateYesNoSentenceRest_2_0.js +3 -0
  261. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoSentence/IDeleteYesNoSentenceRest_2_0.js +3 -0
  262. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoSentence/IIndexYesNoSentencesRest_2_0.js +3 -0
  263. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoSentence/IReadYesNoSentenceRest_2_0.js +3 -0
  264. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoSentence/IUpdateYesNoSentenceRest_2_0.js +3 -0
  265. package/build/shared/interfaces/restAPI/resources/locales/v2.0/yesNoSentence/index.js +3 -0
  266. package/build/shared/interfaces/restAPI/resources/nluconnector/v2.0/TNLUConnectorType_2_0.js +2 -0
  267. package/build/shared/interfaces/restAPI/resources/project/v2.0/ICreateProjectRest_2_0.js +1 -0
  268. package/build/shared/interfaces/restAPI/resources/project/v2.0/ITrainAllProjectFlowsRest_2_0.js +3 -0
  269. package/build/shared/interfaces/restAPI/resources/project/v2.0/settings/ITestTranslationSettingsRest_2_0.js +3 -0
  270. package/build/shared/interfaces/restAPI/resources/project/v2.0/settings/ITestTranslationSettings_2_0.js +3 -0
  271. package/build/shared/interfaces/security/IACL.js +1 -1
  272. package/build/shared/interfaces/security/IPermission.js +4 -0
  273. package/build/shared/interfaces/security/IRole.js +13 -1
  274. package/build/shared/interfaces/trainer/ITrainerRecord.js +1 -1
  275. package/build/shared/interfaces/user.js +1 -1
  276. package/package.json +40 -31
  277. package/types/index.d.ts +1734 -501
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CHECK_AGENT_AVAILABILITY = void 0;
4
+ /* Custom modules */
5
+ const createNodeDescriptor_1 = require("../../createNodeDescriptor");
6
+ /**
7
+ * Node name: 'checkAgentAvailability'
8
+ *
9
+ * Purpose:
10
+ * Check if agents are available for handover
11
+ */
12
+ exports.CHECK_AGENT_AVAILABILITY = (0, createNodeDescriptor_1.createNodeDescriptor)({
13
+ type: "checkAgentAvailability",
14
+ defaultLabel: "Check Agent Availability",
15
+ summary: "Get the number of available agents for handover",
16
+ appearance: {
17
+ showIcon: false,
18
+ },
19
+ tags: ["service"],
20
+ fields: [
21
+ {
22
+ key: "chatwootInboxId",
23
+ type: "cognigyText",
24
+ label: "Chatwoot Inbox Id",
25
+ description: "Inbox Id in Chatwoot"
26
+ },
27
+ {
28
+ key: "liveAgentInboxId",
29
+ type: "cognigyText",
30
+ label: "Live Agent Inbox Id",
31
+ description: "Inbox Id in Live Agent"
32
+ },
33
+ {
34
+ key: "genesysCloudSkills",
35
+ type: "textArray",
36
+ label: "Skills",
37
+ description: "A list of skills that should be used to filter the available agents"
38
+ },
39
+ {
40
+ key: "genesysCloudProfileSkills",
41
+ type: "textArray",
42
+ label: "Profile Skills",
43
+ description: "A list of profile skills that should be used to filter the available agents"
44
+ },
45
+ {
46
+ key: "genesysCloudLanguageSkills",
47
+ type: "textArray",
48
+ label: "Language Skills",
49
+ description: "A list of language skills that should be used to filter the available agents"
50
+ },
51
+ {
52
+ key: "storeLocation",
53
+ type: "select",
54
+ label: "Where to store the result",
55
+ params: {
56
+ options: [
57
+ {
58
+ label: "Input",
59
+ value: "input"
60
+ },
61
+ {
62
+ label: "Context",
63
+ value: "context"
64
+ }
65
+ ],
66
+ required: true
67
+ },
68
+ defaultValue: "input"
69
+ },
70
+ {
71
+ key: "inputKey",
72
+ type: "cognigyText",
73
+ label: "Input Key to store Result",
74
+ description: "Where to store the result in the Input object. E.g. input.availableAgents",
75
+ defaultValue: "availableAgents",
76
+ condition: {
77
+ key: "storeLocation",
78
+ value: "input"
79
+ }
80
+ },
81
+ {
82
+ key: "contextKey",
83
+ type: "cognigyText",
84
+ label: "Context Key to store Result",
85
+ description: "Where to store the result in the Context object. E.g. context.availableAgents",
86
+ defaultValue: "availableAgents",
87
+ condition: {
88
+ key: "storeLocation",
89
+ value: "context"
90
+ }
91
+ },
92
+ {
93
+ key: "abortOnError",
94
+ type: "toggle",
95
+ label: "Abort Flow Execution on Error",
96
+ description: "Aborts Flow Execution on all HTTP status codes > 299",
97
+ defaultValue: false
98
+ },
99
+ {
100
+ key: "errorLogging",
101
+ type: "select",
102
+ label: "Error Logging",
103
+ description: "Whether to log errors into the Agent Logs",
104
+ defaultValue: "none",
105
+ params: {
106
+ required: true,
107
+ options: [
108
+ {
109
+ label: "Don't log errors",
110
+ value: "none"
111
+ },
112
+ {
113
+ label: "Log error codes and responses",
114
+ value: "basic"
115
+ },
116
+ {
117
+ label: "Log full errors and request payloads",
118
+ value: "full"
119
+ }
120
+ ]
121
+ }
122
+ },
123
+ {
124
+ key: "logWarning",
125
+ type: "description",
126
+ label: " ",
127
+ params: {
128
+ text: "WARNING: Logging full request payloads may expose sensitive information in the server and agent logs."
129
+ },
130
+ condition: {
131
+ key: "errorLogging",
132
+ value: "full"
133
+ }
134
+ },
135
+ ],
136
+ sections: [
137
+ {
138
+ key: "chatwootSettings",
139
+ label: "Chatwoot Settings",
140
+ defaultCollapsed: true,
141
+ fields: [
142
+ "chatwootInboxId",
143
+ ]
144
+ },
145
+ {
146
+ key: "liveAgentSettings",
147
+ label: "Live Agent Settings",
148
+ defaultCollapsed: true,
149
+ fields: [
150
+ "liveAgentInboxId",
151
+ ]
152
+ },
153
+ {
154
+ key: "genesysCloudSettings",
155
+ label: "Genesys Cloud Settings",
156
+ defaultCollapsed: true,
157
+ fields: [
158
+ "genesysCloudSkills",
159
+ "genesysCloudProfileSkills",
160
+ "genesysCloudLanguageSkills"
161
+ ]
162
+ },
163
+ {
164
+ key: "storage",
165
+ label: "Storage Options",
166
+ defaultCollapsed: true,
167
+ fields: [
168
+ "storeLocation",
169
+ "inputKey",
170
+ "contextKey",
171
+ ]
172
+ },
173
+ {
174
+ key: "errors",
175
+ label: "Error Handling",
176
+ defaultCollapsed: true,
177
+ fields: [
178
+ "errorLogging",
179
+ "logWarning",
180
+ "abortOnError"
181
+ ]
182
+ }
183
+ ],
184
+ form: [
185
+ { type: "section", key: "genesysCloudSettings" },
186
+ // only render this field if "live agent" is enabled
187
+ process.env.FEATURE_USE_COGNIGY_LIVE_AGENT === "true" && {
188
+ type: "section",
189
+ key: "liveAgentSettings"
190
+ },
191
+ { type: "section", key: "chatwootSettings" },
192
+ // { type: "section", key: "salesforceSettings" }, TODO
193
+ { type: "section", key: "storage" },
194
+ { type: "section", key: "errors" },
195
+ ]
196
+ .filter(element => !!element),
197
+ function: async ({ cognigy, config }) => {
198
+ const { api } = cognigy;
199
+ // @ts-ignore
200
+ return await api.checkAgentAvailability({ cognigy, config });
201
+ }
202
+ });
203
+ //# sourceMappingURL=checkAgentAvailability.js.map
@@ -9,7 +9,7 @@ const createNodeDescriptor_1 = require("../../createNodeDescriptor");
9
9
  * Purpose:
10
10
  * Sends a handover request service-handover if the channel is supported
11
11
  */
12
- exports.HANDOVER = createNodeDescriptor_1.createNodeDescriptor({
12
+ exports.HANDOVER = (0, createNodeDescriptor_1.createNodeDescriptor)({
13
13
  type: "handover",
14
14
  defaultLabel: "Handover",
15
15
  summary: "Sends a handover request to an agent",
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HANDOVER_V2 = void 0;
4
4
  /* Custom modules */
5
5
  const createNodeDescriptor_1 = require("../../createNodeDescriptor");
6
- exports.HANDOVER_V2 = createNodeDescriptor_1.createNodeDescriptor({
6
+ exports.HANDOVER_V2 = (0, createNodeDescriptor_1.createNodeDescriptor)({
7
7
  type: "handoverToAgent",
8
8
  defaultLabel: "Handover to Agent",
9
9
  summary: "Sends a handover request to an agent",
@@ -39,18 +39,62 @@ exports.HANDOVER_V2 = createNodeDescriptor_1.createNodeDescriptor({
39
39
  label: "Cancel Button Text",
40
40
  description: "Text of the Quick Reply Button which sends the user back to the Virtual Agent"
41
41
  },
42
+ {
43
+ key: "resolveBehavior",
44
+ type: "select",
45
+ label: "On Resolve Behavior",
46
+ defaultValue: "resetEntrypoint",
47
+ params: {
48
+ options: [
49
+ {
50
+ label: "Continue Flow below this Node",
51
+ value: "resetEntrypoint"
52
+ },
53
+ {
54
+ label: "Continue Flow at current Entrypoint",
55
+ value: "continueEntrypoint",
56
+ },
57
+ ],
58
+ },
59
+ },
60
+ {
61
+ key: "sendResolveEvent",
62
+ type: "toggle",
63
+ label: "Send resolve event to Virtual Agent",
64
+ defaultValue: true,
65
+ },
42
66
  {
43
67
  key: "liveAgentInboxId",
44
68
  type: "cognigyText",
45
69
  label: "Live Agent Inbox Id",
46
70
  description: "Inbox Id in Live Agent"
47
71
  },
72
+ {
73
+ key: "agentAssistInitMessage",
74
+ type: "cognigyText",
75
+ label: "Initial Whisper Assist Trigger",
76
+ description: "If an Assist Flow is configured, this trigger message is sent to it as an input upon Live Agent handover"
77
+ },
78
+ {
79
+ key: "allowAgentInject",
80
+ type: "toggle",
81
+ label: "Allow to reply as user via UI",
82
+ description: "Display a button allowing human agents to reply as end user",
83
+ defaultValue: false,
84
+ },
48
85
  {
49
86
  key: "chatwootInboxId",
50
87
  type: "cognigyText",
51
88
  label: "Chatwoot Inbox Id",
52
89
  description: "Inbox Id in Chatwoot"
53
90
  },
91
+ {
92
+ key: "sendTranscriptAsFirstMessage",
93
+ type: "toggle",
94
+ label: "Send Transcript as first message",
95
+ description: "The Salesforce receives conversation transcript as a first message.",
96
+ defaultValue: false,
97
+ },
54
98
  {
55
99
  key: "salesforcePrechatEntities",
56
100
  type: "json",
@@ -76,12 +120,23 @@ exports.HANDOVER_V2 = createNodeDescriptor_1.createNodeDescriptor({
76
120
  "quickReply",
77
121
  ]
78
122
  },
123
+ {
124
+ key: "resolveOptions",
125
+ label: "On Resolve Options",
126
+ defaultCollapsed: true,
127
+ fields: [
128
+ "resolveBehavior",
129
+ "sendResolveEvent",
130
+ ]
131
+ },
79
132
  {
80
133
  key: "liveAgentSettings",
81
134
  label: "Live Agent Settings",
82
135
  defaultCollapsed: true,
83
136
  fields: [
84
137
  "liveAgentInboxId",
138
+ "agentAssistInitMessage",
139
+ "allowAgentInject"
85
140
  ]
86
141
  },
87
142
  {
@@ -97,6 +152,7 @@ exports.HANDOVER_V2 = createNodeDescriptor_1.createNodeDescriptor({
97
152
  label: "Salesforce Settings",
98
153
  defaultCollapsed: true,
99
154
  fields: [
155
+ "sendTranscriptAsFirstMessage",
100
156
  "salesforcePrechatEntities",
101
157
  "salesforcePrechatDetails"
102
158
  ]
@@ -106,6 +162,7 @@ exports.HANDOVER_V2 = createNodeDescriptor_1.createNodeDescriptor({
106
162
  { type: "field", key: "text" },
107
163
  { type: "field", key: "repeatHandoverMessage" },
108
164
  { type: "section", key: "cancelSettings" },
165
+ { type: "section", key: "resolveOptions" },
109
166
  // only render this field if "live agent" is enabled
110
167
  process.env.FEATURE_USE_COGNIGY_LIVE_AGENT === "true" && {
111
168
  type: "section",
@@ -116,9 +173,15 @@ exports.HANDOVER_V2 = createNodeDescriptor_1.createNodeDescriptor({
116
173
  ]
117
174
  .filter(element => !!element),
118
175
  tags: ["service", "livechat", "chat", "hand over"],
119
- function: async ({ cognigy, config, childConfigs, nodeId }) => {
176
+ function: async ({ cognigy, config, childConfigs, nodeId, nodeType }) => {
120
177
  const { api, input } = cognigy;
121
- const result = await api.handoverV2({ cognigy, config, nodeId, childConfigs });
178
+ const result = await api.handoverV2({
179
+ cognigy,
180
+ config,
181
+ nodeId,
182
+ childConfigs,
183
+ nodeType: nodeType || "handoverToAgent",
184
+ });
122
185
  if ((result === null || result === void 0 ? void 0 : result.status) === "error") {
123
186
  input.handover = result;
124
187
  return;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HTTP_REQUEST = exports.HTTP_CONNECTION_OAUTH2 = exports.HTTP_CONNECTION_APIKEYXKEY = exports.HTTP_CONNECTION_APIKEYAUTHKEY = exports.HTTP_CONNECTION_BASIC = void 0;
3
+ exports.HTTP_REQUEST = exports.HTTP_CONNECTION_OAUTH2 = exports.IHttpOAuthConnectionFieldSchema = exports.HTTP_CONNECTION_APIKEYXKEY = exports.HTTP_CONNECTION_APIKEYAUTHKEY = exports.HTTP_CONNECTION_BASIC = void 0;
4
4
  /* Custom modules */
5
5
  const createNodeDescriptor_1 = require("../../createNodeDescriptor");
6
6
  exports.HTTP_CONNECTION_BASIC = {
@@ -25,6 +25,17 @@ exports.HTTP_CONNECTION_APIKEYXKEY = {
25
25
  { fieldName: "authApiKey" }
26
26
  ]
27
27
  };
28
+ exports.IHttpOAuthConnectionFieldSchema = {
29
+ title: "foreignSettingsDataSchema",
30
+ type: "object",
31
+ additionalProperties: false,
32
+ properties: {
33
+ oAuth2Url: { type: "string" },
34
+ oAuth2ClientId: { type: "string" },
35
+ oAuth2ClientSecret: { type: "string" },
36
+ oAuth2Scope: { type: "string" }
37
+ }
38
+ };
28
39
  exports.HTTP_CONNECTION_OAUTH2 = {
29
40
  type: "http_oauth2",
30
41
  label: "OAuth2 for HTTP Requests",
@@ -42,7 +53,7 @@ exports.HTTP_CONNECTION_OAUTH2 = {
42
53
  * Purpose:
43
54
  * Sends HTTP request
44
55
  */
45
- exports.HTTP_REQUEST = createNodeDescriptor_1.createNodeDescriptor({
56
+ exports.HTTP_REQUEST = (0, createNodeDescriptor_1.createNodeDescriptor)({
46
57
  type: "httpRequest",
47
58
  defaultLabel: "HTTP Request",
48
59
  summary: "Performs a HTTP request and stores the result",
@@ -96,7 +107,7 @@ exports.HTTP_REQUEST = createNodeDescriptor_1.createNodeDescriptor({
96
107
  type: "keyValuePairs",
97
108
  label: "Headers",
98
109
  description: "Headers to send in the request (key/value pairs)",
99
- defaultValue: {},
110
+ defaultValue: "{}",
100
111
  },
101
112
  {
102
113
  key: "payloadType",
@@ -136,7 +147,7 @@ exports.HTTP_REQUEST = createNodeDescriptor_1.createNodeDescriptor({
136
147
  key: "payloadJSON",
137
148
  type: "json",
138
149
  label: "Payload",
139
- defaultValue: {},
150
+ defaultValue: "{}",
140
151
  condition: {
141
152
  key: "payloadType",
142
153
  value: "json"
@@ -146,7 +157,7 @@ exports.HTTP_REQUEST = createNodeDescriptor_1.createNodeDescriptor({
146
157
  key: "payloadFormData",
147
158
  type: "json",
148
159
  label: "Payload",
149
- defaultValue: {},
160
+ defaultValue: "{}",
150
161
  condition: {
151
162
  key: "payloadType",
152
163
  value: "form-data"
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ON_SCHEDULING_ERROR = exports.ON_SCHEDULED = exports.TRIGGER_FUNCTION = exports.HTTP_CONNECTION_OAUTH2 = exports.HTTP_CONNECTION_APIKEYXKEY = exports.HTTP_CONNECTION_APIKEYAUTHKEY = exports.HTTP_CONNECTION_BASIC = exports.HTTP_REQUEST = exports.HANDOVER_V2 = exports.HANDOVER = void 0;
3
+ exports.ON_SCHEDULING_ERROR = exports.ON_SCHEDULED = exports.TRIGGER_FUNCTION = exports.HTTP_CONNECTION_OAUTH2 = exports.HTTP_CONNECTION_APIKEYXKEY = exports.HTTP_CONNECTION_APIKEYAUTHKEY = exports.HTTP_CONNECTION_BASIC = exports.HTTP_REQUEST = exports.CHECK_AGENT_AVAILABILITY = exports.HANDOVER_V2 = exports.HANDOVER = void 0;
4
4
  var handover_1 = require("./handover");
5
5
  Object.defineProperty(exports, "HANDOVER", { enumerable: true, get: function () { return handover_1.HANDOVER; } });
6
6
  var handoverV2_1 = require("./handoverV2");
7
7
  Object.defineProperty(exports, "HANDOVER_V2", { enumerable: true, get: function () { return handoverV2_1.HANDOVER_V2; } });
8
+ var checkAgentAvailability_1 = require("./checkAgentAvailability");
9
+ Object.defineProperty(exports, "CHECK_AGENT_AVAILABILITY", { enumerable: true, get: function () { return checkAgentAvailability_1.CHECK_AGENT_AVAILABILITY; } });
8
10
  var httpRequest_1 = require("./httpRequest");
9
11
  /* Node */
10
12
  Object.defineProperty(exports, "HTTP_REQUEST", { enumerable: true, get: function () { return httpRequest_1.HTTP_REQUEST; } });
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ON_SCHEDULED = void 0;
4
4
  /* Custom modules */
5
5
  const createNodeDescriptor_1 = require("../../../createNodeDescriptor");
6
- exports.ON_SCHEDULED = createNodeDescriptor_1.createNodeDescriptor({
6
+ exports.ON_SCHEDULED = (0, createNodeDescriptor_1.createNodeDescriptor)({
7
7
  type: "onScheduled",
8
8
  parentType: "triggerFunction",
9
9
  defaultLabel: "On Scheduled",
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ON_SCHEDULING_ERROR = void 0;
4
4
  /* Custom modules */
5
5
  const createNodeDescriptor_1 = require("../../../createNodeDescriptor");
6
- exports.ON_SCHEDULING_ERROR = createNodeDescriptor_1.createNodeDescriptor({
6
+ exports.ON_SCHEDULING_ERROR = (0, createNodeDescriptor_1.createNodeDescriptor)({
7
7
  type: "onSchedulingError",
8
8
  parentType: "triggerFunction",
9
9
  defaultLabel: "On Scheduling Error",
@@ -15,7 +15,7 @@ const createNodeDescriptor_1 = require("../../../createNodeDescriptor");
15
15
  * If a new instance could be scheduled, the "onScheduled" child will be executed -
16
16
  * otherwise the "onSchedulingError" child will be executed.
17
17
  */
18
- exports.TRIGGER_FUNCTION = createNodeDescriptor_1.createNodeDescriptor({
18
+ exports.TRIGGER_FUNCTION = (0, createNodeDescriptor_1.createNodeDescriptor)({
19
19
  type: "triggerFunction",
20
20
  defaultLabel: "Trigger Function",
21
21
  summary: "Starts a new Function instance",
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.START = void 0;
4
4
  /* Custom modules */
5
5
  const createNodeDescriptor_1 = require("../createNodeDescriptor");
6
- exports.START = createNodeDescriptor_1.createNodeDescriptor({
6
+ exports.START = (0, createNodeDescriptor_1.createNodeDescriptor)({
7
7
  type: "start",
8
8
  defaultLabel: "Start",
9
9
  appearance: {
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SESSION_SPEECH_PARAMETERS = exports.BARGE_IN = exports.TRANSFER_VOICE = exports.PLAY = exports.USER_INPUT_TIMEOUT = exports.HANG_UP = exports.DTMF = exports.CONTINUOUS_ASR = void 0;
4
+ var continuousAsr_1 = require("./nodes/continuousAsr");
5
+ Object.defineProperty(exports, "CONTINUOUS_ASR", { enumerable: true, get: function () { return continuousAsr_1.CONTINUOUS_ASR; } });
6
+ var dtmf_1 = require("./nodes/dtmf");
7
+ Object.defineProperty(exports, "DTMF", { enumerable: true, get: function () { return dtmf_1.DTMF; } });
8
+ var hangup_1 = require("./nodes/hangup");
9
+ Object.defineProperty(exports, "HANG_UP", { enumerable: true, get: function () { return hangup_1.HANG_UP; } });
10
+ var noUserInput_1 = require("./nodes/noUserInput");
11
+ Object.defineProperty(exports, "USER_INPUT_TIMEOUT", { enumerable: true, get: function () { return noUserInput_1.USER_INPUT_TIMEOUT; } });
12
+ var play_1 = require("./nodes/play");
13
+ Object.defineProperty(exports, "PLAY", { enumerable: true, get: function () { return play_1.PLAY; } });
14
+ var transfer_1 = require("./nodes/transfer");
15
+ Object.defineProperty(exports, "TRANSFER_VOICE", { enumerable: true, get: function () { return transfer_1.TRANSFER_VOICE; } });
16
+ var bargeIn_1 = require("./nodes/bargeIn");
17
+ Object.defineProperty(exports, "BARGE_IN", { enumerable: true, get: function () { return bargeIn_1.BARGE_IN; } });
18
+ var sessionSpeechParameters_1 = require("./nodes/sessionSpeechParameters");
19
+ Object.defineProperty(exports, "SESSION_SPEECH_PARAMETERS", { enumerable: true, get: function () { return sessionSpeechParameters_1.SESSION_SPEECH_PARAMETERS; } });
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IAudioCodes.js.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IVoiceGateway2.js.map
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hangUp = void 0;
4
+ const constants_1 = require("../utils/constants");
5
+ exports.hangUp = {
6
+ handleInput(endpointType, hangUpReason) {
7
+ if (endpointType === constants_1.ENDPOINTS.VOICE_GATEWAY) {
8
+ return this.handleVGInput(hangUpReason);
9
+ }
10
+ else if (endpointType === constants_1.ENDPOINTS.AUDIO_CODES) {
11
+ return this.handleAudioCodesInput(hangUpReason);
12
+ }
13
+ else {
14
+ return this.handleVGInput(hangUpReason);
15
+ }
16
+ },
17
+ handleVGInput(hangUpReason) {
18
+ const payload = {
19
+ _voiceGateway2: {
20
+ json: {
21
+ hangup: {}
22
+ }
23
+ }
24
+ };
25
+ if (hangUpReason) {
26
+ payload._voiceGateway2.json.hangup = {
27
+ headers: {
28
+ "X-Reason": hangUpReason
29
+ }
30
+ };
31
+ }
32
+ return payload;
33
+ },
34
+ handleAudioCodesInput(hangupReason) {
35
+ const payload = {
36
+ _voiceGateway: {
37
+ json: {
38
+ activities: [{
39
+ type: "event",
40
+ name: "hangup",
41
+ activityParams: {}
42
+ }]
43
+ }
44
+ }
45
+ };
46
+ if (hangupReason) {
47
+ payload._voiceGateway.json.activities[0].activityParams = {
48
+ hangupReason
49
+ };
50
+ }
51
+ else {
52
+ payload._voiceGateway.json.activities[0].activityParams = {
53
+ hangupReason: "Hangup the call"
54
+ };
55
+ }
56
+ return payload;
57
+ }
58
+ };
59
+ //# sourceMappingURL=hangup.mapper.js.map
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.play = void 0;
4
+ /** Helper Modules */
5
+ const setSessionConfig_mapper_1 = require("../mappers/setSessionConfig.mapper");
6
+ const paramUtils_1 = require("../../voicegateway/utils/paramUtils");
7
+ const constants_1 = require("../utils/constants");
8
+ const strip_nulls_1 = require("../../voicegateway2/utils/strip-nulls");
9
+ const setSessionConfig_mapper_2 = require("../mappers/setSessionConfig.mapper");
10
+ exports.play = {
11
+ handleInput(endpointType, config, api) {
12
+ if (endpointType === constants_1.ENDPOINTS.VOICE_GATEWAY) {
13
+ return this.handleVGInput(config, api);
14
+ }
15
+ else if (endpointType === constants_1.ENDPOINTS.AUDIO_CODES) {
16
+ return this.handleAudioCodesInput(config);
17
+ }
18
+ else {
19
+ return this.handleVGInput(config, api);
20
+ }
21
+ },
22
+ handleVGInput(config, api) {
23
+ const { url, loop, setActivityParams } = config;
24
+ const voiceGateway2Payload = {
25
+ play: {
26
+ url,
27
+ loop
28
+ }
29
+ };
30
+ if (setActivityParams) {
31
+ const vg2Payload = setSessionConfig_mapper_1.setSessionConfig.handleVGInput((0, setSessionConfig_mapper_2.voiceConfigParamsToVoiceSettings)(config, api));
32
+ const activityConfig = (0, setSessionConfig_mapper_2.vg2PayloadToActivityParams)(vg2Payload);
33
+ if (Object.keys(activityConfig).length) {
34
+ if (voiceGateway2Payload.play)
35
+ voiceGateway2Payload.play.activityConfig = activityConfig;
36
+ }
37
+ }
38
+ return {
39
+ _voiceGateway2: {
40
+ json: (0, strip_nulls_1.stripNulls)(voiceGateway2Payload)
41
+ }
42
+ };
43
+ },
44
+ handleAudioCodesInput(config) {
45
+ let { url, playUrlUrl, playUrlMediaFormat, playUrlAltText, setActivityParams, activityParams, playUrlCaching } = config;
46
+ // set up default if the config is not present (from generic play node)
47
+ if (playUrlCaching === undefined)
48
+ playUrlCaching = true;
49
+ if (playUrlMediaFormat === undefined)
50
+ playUrlMediaFormat = "wav/lpcm16";
51
+ if (playUrlUrl === undefined)
52
+ playUrlUrl = url;
53
+ let compiledParams = Object.assign(activityParams || {}, {
54
+ playUrlUrl,
55
+ playUrlMediaFormat
56
+ });
57
+ if (playUrlAltText)
58
+ compiledParams["playUrlAltText"] = playUrlAltText;
59
+ if (playUrlCaching !== null)
60
+ compiledParams["playUrlCaching"] = !!playUrlCaching;
61
+ if (setActivityParams) {
62
+ (0, paramUtils_1.compileParams)(config, compiledParams);
63
+ }
64
+ // translate config of generic node into AudioCodes
65
+ if (compiledParams.bargeInOnSpeech !== undefined)
66
+ compiledParams.bargeIn = compiledParams.bargeInOnSpeech;
67
+ if (compiledParams.bargeInOnDtmf !== undefined)
68
+ compiledParams.bargeInOnDTMF = compiledParams.bargeInOnDtmf;
69
+ if (compiledParams.dtmfEnable !== undefined)
70
+ compiledParams.sendDTMF = compiledParams.dtmfEnable;
71
+ if (compiledParams.dtmfInterDigitTimeout !== undefined)
72
+ compiledParams.dtmfCollectInterDigitTimeoutMS = compiledParams.dtmfInterDigitTimeout;
73
+ if (compiledParams.dtmfMaxDigits !== undefined)
74
+ compiledParams.dtmfCollectMaxDigits = compiledParams.dtmfMaxDigits;
75
+ if (compiledParams.dtmfSubmitDigit !== undefined)
76
+ compiledParams.dtmfCollectSubmitDigit = compiledParams.dtmfSubmitDigit;
77
+ // remove the configurations from VG2
78
+ delete compiledParams.url;
79
+ delete compiledParams.bargeInOnSpeech;
80
+ delete compiledParams.bargeInOnDtmf;
81
+ delete compiledParams.dtmfEnable;
82
+ delete compiledParams.dtmfInterDigitTimeout;
83
+ delete compiledParams.dtmfMaxDigits;
84
+ delete compiledParams.dtmfMinDigits;
85
+ delete compiledParams.dtmfSubmitDigit;
86
+ return {
87
+ _voiceGateway: {
88
+ json: {
89
+ activities: [{
90
+ type: "event",
91
+ name: "playUrl",
92
+ activityParams: compiledParams
93
+ }]
94
+ }
95
+ }
96
+ };
97
+ }
98
+ };
99
+ //# sourceMappingURL=play.mapper.js.map