@cognigy/rest-api-client 0.14.0 → 0.15.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 (274) hide show
  1. package/build/RestAPIClient.js +4 -0
  2. package/build/apigroups/AdministrationAPIGroup_2_1.js +13 -0
  3. package/build/apigroups/ResourcesAPIGroup_2_0.js +69 -9
  4. package/build/apigroups/index.js +3 -1
  5. package/build/connector/AxiosAdapter.js +1 -1
  6. package/build/shared/api/eightByEight/eightByEightInterfaces.js +3 -0
  7. package/build/shared/charts/descriptors/agentAssist/index.js +10 -0
  8. package/build/shared/charts/descriptors/agentAssist/setAdaptiveCardTile.js +74 -0
  9. package/build/shared/charts/descriptors/agentAssist/setHtmlTile.js +98 -0
  10. package/build/shared/charts/descriptors/agentAssist/setIframeTile.js +86 -0
  11. package/build/shared/charts/descriptors/analytics/activateProfile.js +1 -1
  12. package/build/shared/charts/descriptors/analytics/blindMode.js +5 -5
  13. package/build/shared/charts/descriptors/analytics/completeGoal.js +2 -2
  14. package/build/shared/charts/descriptors/analytics/deactivateProfile.js +2 -2
  15. package/build/shared/charts/descriptors/analytics/deleteProfile.js +1 -1
  16. package/build/shared/charts/descriptors/analytics/mergeProfile.js +2 -2
  17. package/build/shared/charts/descriptors/analytics/overwriteAnalytics.js +34 -27
  18. package/build/shared/charts/descriptors/analytics/requestRating.js +5 -5
  19. package/build/shared/charts/descriptors/analytics/setRating.js +4 -4
  20. package/build/shared/charts/descriptors/analytics/updateProfile.js +3 -3
  21. package/build/shared/charts/descriptors/apps/getAppSessionPin.js +7 -14
  22. package/build/shared/charts/descriptors/apps/initAppSession.js +99 -87
  23. package/build/shared/charts/descriptors/apps/setAdaptiveCardAppState.js +101 -19
  24. package/build/shared/charts/descriptors/apps/setAppState.js +7 -7
  25. package/build/shared/charts/descriptors/apps/setHtmlAppState.js +141 -99
  26. package/build/shared/charts/descriptors/apps/utils/buildAppUrl.js +2 -6
  27. package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/anthropicProviderConnection.js +11 -0
  28. package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/azureOpenAIProviderConnection.js +4 -1
  29. package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/azureOpenAIProviderConnectionV2.js +11 -0
  30. package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/googleVertexAIProviderConnection.js +16 -0
  31. package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/index.js +14 -2
  32. package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/openAIProviderConnection.js +1 -1
  33. package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/amazonStorageProviderConnection.js +1 -1
  34. package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/azureBlobStorageProviderConnection.js +1 -1
  35. package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/googleCloudStorageProviderConnection.js +1 -1
  36. package/build/shared/charts/descriptors/connectionNodes/mongoDB/aggregate.js +13 -13
  37. package/build/shared/charts/descriptors/connectionNodes/mongoDB/find.js +18 -18
  38. package/build/shared/charts/descriptors/connectionNodes/mongoDB/findOne.js +17 -17
  39. package/build/shared/charts/descriptors/connectionNodes/mongoDB/insert.js +13 -13
  40. package/build/shared/charts/descriptors/connectionNodes/mongoDB/mongoDBConnection.js +1 -1
  41. package/build/shared/charts/descriptors/connectionNodes/mongoDB/remove.js +13 -13
  42. package/build/shared/charts/descriptors/connectionNodes/mongoDB/updateMany.js +15 -15
  43. package/build/shared/charts/descriptors/connectionNodes/mongoDB/updateOne.js +15 -15
  44. package/build/shared/charts/descriptors/connectionNodes/smtp/emailNotification.js +28 -28
  45. package/build/shared/charts/descriptors/connectionNodes/smtp/index.js +3 -1
  46. package/build/shared/charts/descriptors/connectionNodes/smtp/oAuth2Connection.js +18 -0
  47. package/build/shared/charts/descriptors/connectionNodes/smtp/sendEmail.js +102 -70
  48. package/build/shared/charts/descriptors/connectionNodes/smtp/serviceConnection.js +1 -1
  49. package/build/shared/charts/descriptors/connectionNodes/smtp/smtpConnection.js +1 -1
  50. package/build/shared/charts/descriptors/connectionNodes/speechProviders/awsSpeechProviderConnection.js +14 -0
  51. package/build/shared/charts/descriptors/connectionNodes/speechProviders/googleSpeechProviderConnection.js +16 -0
  52. package/build/shared/charts/descriptors/connectionNodes/speechProviders/index.js +23 -0
  53. package/build/shared/charts/descriptors/connectionNodes/speechProviders/microsoftSpeechProviderConnection.js +12 -0
  54. package/build/shared/charts/descriptors/connectionNodes/sql/runQuery.js +11 -11
  55. package/build/shared/charts/descriptors/connectionNodes/sql/runStoredProcedure.js +13 -13
  56. package/build/shared/charts/descriptors/connectionNodes/sql/runTransaction.js +11 -11
  57. package/build/shared/charts/descriptors/connectionNodes/sql/sqlConnection.js +1 -1
  58. package/build/shared/charts/descriptors/data/addToContext.js +7 -7
  59. package/build/shared/charts/descriptors/data/code.js +3 -3
  60. package/build/shared/charts/descriptors/data/copyDataToContext.js +1 -1
  61. package/build/shared/charts/descriptors/data/copySlotsToContext.js +9 -9
  62. package/build/shared/charts/descriptors/data/log.js +7 -7
  63. package/build/shared/charts/descriptors/data/removeFromContext.js +7 -7
  64. package/build/shared/charts/descriptors/data/resetContext.js +2 -2
  65. package/build/shared/charts/descriptors/index.js +36 -12
  66. package/build/shared/charts/descriptors/knowledgeSearch/index.js +6 -0
  67. package/build/shared/charts/descriptors/knowledgeSearch/knowledgeSearch.js +149 -0
  68. package/build/shared/charts/descriptors/liveAgent/assistInfo.js +25 -25
  69. package/build/shared/charts/descriptors/logic/disableSlotFillers.js +4 -4
  70. package/build/shared/charts/descriptors/logic/enableSlotFillers.js +3 -3
  71. package/build/shared/charts/descriptors/logic/executeFlow.js +9 -9
  72. package/build/shared/charts/descriptors/logic/goTo.js +17 -17
  73. package/build/shared/charts/descriptors/logic/if/if.js +3 -3
  74. package/build/shared/charts/descriptors/logic/interval/interval.js +3 -3
  75. package/build/shared/charts/descriptors/logic/once/once.js +1 -1
  76. package/build/shared/charts/descriptors/logic/resetState.js +1 -1
  77. package/build/shared/charts/descriptors/logic/setState.js +4 -4
  78. package/build/shared/charts/descriptors/logic/setTranslation.js +15 -15
  79. package/build/shared/charts/descriptors/logic/sleep.js +2 -2
  80. package/build/shared/charts/descriptors/logic/stop.js +1 -1
  81. package/build/shared/charts/descriptors/logic/switch/case.js +1 -1
  82. package/build/shared/charts/descriptors/logic/switch/default.js +1 -1
  83. package/build/shared/charts/descriptors/logic/switch/switch.js +28 -19
  84. package/build/shared/charts/descriptors/logic/switchLocale.js +5 -5
  85. package/build/shared/charts/descriptors/logic/think.js +11 -11
  86. package/build/shared/charts/descriptors/logic/thinkV2.js +11 -11
  87. package/build/shared/charts/descriptors/logic/wait.js +1 -1
  88. package/build/shared/charts/descriptors/message/checkChannelChange/checkChannelChange.js +4 -4
  89. package/build/shared/charts/descriptors/message/datePicker.js +1 -1
  90. package/build/shared/charts/descriptors/message/question/optionalQuestion.js +66 -34
  91. package/build/shared/charts/descriptors/message/question/question.js +583 -204
  92. package/build/shared/charts/descriptors/message/question/utils/cleanTextUtils.js +191 -0
  93. package/build/shared/charts/descriptors/message/question/utils/datepickerUtils.js +40 -40
  94. package/build/shared/charts/descriptors/message/question/utils/evaluateQuestionAnswer.js +37 -27
  95. package/build/shared/charts/descriptors/message/say.js +37 -4
  96. package/build/shared/charts/descriptors/message/sendImage.js +1 -1
  97. package/build/shared/charts/descriptors/message/sendText.js +2 -2
  98. package/build/shared/charts/descriptors/microsoft/getToken.js +1 -1
  99. package/build/shared/charts/descriptors/microsoft/invalidateToken.js +1 -1
  100. package/build/shared/charts/descriptors/microsoft/tokenStatus/index.js +1 -1
  101. package/build/shared/charts/descriptors/nlu/addLexiconKeyphrase.js +5 -5
  102. package/build/shared/charts/descriptors/nlu/cleanText.js +103 -0
  103. package/build/shared/charts/descriptors/nlu/executeCognigyNLU.js +15 -15
  104. package/build/shared/charts/descriptors/nlu/extractAnswer.js +11 -11
  105. package/build/shared/charts/descriptors/nlu/fuzzySearch.js +33 -33
  106. package/build/shared/charts/descriptors/nlu/generativeSlotFiller/generativeSlotFiller.js +270 -0
  107. package/build/shared/charts/descriptors/nlu/generativeSlotFiller/generativeSlotFillerFallback.js +27 -0
  108. package/build/shared/charts/descriptors/nlu/generativeSlotFiller/generativeSlotFillerSuccess.js +27 -0
  109. package/build/shared/charts/descriptors/nlu/generativeSlotFiller/prompt.js +76 -0
  110. package/build/shared/charts/descriptors/nlu/index.js +9 -1
  111. package/build/shared/charts/descriptors/nlu/matchPattern.js +16 -16
  112. package/build/shared/charts/descriptors/nlu/regexSlotFiller.js +5 -5
  113. package/build/shared/charts/descriptors/placeholder.js +3 -3
  114. package/build/shared/charts/descriptors/service/GPTConversation.js +678 -0
  115. package/build/shared/charts/descriptors/service/GPTPrompt.js +258 -0
  116. package/build/shared/charts/descriptors/service/checkAgentAvailability.js +34 -33
  117. package/build/shared/charts/descriptors/service/closeHandover.js +34 -0
  118. package/build/shared/charts/descriptors/service/conversationSummary.js +148 -0
  119. package/build/shared/charts/descriptors/service/handover.js +18 -17
  120. package/build/shared/charts/descriptors/service/handoverInactivityTimer.js +37 -0
  121. package/build/shared/charts/descriptors/service/handoverV2.js +134 -51
  122. package/build/shared/charts/descriptors/service/httpRequest.js +52 -52
  123. package/build/shared/charts/descriptors/service/index.js +11 -3
  124. package/build/shared/charts/descriptors/service/triggerFunction/triggerFunction.js +3 -3
  125. package/build/shared/charts/descriptors/voice/index.js +5 -1
  126. package/build/shared/charts/descriptors/voice/mappers/base.mapper.js +83 -0
  127. package/build/shared/charts/descriptors/voice/mappers/hangup.mapper.js +6 -9
  128. package/build/shared/charts/descriptors/voice/mappers/muteSpeechInput.mapper.js +52 -0
  129. package/build/shared/charts/descriptors/voice/mappers/play.mapper.js +19 -19
  130. package/build/shared/charts/descriptors/voice/mappers/record.mapper.js +96 -0
  131. package/build/shared/charts/descriptors/voice/mappers/sendMetadata.mapper.js +53 -0
  132. package/build/shared/charts/descriptors/voice/mappers/setSessionConfig.mapper.js +127 -65
  133. package/build/shared/charts/descriptors/voice/mappers/transfer.mapper.js +41 -11
  134. package/build/shared/charts/descriptors/voice/nodes/bargeIn.js +14 -20
  135. package/build/shared/charts/descriptors/voice/nodes/continuousAsr.js +7 -7
  136. package/build/shared/charts/descriptors/voice/nodes/dtmf.js +10 -18
  137. package/build/shared/charts/descriptors/voice/nodes/hangup.js +2 -2
  138. package/build/shared/charts/descriptors/voice/nodes/muteSpeechInput.js +52 -0
  139. package/build/shared/charts/descriptors/voice/nodes/noUserInput.js +15 -14
  140. package/build/shared/charts/descriptors/voice/nodes/play.js +12 -8
  141. package/build/shared/charts/descriptors/voice/nodes/sendMetadata.js +51 -0
  142. package/build/shared/charts/descriptors/voice/nodes/sessionSpeechParameters.js +84 -20
  143. package/build/shared/charts/descriptors/voice/nodes/transfer.js +10 -10
  144. package/build/shared/charts/descriptors/voicegateway/nodes/agentAssist.js +10 -10
  145. package/build/shared/charts/descriptors/voicegateway/nodes/callRecording.js +64 -62
  146. package/build/shared/charts/descriptors/voicegateway/nodes/handover.js +14 -14
  147. package/build/shared/charts/descriptors/voicegateway/nodes/hangup.js +2 -2
  148. package/build/shared/charts/descriptors/voicegateway/nodes/playURL.js +18 -15
  149. package/build/shared/charts/descriptors/voicegateway/nodes/sendMessage.js +41 -41
  150. package/build/shared/charts/descriptors/voicegateway/nodes/sendMetaData.js +15 -19
  151. package/build/shared/charts/descriptors/voicegateway/nodes/setSessionParams.js +3 -3
  152. package/build/shared/charts/descriptors/voicegateway/utils/paramUtils.js +117 -97
  153. package/build/shared/charts/descriptors/voicegateway2/index.js +5 -1
  154. package/build/shared/charts/descriptors/voicegateway2/nodes/dtmf.js +5 -5
  155. package/build/shared/charts/descriptors/voicegateway2/nodes/hangup.js +3 -4
  156. package/build/shared/charts/descriptors/voicegateway2/nodes/muteSpeechInput.js +49 -0
  157. package/build/shared/charts/descriptors/voicegateway2/nodes/play.js +36 -18
  158. package/build/shared/charts/descriptors/voicegateway2/nodes/record.js +108 -0
  159. package/build/shared/charts/descriptors/voicegateway2/nodes/refer.js +9 -10
  160. package/build/shared/charts/descriptors/voicegateway2/nodes/sendMetadata.js +14 -29
  161. package/build/shared/charts/descriptors/voicegateway2/nodes/setSessionConfig.js +276 -74
  162. package/build/shared/charts/descriptors/voicegateway2/nodes/transfer.js +139 -27
  163. package/build/shared/charts/descriptors/voicegateway2/utils/helper.js +3 -3
  164. package/build/shared/charts/descriptors/voicegateway2/utils/strip-nulls.js +4 -0
  165. package/build/shared/charts/helpers/generativeAI/getRephraseWithAIFields.js +8 -8
  166. package/build/shared/constants.js +14 -1
  167. package/build/shared/errors/ErrorCode.js +1 -0
  168. package/build/shared/errors/TooManyRequestsError.js +59 -0
  169. package/build/shared/errors/baseError.js +6 -2
  170. package/build/shared/errors/codes.js +2 -1
  171. package/build/shared/errors/index.js +3 -1
  172. package/build/shared/helper/BaseContext.js +56 -3
  173. package/build/shared/helper/nlu/dicts/dicts.js +691 -0
  174. package/build/shared/helper/nlu/textCleaner.js +391 -0
  175. package/build/shared/interfaces/IApiKey.js +2 -7
  176. package/build/shared/interfaces/IOrganisation.js +2 -7
  177. package/build/shared/interfaces/IProfileSchema.js +1 -7
  178. package/build/shared/interfaces/agentAssist/ISendTileUpdateParams.js +3 -0
  179. package/build/shared/interfaces/agentAssist/ISendTileUpdateReferenceParams.js +3 -0
  180. package/build/shared/interfaces/agentAssist/index.js +3 -0
  181. package/build/shared/interfaces/ai.js +0 -16
  182. package/build/shared/interfaces/amqpInterface.js +7 -1
  183. package/build/shared/interfaces/generativeAI/IGenerativeAIModels.js +72 -0
  184. package/build/shared/interfaces/generativeAI/IGenerativeAIPrompts.js +3 -0
  185. package/build/shared/interfaces/generativeAI/IRunGenerativeAIPromptOptions.js +3 -0
  186. package/build/shared/interfaces/handover.js +14 -2
  187. package/build/shared/interfaces/knowledgesearch/search.js +3 -0
  188. package/build/shared/interfaces/messageAPI/ai.js +2 -1
  189. package/build/shared/interfaces/messageAPI/endpoints.js +91 -2
  190. package/build/shared/interfaces/messageAPI/handover.js +4 -1
  191. package/build/shared/interfaces/resources/IAgentAssistConfig.js +26 -20
  192. package/build/shared/interfaces/resources/IAuditEvent.js +8 -1
  193. package/build/shared/interfaces/resources/IChart.js +1 -10
  194. package/build/shared/interfaces/resources/IConnection.js +7 -1
  195. package/build/shared/interfaces/resources/IEndpoint.js +2 -14
  196. package/build/shared/interfaces/resources/IFlow.js +15 -10
  197. package/build/shared/interfaces/resources/IFunction.js +1 -7
  198. package/build/shared/interfaces/resources/IGenerateNodeOutput.js +3 -0
  199. package/build/shared/interfaces/resources/ILargeLanguageModel.js +54 -0
  200. package/build/shared/interfaces/resources/ILexicon.js +2 -7
  201. package/build/shared/interfaces/resources/INodeDescriptorSet.js +32 -29
  202. package/build/shared/interfaces/resources/IPackage.js +1 -7
  203. package/build/shared/interfaces/resources/IPlaybookRun.js +2 -1
  204. package/build/shared/interfaces/resources/IProject.js +1 -7
  205. package/build/shared/interfaces/resources/ISnapshot.js +2 -14
  206. package/build/shared/interfaces/resources/TNLUConnectorType.js +2 -1
  207. package/build/shared/interfaces/resources/TResourceType.js +16 -5
  208. package/build/shared/interfaces/resources/chart/IChartExecutable.js +1 -7
  209. package/build/shared/interfaces/resources/knowledgeStore/IKnowledgeChunk.js +32 -0
  210. package/build/shared/interfaces/resources/knowledgeStore/IKnowledgeSource.js +31 -0
  211. package/build/shared/interfaces/resources/knowledgeStore/IKnowledgeStore.js +26 -0
  212. package/build/shared/interfaces/resources/settings/IAgentSettings.js +4 -47
  213. package/build/shared/interfaces/resources/settings/IAudioPreviewSettings.js +36 -0
  214. package/build/shared/interfaces/resources/settings/IGenerativeAISettings.js +23 -90
  215. package/build/shared/interfaces/resources/settings/IGenerativeAIUseCase.js +3 -0
  216. package/build/shared/interfaces/resources/settings/ISharedSettings.js +2 -2
  217. package/build/shared/interfaces/resources/settings/index.js +4 -5
  218. package/build/shared/interfaces/restAPI/administration/user/v2.1/IApiKeyIndexItem_2_1.js +3 -0
  219. package/build/shared/interfaces/restAPI/administration/user/v2.1/IApiKey_2_1.js +3 -0
  220. package/build/shared/interfaces/restAPI/administration/user/v2.1/ICreateApiKeyRest_2_1.js +3 -0
  221. package/build/shared/interfaces/restAPI/administration/user/v2.1/IIndexApiKeysMeRest_2_1.js +3 -0
  222. package/build/shared/interfaces/restAPI/administration/user/v2.1/index.js +3 -0
  223. package/build/shared/interfaces/restAPI/insights/reports/IGenerateReportRest_2_0.js +0 -2
  224. package/build/shared/interfaces/restAPI/resources/agentAssist/v2.0/IReadAgentAssistSessionDataRest_2_0.js +3 -0
  225. package/build/shared/interfaces/restAPI/resources/chart/v2.0/IGenerateNodeOutputRest_2_0.js +3 -0
  226. package/build/shared/interfaces/restAPI/resources/knowledgeSearchIndex/v2.0/ICreateKnowledgeSearchIndexRest_2_0.js +3 -0
  227. package/build/shared/interfaces/restAPI/resources/knowledgeSearchIndex/v2.0/IDeleteKnowledgeSearchIndexRest_2_0.js +3 -0
  228. package/build/shared/interfaces/restAPI/resources/knowledgeSearchIndex/v2.0/index.js +3 -0
  229. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/ICreateKnowledgeStoreRest_2_0.js +3 -0
  230. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IDeleteKnowledgeStoreRest_2_0.js +3 -0
  231. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IIndexKnowledgeStoresRest_2_0.js +3 -0
  232. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IIngestKnowledgeStoreRest_2_0.js +3 -0
  233. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IKnowledgeStore_2_0.js +3 -0
  234. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IReadKnowledgeStoreRest_2_0.js +3 -0
  235. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IUpdateKnowledgeStoreRest_2_0.js +3 -0
  236. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/index.js +3 -0
  237. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/ICreateKnowledgeSourceRest_2_0.js +3 -0
  238. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IDeleteKnowledgeSourceRest_2_0.js +3 -0
  239. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IIndexKnowledgeSourcesRest_2_0.js +3 -0
  240. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IKnowledgeSource_2_0.js +3 -0
  241. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IReadKnowledgeSourceRest_2_0.js +3 -0
  242. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IUpdateKnowledgeSourceRest_2_0.js +3 -0
  243. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IUploadKnowledgeSourceFileRest_2_0.js +4 -0
  244. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/ICreateKnowledgeChunkRest_2_0.js +3 -0
  245. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IDeleteKnowledgeChunkRest_2_0.js +3 -0
  246. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IIndexKnowledgeChunksRest_2_0.js +3 -0
  247. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IKnowledgeChunk_2_0.js +3 -0
  248. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IReadKnowledgeChunkRest_2_0.js +3 -0
  249. package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IUpdateKnowledgeChunkRest_2_0.js +3 -0
  250. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ICloneLargeLanguageModelRest_2_0.js +4 -0
  251. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ICreateLargeLanguageModelRest_2_0.js +3 -0
  252. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/IDeleteLargeLanguageModelRest_2_0.js +3 -0
  253. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/IIndexLargeLanguageModelsRest_2_0.js +3 -0
  254. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ILargeLanguageModelIndexItem_2_0.js +3 -0
  255. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ILargeLanguageModel_2_0.js +3 -0
  256. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/IReadLargeLanguageModelRest_2_0.js +3 -0
  257. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ITestLargeLanguageModelRest_2_0.js +3 -0
  258. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/IUpdateLargeLanguageModelRest_2_0.js +3 -0
  259. package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/index.js +3 -0
  260. package/build/shared/interfaces/restAPI/resources/nluconnector/v2.0/TNLUConnectorType_2_0.js +3 -1
  261. package/build/shared/interfaces/restAPI/resources/project/v2.0/settings/ISetupCognigyGenerativeAIRest_2_0.js +4 -0
  262. package/build/shared/interfaces/security/IACL.js +1 -7
  263. package/build/shared/interfaces/security/IIdentityProvider.js +1 -7
  264. package/build/shared/interfaces/security/IPermission.js +6 -2
  265. package/build/shared/interfaces/security/IRole.js +3 -1
  266. package/build/shared/interfaces/security/index.js +1 -2
  267. package/build/shared/interfaces/taskmanager/ITask.js +1 -0
  268. package/build/shared/interfaces/trainer/ITrainerRecord.js +1 -1
  269. package/build/shared/interfaces/user.js +1 -9
  270. package/package.json +1 -1
  271. package/types/index.d.ts +10043 -8554
  272. package/build/shared/charts/descriptors/service/completeText.js +0 -316
  273. package/build/shared/charts/descriptors/voice/utils/constants.js +0 -8
  274. package/build/shared/charts/descriptors/voicegateway2/utils/constants.js +0 -7
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecordMapper = void 0;
4
+ /* Custom modules */
5
+ const logger_1 = require("../../../../helper/logger");
6
+ const base_mapper_1 = require("./base.mapper");
7
+ class RecordMapper extends base_mapper_1.BaseMapper {
8
+ handleInput(input, api, isGenericNode = false) {
9
+ try {
10
+ switch (this.endpointType) {
11
+ case "audioCodes": {
12
+ const output = this.handleAudioCodesInput(input, api);
13
+ return this.buildPayload(output);
14
+ }
15
+ case "voiceGateway2":
16
+ default: {
17
+ const output = this.handleVGInput(input, api);
18
+ return this.buildPayload(output);
19
+ }
20
+ }
21
+ }
22
+ catch (err) {
23
+ const errorMessage = `Error in RecordMapper handleInput: ${err.message}`;
24
+ api.log("error", errorMessage);
25
+ throw Error(errorMessage);
26
+ }
27
+ }
28
+ handleVGInput(input, api) {
29
+ const { action, recordingId, siprecServerURL } = input;
30
+ /* base record options */
31
+ const recordOptions = {
32
+ action,
33
+ };
34
+ const storedActivity = api.getSystemContext("vgRecordAction");
35
+ if (recordingId) {
36
+ recordOptions.recordingID = recordingId;
37
+ }
38
+ switch (action) {
39
+ case "startCallRecording":
40
+ if (process.env.TMP_ENDPOINT_CALL_RECORDING_ENABLE_GLOBALLY !== "true") {
41
+ if (storedActivity === "startCallRecording") {
42
+ const errorText = "Cannot start recording when recording is already started";
43
+ logger_1.default.error({}, errorText, {}, true);
44
+ throw new Error(errorText);
45
+ }
46
+ else if (storedActivity === "resumeCallRecording") {
47
+ const errorText = "Cannot start recording when recording is already resumed";
48
+ logger_1.default.error({}, errorText, {}, true);
49
+ throw new Error(errorText);
50
+ }
51
+ recordOptions.siprecServerURL = siprecServerURL;
52
+ }
53
+ break;
54
+ case "pauseCallRecording":
55
+ if (storedActivity !== "startCallRecording" && process.env.TMP_ENDPOINT_CALL_RECORDING_ENABLE_GLOBALLY !== "true") {
56
+ const errorText = "Cannot pause recording when recording is not started";
57
+ logger_1.default.error({}, errorText, {}, true);
58
+ throw new Error(errorText);
59
+ }
60
+ break;
61
+ case "stopCallRecording":
62
+ if (storedActivity !== "startCallRecording" && storedActivity !== "resumeCallRecording" && process.env.TMP_ENDPOINT_CALL_RECORDING_ENABLE_GLOBALLY !== "true") {
63
+ const errorText = "Cannot stop recording when recording is not started or paused";
64
+ logger_1.default.error({}, errorText, {}, true);
65
+ throw new Error(errorText);
66
+ }
67
+ break;
68
+ case "resumeCallRecording":
69
+ if (storedActivity === "resumeCallRecording") {
70
+ const warnText = "Cannot resume recording when recording is already resumed";
71
+ logger_1.default.warn({}, warnText, {}, true);
72
+ }
73
+ else if (storedActivity !== "pauseCallRecording") {
74
+ const errorText = "Cannot resume recording when recording is not paused";
75
+ logger_1.default.error({}, errorText, {}, true);
76
+ throw new Error(errorText);
77
+ }
78
+ break;
79
+ default:
80
+ throw new Error(`Call Recording - invalid action: ${action}`);
81
+ }
82
+ /* Store the action in the context to send proper warnings */
83
+ api.setSystemContext("vgRecordAction", action);
84
+ const output = {
85
+ config: {
86
+ record: recordOptions
87
+ }
88
+ };
89
+ return output;
90
+ }
91
+ handleAudioCodesInput(input, api) {
92
+ return {};
93
+ }
94
+ }
95
+ exports.RecordMapper = RecordMapper;
96
+ //# sourceMappingURL=record.mapper.js.map
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendMetadata = void 0;
4
+ const helper_1 = require("../../voicegateway2/utils/helper");
5
+ exports.sendMetadata = {
6
+ handleInput(endpointType, metadata) {
7
+ if (!(0, helper_1.isValidJSON)(metadata)) {
8
+ throw new Error("Invalid JSON in Metadata Field");
9
+ }
10
+ if (JSON.stringify(metadata) === '{}') {
11
+ throw new Error("Nothing is set in Metadata Field");
12
+ }
13
+ switch (endpointType) {
14
+ case "audioCodes":
15
+ return this.handleAudioCodesInput(metadata);
16
+ case "voiceGateway2":
17
+ default:
18
+ return this.handleVGInput(metadata);
19
+ }
20
+ },
21
+ handleVGInput(metadata) {
22
+ const voiceGateway2Payload = {
23
+ "sip:request": {
24
+ headers: {
25
+ "Content-Type": "application/json",
26
+ },
27
+ body: "",
28
+ method: "INFO",
29
+ actionHook: "/info",
30
+ },
31
+ };
32
+ voiceGateway2Payload["sip:request"].body = JSON.stringify(metadata);
33
+ return {
34
+ _voiceGateway2: {
35
+ json: Object.assign({}, voiceGateway2Payload)
36
+ }
37
+ };
38
+ },
39
+ handleAudioCodesInput(metadata) {
40
+ return {
41
+ _voiceGateway: {
42
+ json: {
43
+ activities: [{
44
+ type: "event",
45
+ name: "sendMetaData",
46
+ value: metadata
47
+ }]
48
+ }
49
+ }
50
+ };
51
+ }
52
+ };
53
+ //# sourceMappingURL=sendMetadata.mapper.js.map
@@ -3,11 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setSessionConfig = exports.vg2PayloadToActivityParams = exports.voiceConfigParamsToVoiceSettings = void 0;
4
4
  const strip_nulls_1 = require("../../voicegateway2/utils/strip-nulls");
5
5
  const helper_1 = require("../utils/helper");
6
- const constants_1 = require("../utils/constants");
7
6
  function voiceConfigParamsToVoiceSettings(config, api) {
8
- var _a, _b, _c;
7
+ var _a, _b, _c, _d;
9
8
  let voiceSettings = {};
10
- if (config.bargeInOnSpeech || config.bargeInOnDtmf) {
9
+ if (typeof config.bargeInOnDtmf === 'boolean' || typeof config.bargeInOnSpeech === 'boolean') {
11
10
  voiceSettings.bargeIn = {
12
11
  bargeInEnable: false,
13
12
  bargeInOnDtmf: (_a = config.bargeInOnDtmf) !== null && _a !== void 0 ? _a : false,
@@ -21,25 +20,65 @@ function voiceConfigParamsToVoiceSettings(config, api) {
21
20
  mode: config.sttVadMode,
22
21
  voiceMs: config.sttVadVoiceMs,
23
22
  };
23
+ let hints = [];
24
+ if (config.sttHintsDynamicHints) {
25
+ if (Array.isArray(config.sttHintsDynamicHints) && ((_c = config.sttHintsDynamicHints) === null || _c === void 0 ? void 0 : _c.length)) {
26
+ hints = [...config.sttHintsDynamicHints];
27
+ }
28
+ else {
29
+ throw new Error(`Error adding dynamic hints. Context or input is not an array`);
30
+ }
31
+ }
32
+ if (config.sttHints && config.sttHints.length) {
33
+ hints = [...hints, ...config.sttHints];
34
+ }
24
35
  // stt (recognizer)
25
36
  voiceSettings.stt = {
26
37
  sttVendor: config.sttVendor,
27
38
  sttLanguage: config.sttLanguage,
28
- sttHints: config.sttHints,
39
+ sttHints: hints,
29
40
  sttDisablePunctuation: config.sttDisablePunctuation !== undefined &&
30
41
  config.sttDisablePunctuation !== null
31
42
  ? !config.sttDisablePunctuation
32
- : undefined,
43
+ : undefined
33
44
  };
34
45
  // tts (synthesizer)
35
46
  voiceSettings.tts = {
36
47
  ttsVendor: config.ttsVendor,
37
48
  ttsLanguage: config.ttsLanguage,
38
49
  ttsVoice: config.ttsVoice,
39
- azureServiceEndpoint: config.azureTtsDeploymentId
50
+ azureServiceEndpoint: config.azureTtsDeploymentId,
51
+ ttsDisableCache: config.ttsDisableCache,
40
52
  };
41
- if (config.ttsVendor === 'microsoft' && config.azureTtsDeploymentId)
42
- voiceSettings.tts.azureServiceEndpoint = config.azureTtsDeploymentId;
53
+ if (config.ttsVendor === "microsoft") {
54
+ if (config.azureTtsDeploymentId) {
55
+ voiceSettings.tts.azureServiceEndpoint = config.azureTtsDeploymentId;
56
+ }
57
+ }
58
+ if (config.sttVendor === "microsoft") {
59
+ if (config.recognizeLanguagesAzure) {
60
+ voiceSettings.stt.altLanguages = [];
61
+ const languages = [config.sttAzureLang1, config.sttAzureLang2, config.sttAzureLang3];
62
+ languages.map(language => {
63
+ var _a, _b;
64
+ if (language && (language === null || language === void 0 ? void 0 : language.length) > 0) {
65
+ (_b = (_a = voiceSettings.stt) === null || _a === void 0 ? void 0 : _a.altLanguages) === null || _b === void 0 ? void 0 : _b.push(language);
66
+ }
67
+ });
68
+ }
69
+ }
70
+ if (config.sttVendor === "google") {
71
+ if (config.recognizeLanguagesGoogle) {
72
+ voiceSettings.stt.altLanguages = [];
73
+ const languages = [config.sttGoogleLang1, config.sttGoogleLang2, config.sttGoogleLang3];
74
+ languages.map(language => {
75
+ var _a, _b;
76
+ if (language && (language === null || language === void 0 ? void 0 : language.length) > 0) {
77
+ (_b = (_a = voiceSettings.stt) === null || _a === void 0 ? void 0 : _a.altLanguages) === null || _b === void 0 ? void 0 : _b.push(language);
78
+ }
79
+ });
80
+ }
81
+ }
43
82
  // userNoInput
44
83
  voiceSettings.userNoInput = {
45
84
  userNoInputMode: config.userNoInputMode,
@@ -53,7 +92,7 @@ function voiceConfigParamsToVoiceSettings(config, api) {
53
92
  dtmfInterDigitTimeout: config.dtmfInterDigitTimeout,
54
93
  dtmfMaxDigits: config.dtmfMaxDigits,
55
94
  dtmfMinDigits: config.dtmfMinDigits,
56
- dtmfSubmitDigit: (_c = config.dtmfSubmitDigit) === null || _c === void 0 ? void 0 : _c.trim(),
95
+ dtmfSubmitDigit: (_d = config.dtmfSubmitDigit) === null || _d === void 0 ? void 0 : _d.trim(),
57
96
  };
58
97
  if (config === null || config === void 0 ? void 0 : config.dtmfEnable) {
59
98
  if (voiceSettings.dtmf.dtmfSubmitDigit &&
@@ -118,34 +157,32 @@ function vg2PayloadToActivityParams(payload) {
118
157
  exports.vg2PayloadToActivityParams = vg2PayloadToActivityParams;
119
158
  exports.setSessionConfig = {
120
159
  handleInput(endpointType, voiceSettings) {
121
- if (endpointType === constants_1.ENDPOINTS.VOICE_GATEWAY) {
122
- return this.handleVGInput(voiceSettings);
123
- }
124
- else if (endpointType === constants_1.ENDPOINTS.AUDIO_CODES) {
125
- return this.handleAudioCodesInput(voiceSettings);
126
- }
127
- else {
128
- return this.handleVGInput(voiceSettings);
160
+ switch (endpointType) {
161
+ case "audioCodes":
162
+ return this.handleAudioCodesInput(voiceSettings);
163
+ case "voiceGateway2":
164
+ default:
165
+ return this.handleVGInput(voiceSettings);
129
166
  }
130
167
  },
131
- handleVGInput(voiceSettings) {
132
- var _a;
168
+ handleVGInput(voiceSettings, sessionParams, api) {
133
169
  const { bargeIn, continuousAsr, stt, tts, userNoInput, dtmf, vad, azureConfig, } = voiceSettings;
134
170
  const user = {};
135
171
  const synthesizer = {};
136
172
  const recognizer = {};
137
- const barge = {};
138
- let dtmfParam;
139
173
  //verify if there are STT Configs to set
140
174
  recognizer.language = (stt === null || stt === void 0 ? void 0 : stt.sttLanguage) || undefined;
141
175
  recognizer.hints = (stt === null || stt === void 0 ? void 0 : stt.sttHints) ? stt.sttHints : undefined;
142
176
  if (recognizer.hints && recognizer.hints !== undefined) {
143
177
  recognizer.hintsBoost = (stt === null || stt === void 0 ? void 0 : stt.sttHintsBoost) || 20;
144
178
  }
145
- recognizer.vendor = (stt === null || stt === void 0 ? void 0 : stt.sttVendor) ? stt.sttVendor : "default";
179
+ recognizer.vendor = (stt === null || stt === void 0 ? void 0 : stt.sttVendor) ? stt.sttVendor : undefined;
146
180
  recognizer.punctuation = stt === null || stt === void 0 ? void 0 : stt.sttDisablePunctuation;
147
181
  recognizer.azureSttEndpointId = azureConfig === null || azureConfig === void 0 ? void 0 : azureConfig.azureSttContextId;
148
182
  recognizer.audioLogging = azureConfig === null || azureConfig === void 0 ? void 0 : azureConfig.azureEnableAudioLogging;
183
+ if (recognizer.vendor && (recognizer.vendor === 'microsoft' || recognizer.vendor === 'google')) {
184
+ recognizer.altLanguages = (stt === null || stt === void 0 ? void 0 : stt.altLanguages) || [];
185
+ }
149
186
  if (vad) {
150
187
  recognizer.vad = { enable: vad.enable };
151
188
  if (vad.enable) {
@@ -162,15 +199,21 @@ exports.setSessionConfig = {
162
199
  }
163
200
  //verify if there are No User Input Configs to set
164
201
  if (userNoInput) {
165
- user.noInputMode = userNoInput.userNoInputMode;
166
- if (userNoInput.userNoInputMode === "speech" &&
167
- userNoInput.userNoInputSpeech)
168
- user.noInputSpeech = userNoInput.userNoInputSpeech;
169
- if (userNoInput.userNoInputMode === "play" && userNoInput.userNoInputUrl)
170
- user.noInputUrl = userNoInput.userNoInputUrl;
171
- user.noInputRetries = userNoInput.userNoInputRetries || 0;
172
- user.noInputTimeout = userNoInput.userNoInputTimeout
173
- ? userNoInput.userNoInputTimeout / 1000
202
+ const { userNoInputRetries, userNoInputMode, userNoInputSpeech, userNoInputTimeout, userNoInputUrl } = userNoInput || {};
203
+ user.noInputMode = userNoInputMode;
204
+ if (userNoInputMode === "speech" && userNoInputSpeech)
205
+ user.noInputSpeech = userNoInputSpeech;
206
+ if (userNoInputMode === "play" && userNoInputUrl)
207
+ user.noInputUrl = userNoInputUrl;
208
+ /* User No Input Retries. min: 0, max: 999*/
209
+ if (userNoInputRetries < 0 || userNoInputRetries > 999) {
210
+ user.noInputRetries = 1;
211
+ }
212
+ else {
213
+ user.noInputRetries = userNoInputRetries !== null && userNoInputRetries !== void 0 ? userNoInputRetries : 1;
214
+ }
215
+ user.noInputTimeout = userNoInputTimeout
216
+ ? userNoInputTimeout / 1000
174
217
  : 10;
175
218
  }
176
219
  // verify if there are Continuous ASR Configs to set
@@ -181,58 +224,69 @@ exports.setSessionConfig = {
181
224
  : undefined;
182
225
  }
183
226
  // verify if there are Barge In Configs to set
227
+ let barge = {};
184
228
  if (bargeIn) {
185
- barge.enable = bargeIn.bargeInEnable;
186
- /* Barge in minimum words. min: 1, max: 5, default: 1 */
187
- bargeIn.bargeInMinimunWords >= 1 && bargeIn.bargeInMinimunWords <= 5
188
- ? (barge.minBargeinWordCount = bargeIn.bargeInMinimunWords)
189
- : (barge.minBargeinWordCount = 1);
190
- barge.input = [];
191
- barge.actionHook = "voice";
192
- barge.dtmfBargein = bargeIn.bargeInOnDtmf;
193
- if (barge.dtmfBargein) {
194
- barge.enable = true;
229
+ const { bargeInOnSpeech, bargeInOnDtmf, bargeInMinimunWords = 1 } = bargeIn;
230
+ barge = {
231
+ enable: bargeInOnSpeech || bargeInOnDtmf,
232
+ actionHook: "voice",
233
+ dtmfBargein: bargeInOnDtmf,
234
+ input: [],
235
+ };
236
+ if (bargeInOnDtmf) {
195
237
  barge.input.push("digits");
196
238
  }
197
- if (bargeIn.bargeInOnSpeech) {
198
- barge.enable = true;
239
+ if (bargeInOnSpeech) {
240
+ /* Barge in minimum words. min: 1, max: 5, default: 1 */
241
+ if (bargeInMinimunWords >= 1 && bargeInMinimunWords <= 5) {
242
+ barge.minBargeinWordCount = bargeInMinimunWords;
243
+ }
199
244
  barge.input.push("speech");
200
245
  }
201
246
  }
202
- // verify if there are DTMF Configs to set
247
+ let enableDTMF;
248
+ // verify if there are DTMF Configs to set
203
249
  if (dtmf) {
204
- dtmfParam = dtmf.dtmfEnable;
205
- if (dtmf.dtmfEnable) {
206
- barge.enable = (_a = barge.enable) !== null && _a !== void 0 ? _a : false;
207
- barge.interDigitTimeout =
208
- dtmf.dtmfInterDigitTimeout && dtmf.dtmfInterDigitTimeout >= 0
209
- ? dtmf.dtmfInterDigitTimeout === 0
210
- ? 0
211
- : dtmf.dtmfInterDigitTimeout / 1000
212
- : undefined;
250
+ const { dtmfEnable, dtmfInterDigitTimeout = 0, dtmfMaxDigits, dtmfMinDigits, dtmfSubmitDigit } = dtmf;
251
+ enableDTMF = dtmfEnable;
252
+ if (dtmfEnable) {
253
+ barge = Object.assign(Object.assign({}, barge), { maxDigits: 1, minDigits: dtmfMinDigits || 1, finishOnKey: dtmfSubmitDigit });
254
+ if (typeof dtmfInterDigitTimeout === "number") {
255
+ if (dtmfInterDigitTimeout > 0) {
256
+ barge.interDigitTimeout = dtmfInterDigitTimeout / 1000;
257
+ }
258
+ }
213
259
  /* Max digits. min: 1, max: - default: 1 */
214
- barge.maxDigits =
215
- dtmf.dtmfMaxDigits >= 1 ? (barge.maxDigits = dtmf.dtmfMaxDigits) : 1;
216
- barge.minDigits = dtmf.dtmfMinDigits || 1;
217
- barge.finishOnKey = dtmf.dtmfSubmitDigit;
260
+ if (dtmfMaxDigits >= 1) {
261
+ barge.maxDigits = dtmf.dtmfMaxDigits;
262
+ }
218
263
  }
219
264
  }
220
265
  // Check if there are configs for synthesizer, recognizer and bargeIn
221
- const voiceConfig = {
266
+ let voiceConfig = {
222
267
  synthesizer: synthesizer || undefined,
223
268
  recognizer: recognizer || undefined,
224
269
  bargeIn: barge || undefined,
225
270
  };
226
- (0, strip_nulls_1.stripNulls)(voiceConfig);
227
- if (voiceConfig.synthesizer && !voiceConfig.synthesizer.azureServiceEndpoint)
271
+ if (voiceConfig.synthesizer && !voiceConfig.synthesizer.azureServiceEndpoint) {
228
272
  voiceConfig.synthesizer.azureServiceEndpoint = "";
229
- if (voiceConfig.recognizer && !voiceConfig.recognizer.azureSttEndpointId)
273
+ }
274
+ if (voiceConfig.recognizer && !voiceConfig.recognizer.azureSttEndpointId) {
230
275
  voiceConfig.recognizer.azureSttEndpointId = "";
276
+ }
277
+ (0, strip_nulls_1.stripNulls)(voiceConfig);
278
+ /* As the last step we check the session params JSON for valid properties */
279
+ if (sessionParams) {
280
+ voiceConfig.sessionParams = sessionParams;
281
+ }
231
282
  // Check if there are configs for No User Input and DTMF
232
283
  const cognigyConfig = {
233
- user: user ? user : undefined,
234
- dtmf: dtmfParam,
284
+ user: user || undefined,
285
+ dtmf: enableDTMF,
235
286
  };
287
+ if (tts && typeof tts.ttsDisableCache === "boolean") {
288
+ cognigyConfig.disableTtsCache = tts.ttsDisableCache;
289
+ }
236
290
  (0, strip_nulls_1.stripNulls)(cognigyConfig);
237
291
  const prePayload = {
238
292
  cognigyConfig: Object.keys(cognigyConfig).length
@@ -242,9 +296,15 @@ exports.setSessionConfig = {
242
296
  ? voiceConfig
243
297
  : undefined,
244
298
  };
299
+ if (prePayload.cognigyConfig === undefined) {
300
+ delete prePayload.cognigyConfig;
301
+ }
302
+ if (prePayload.voiceGateway2Config === undefined) {
303
+ delete prePayload.voiceGateway2Config;
304
+ }
245
305
  const payload = {
246
306
  _voiceGateway2: {
247
- json: (0, strip_nulls_1.stripNulls)(prePayload),
307
+ json: Object.assign({}, prePayload),
248
308
  },
249
309
  };
250
310
  return payload;
@@ -286,7 +346,9 @@ exports.setSessionConfig = {
286
346
  if (bargeIn) {
287
347
  sessionParams.bargeIn = bargeIn.bargeInOnSpeech;
288
348
  sessionParams.bargeInOnDTMF = bargeIn.bargeInOnDtmf;
289
- sessionParams.bargeInMinWordCount = bargeIn.bargeInMinimunWords;
349
+ if (bargeIn.bargeInMinimunWords >= 1 && bargeIn.bargeInMinimunWords <= 5) {
350
+ sessionParams.bargeInMinWordCount = bargeIn.bargeInMinimunWords || 1;
351
+ }
290
352
  if (sessionParams.bargeInOnDTMF)
291
353
  sessionParams.sendDTMF = true;
292
354
  }
@@ -4,14 +4,13 @@ exports.prepareTransferParams = exports.transfer = void 0;
4
4
  /* Node modules */
5
5
  const path_1 = require("path");
6
6
  /* Custom modules */
7
- const constants_1 = require("../utils/constants");
8
7
  const helper_1 = require("../../../descriptors/voicegateway2/utils/helper");
9
8
  const helper_2 = require("../utils/helper");
10
9
  exports.transfer = {
11
- handleInput(endpointType, params, isGenericNode) {
10
+ handleInput(endpointType, params, isGenericNode, recognitionChannel, sttVendor, sttLanguage) {
12
11
  try {
13
12
  switch (endpointType) {
14
- case constants_1.ENDPOINTS.AUDIO_CODES:
13
+ case "audioCodes":
15
14
  if (isGenericNode && params.transferSipHeaders) {
16
15
  let headers = [];
17
16
  for (const [key, value] of Object.entries(params.transferSipHeaders)) {
@@ -24,17 +23,17 @@ exports.transfer = {
24
23
  params.transferSipHeaders = headers;
25
24
  }
26
25
  return this.handleAudioCodesInput((0, exports.prepareTransferParams)(params));
27
- case constants_1.ENDPOINTS.VOICE_GATEWAY:
26
+ case "voiceGateway2":
28
27
  default:
29
- return this.handleVGInput((0, exports.prepareTransferParams)(params));
28
+ return this.handleVGInput((0, exports.prepareTransferParams)(params), recognitionChannel, sttVendor, sttLanguage);
30
29
  }
31
30
  }
32
31
  catch (error) {
33
32
  throw Error(error.message);
34
33
  }
35
34
  },
36
- handleVGInput(transferParam) {
37
- const { transferType, transferTarget, transferReason, useTransferSipHeaders, transferSipHeaders, dialMusic, dialTranscriptionWebhook, dialCallerId } = transferParam;
35
+ handleVGInput(transferParam, recognitionChannel, sttVendor, sttLanguage) {
36
+ const { transferType, transferTarget, transferReason, useTransferSipHeaders, transferSipHeaders, dialMusic, dialTranscriptionWebhook, dialCallerId, amdEnabled, amdRedirectOnMachineDetected, amdRedirectText, } = transferParam;
38
37
  const payload = {
39
38
  _voiceGateway2: {
40
39
  json: {}
@@ -53,6 +52,16 @@ exports.transfer = {
53
52
  headers,
54
53
  target: [],
55
54
  };
55
+ if (amdEnabled) {
56
+ dialVerb.amd = {
57
+ actionHook: "amd"
58
+ };
59
+ dialVerb.amdConfig = {
60
+ amdEnabled,
61
+ amdRedirectOnMachineDetected,
62
+ amdRedirectText,
63
+ };
64
+ }
56
65
  const phoneTarget = {
57
66
  type: "phone",
58
67
  number: (0, helper_1.cleanTarget)(transferTarget, false),
@@ -67,21 +76,42 @@ exports.transfer = {
67
76
  if (transferTarget === null || transferTarget === void 0 ? void 0 : transferTarget.includes("@")) {
68
77
  dialVerb.target = [sipTarget];
69
78
  }
79
+ const transcribeVerb = {};
80
+ const recognizer = {};
70
81
  if (dialTranscriptionWebhook === null || dialTranscriptionWebhook === void 0 ? void 0 : dialTranscriptionWebhook.length) {
71
82
  if (!(0, helper_2.isValidUrl)(dialTranscriptionWebhook)) {
72
83
  throw new Error(`Transcription webhook URL is invalid ${dialTranscriptionWebhook}`);
73
84
  }
74
- const transcribeVerb = {
75
- transcriptionHook: dialTranscriptionWebhook,
76
- };
85
+ transcribeVerb.transcriptionHook = dialTranscriptionWebhook;
86
+ switch (recognitionChannel) {
87
+ case 0:
88
+ recognizer.separateRecognitionPerChannel = true;
89
+ break;
90
+ case 1:
91
+ recognizer.separateRecognitionPerChannel = false;
92
+ break;
93
+ case 2:
94
+ recognizer.separateRecognitionPerChannel = true;
95
+ transcribeVerb.channel = 2;
96
+ break;
97
+ }
98
+ if (sttVendor) {
99
+ recognizer.vendor = sttVendor;
100
+ recognizer.language = sttLanguage;
101
+ }
102
+ }
103
+ if (Object.keys(transcribeVerb).length > 0) {
77
104
  dialVerb.transcribe = transcribeVerb;
105
+ if (Object.keys(recognizer).length > 0) {
106
+ transcribeVerb.recognizer = recognizer;
107
+ }
78
108
  }
79
109
  if (dialMusic === null || dialMusic === void 0 ? void 0 : dialMusic.length) {
80
110
  if (!(0, helper_2.isValidUrl)(dialMusic)) {
81
111
  throw new Error(`Audio file URL is invalid ${dialMusic}`);
82
112
  }
83
113
  const extension = (0, path_1.extname)(dialMusic);
84
- if (extension !== (".mp3" || ".wav")) {
114
+ if ([".mp3", ".wav"].indexOf(extension) === -1) {
85
115
  throw new Error(`Audio file must be from type .mp3 or .wav. Extension was: ${extension}`);
86
116
  }
87
117
  dialVerb.dialMusic = dialMusic;
@@ -14,27 +14,27 @@ exports.BARGE_IN = (0, createNodeDescriptor_1.createNodeDescriptor)({
14
14
  appearance: {
15
15
  color: design_1.nodeColor,
16
16
  },
17
- summary: "Enables Barge In for the entire call session",
17
+ summary: "UI__NODE_EDITOR__BARGE_IN__SUMMARY",
18
18
  fields: [
19
19
  {
20
20
  key: "bargeInOnSpeech",
21
21
  type: "toggle",
22
- label: "Barge In On Speech",
23
- description: "Allows the user to interrupt bot output with speech",
22
+ label: "UI__NODE_EDITOR__BARGE_IN__FIELDS__BARGE_IN_ON_SPEECH__LABEL",
23
+ description: "UI__NODE_EDITOR__BARGE_IN__FIELDS__BARGE_IN_ON_SPEECH__DESCRIPTION",
24
24
  defaultValue: false,
25
25
  },
26
26
  {
27
27
  key: "bargeInOnDtmf",
28
28
  type: "toggle",
29
- label: "Barge In On DTMF",
30
- description: "Allows the user to interrupt bot output with DTMF. Enabling Barge in on DTMF will also enable DTMF capture.",
29
+ label: "UI__NODE_EDITOR__BARGE_IN__FIELDS__BARGE_IN_ON_DTMF__LABEL",
30
+ description: "UI__NODE_EDITOR__BARGE_IN__FIELDS__BARGE_IN_ON_DTMF__DESCRIPTION",
31
31
  defaultValue: false,
32
32
  },
33
33
  {
34
34
  key: "bargeInMinWordCount",
35
35
  type: "slider",
36
- label: "Barge In Minimum Words",
37
- description: "Defines the minimum number of words that the user must say for the Voice Gateway to consider it a barge in",
36
+ label: "UI__NODE_EDITOR__BARGE_IN__FIELDS__BARGE_IN_MIN_WORD_COUNT__LABEL",
37
+ description: "UI__NODE_EDITOR__BARGE_IN__FIELDS__BARGE_IN_MIN_WORD_COUNT__DESCRIPTION",
38
38
  defaultValue: 1,
39
39
  params: {
40
40
  min: 1,
@@ -45,8 +45,8 @@ exports.BARGE_IN = (0, createNodeDescriptor_1.createNodeDescriptor)({
45
45
  {
46
46
  key: "dtmfInterDigitTimeout",
47
47
  type: "number",
48
- label: "DTMF Inter Digit Timeout",
49
- description: "Defines the timeout in between collected DTMF digits",
48
+ label: "UI__NODE_EDITOR__BARGE_IN__FIELDS__DTMF_INTER_DIGIT_TIMEOUT__LABEL",
49
+ description: "UI__NODE_EDITOR__BARGE_IN__FIELDS__DTMF_INTER_DIGIT_TIMEOUT__DESCRIPTION",
50
50
  defaultValue: 2000,
51
51
  params: {
52
52
  min: 0,
@@ -55,8 +55,8 @@ exports.BARGE_IN = (0, createNodeDescriptor_1.createNodeDescriptor)({
55
55
  {
56
56
  key: "dtmfMaxDigits",
57
57
  type: "number",
58
- label: "DTMF Max Digits",
59
- description: "Defines the maximum number of digits which can be entered by the user, the digits are being submitted automatically once this limit is reached",
58
+ label: "UI__NODE_EDITOR__BARGE_IN__FIELDS__DTMF_MAX_DIGITS__LABEL",
59
+ description: "UI__NODE_EDITOR__BARGE_IN__FIELDS__DTMF_MAX_DIGITS__DESCRIPTION",
60
60
  defaultValue: 1,
61
61
  params: {
62
62
  min: 1,
@@ -65,15 +65,15 @@ exports.BARGE_IN = (0, createNodeDescriptor_1.createNodeDescriptor)({
65
65
  {
66
66
  key: "dtmfSubmitDigit",
67
67
  type: "cognigyText",
68
- label: "DTMF Submit Digit",
69
- description: "Defines the DTMF submit digit which will be used for submitting the previously entered digits.",
68
+ label: "UI__NODE_EDITOR__BARGE_IN__FIELDS__DTMF_SUBMIT_DIGIT__LABEL",
69
+ description: "UI__NODE_EDITOR__BARGE_IN__FIELDS__DTMF_SUBMIT_DIGIT__DESCRIPTION",
70
70
  defaultValue: "#",
71
71
  },
72
72
  ],
73
73
  sections: [
74
74
  {
75
75
  key: "paramsDtmf",
76
- label: "DTMF",
76
+ label: "UI__NODE_EDITOR__BARGE_IN__SECTIONS__PARAMS_DTMF__LABEL",
77
77
  defaultCollapsed: false,
78
78
  fields: ["dtmfInterDigitTimeout", "dtmfMaxDigits", "dtmfSubmitDigit"],
79
79
  condition: {
@@ -92,12 +92,6 @@ exports.BARGE_IN = (0, createNodeDescriptor_1.createNodeDescriptor)({
92
92
  const { api, input } = cognigy;
93
93
  const { endpointType } = input;
94
94
  try {
95
- if (config.bargeInOnDtmf) {
96
- config.dtmfEnable = true;
97
- }
98
- if (config.bargeInOnSpeech || config.bargeInOnDtmf) {
99
- config.bargeInEnable = true;
100
- }
101
95
  const payload = setSessionConfig_mapper_1.setSessionConfig.handleInput(endpointType, (0, setSessionConfig_mapper_2.voiceConfigParamsToVoiceSettings)(config, api));
102
96
  /* we need to store this for the DTMF Collect - Config node */
103
97
  api.setSystemContext("vgSettings", { bargeInOnDtmf: config.bargeInOnDtmf });