@cognigy/rest-api-client 0.14.0 → 0.16.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.
- package/CHANGELOG.md +11 -0
- package/build/GenericTusFn.js +64 -0
- package/build/RestAPIClient.js +7 -0
- package/build/apigroups/AdministrationAPIGroup_2_0.js +7 -2
- package/build/apigroups/AdministrationAPIGroup_2_1.js +13 -0
- package/build/apigroups/ResourcesAPIGroup_2_0.js +78 -13
- package/build/apigroups/TTusAPIOperation.js +3 -0
- package/build/apigroups/index.js +5 -1
- package/build/connector/AxiosAdapter.js +6 -5
- package/build/shared/api/eightByEight/eightByEightInterfaces.js +3 -0
- package/build/shared/charts/descriptors/agentAssist/constants/constants.js +7 -0
- package/build/shared/charts/descriptors/agentAssist/helpers/sentiment.helper.js +41 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/identityAssistTemplate.js +54 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/knowledgeAssistTemplate.js +187 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/nextActionWidgetTemplate.js +93 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/secureForms/stage0.js +81 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/secureForms/stage1.js +84 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/secureForms/stage2.js +97 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/secureForms/stageError.js +85 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/sentimentAnalysisTemplate.js +41 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/stylesPartial.js +15 -0
- package/build/shared/charts/descriptors/agentAssist/htmlTemplates/transcriptAssistTemplate.js +53 -0
- package/build/shared/charts/descriptors/agentAssist/identityAssist.js +135 -0
- package/build/shared/charts/descriptors/agentAssist/index.js +24 -0
- package/build/shared/charts/descriptors/agentAssist/knowledgeAssist.js +625 -0
- package/build/shared/charts/descriptors/agentAssist/nextActionAssist.js +77 -0
- package/build/shared/charts/descriptors/agentAssist/sentimentAssist.js +86 -0
- package/build/shared/charts/descriptors/agentAssist/setAdaptiveCardTile.js +74 -0
- package/build/shared/charts/descriptors/agentAssist/setAgentAssistGrid.js +105 -0
- package/build/shared/charts/descriptors/agentAssist/setHtmlTile.js +98 -0
- package/build/shared/charts/descriptors/agentAssist/setIframeTile.js +86 -0
- package/build/shared/charts/descriptors/agentAssist/setSecureFormsTile.js +171 -0
- package/build/shared/charts/descriptors/agentAssist/transcriptAssist.js +72 -0
- package/build/shared/charts/descriptors/allFields.js +6 -0
- package/build/shared/charts/descriptors/analytics/activateProfile.js +1 -1
- package/build/shared/charts/descriptors/analytics/blindMode.js +5 -5
- package/build/shared/charts/descriptors/analytics/completeGoal.js +2 -2
- package/build/shared/charts/descriptors/analytics/deactivateProfile.js +2 -2
- package/build/shared/charts/descriptors/analytics/deleteProfile.js +1 -1
- package/build/shared/charts/descriptors/analytics/mergeProfile.js +2 -2
- package/build/shared/charts/descriptors/analytics/overwriteAnalytics.js +34 -27
- package/build/shared/charts/descriptors/analytics/requestRating.js +5 -5
- package/build/shared/charts/descriptors/analytics/setRating.js +4 -4
- package/build/shared/charts/descriptors/analytics/updateProfile.js +3 -3
- package/build/shared/charts/descriptors/apps/getAppSessionPin.js +7 -14
- package/build/shared/charts/descriptors/apps/initAppSession.js +99 -87
- package/build/shared/charts/descriptors/apps/setAdaptiveCardAppState.js +101 -19
- package/build/shared/charts/descriptors/apps/setAppState.js +7 -7
- package/build/shared/charts/descriptors/apps/setHtmlAppState.js +141 -99
- package/build/shared/charts/descriptors/apps/utils/buildAppUrl.js +2 -6
- package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/TGenerativeAIConnectionFields.js +3 -0
- package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/alephAlphaProviderConnection.js +11 -0
- package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/anthropicProviderConnection.js +11 -0
- package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/azureOpenAIProviderConnection.js +4 -1
- package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/azureOpenAIProviderConnectionV2.js +11 -0
- package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/googleVertexAIProviderConnection.js +16 -0
- package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/index.js +18 -2
- package/build/shared/charts/descriptors/connectionNodes/generativeAIProviders/openAIProviderConnection.js +2 -2
- package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/amazonStorageProviderConnection.js +5 -5
- package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/azureBlobStorageProviderConnection.js +4 -4
- package/build/shared/charts/descriptors/connectionNodes/internalStorageProviders/googleCloudStorageProviderConnection.js +4 -4
- package/build/shared/charts/descriptors/connectionNodes/mongoDB/aggregate.js +13 -13
- package/build/shared/charts/descriptors/connectionNodes/mongoDB/find.js +18 -18
- package/build/shared/charts/descriptors/connectionNodes/mongoDB/findOne.js +17 -17
- package/build/shared/charts/descriptors/connectionNodes/mongoDB/insert.js +13 -13
- package/build/shared/charts/descriptors/connectionNodes/mongoDB/mongoDBConnection.js +2 -2
- package/build/shared/charts/descriptors/connectionNodes/mongoDB/remove.js +13 -13
- package/build/shared/charts/descriptors/connectionNodes/mongoDB/updateMany.js +15 -15
- package/build/shared/charts/descriptors/connectionNodes/mongoDB/updateOne.js +15 -15
- package/build/shared/charts/descriptors/connectionNodes/smtp/emailNotification.js +28 -28
- package/build/shared/charts/descriptors/connectionNodes/smtp/index.js +3 -1
- package/build/shared/charts/descriptors/connectionNodes/smtp/oAuth2Connection.js +18 -0
- package/build/shared/charts/descriptors/connectionNodes/smtp/sendEmail.js +102 -70
- package/build/shared/charts/descriptors/connectionNodes/smtp/serviceConnection.js +3 -3
- package/build/shared/charts/descriptors/connectionNodes/smtp/smtpConnection.js +6 -6
- package/build/shared/charts/descriptors/connectionNodes/speechProviders/awsSpeechProviderConnection.js +14 -0
- package/build/shared/charts/descriptors/connectionNodes/speechProviders/googleSpeechProviderConnection.js +16 -0
- package/build/shared/charts/descriptors/connectionNodes/speechProviders/index.js +23 -0
- package/build/shared/charts/descriptors/connectionNodes/speechProviders/microsoftSpeechProviderConnection.js +12 -0
- package/build/shared/charts/descriptors/connectionNodes/sql/runQuery.js +11 -11
- package/build/shared/charts/descriptors/connectionNodes/sql/runStoredProcedure.js +13 -13
- package/build/shared/charts/descriptors/connectionNodes/sql/runTransaction.js +11 -11
- package/build/shared/charts/descriptors/connectionNodes/sql/sqlConnection.js +6 -6
- package/build/shared/charts/descriptors/connectionNodes/translationProviders/deeplTranslationProviderConnection.js +15 -0
- package/build/shared/charts/descriptors/connectionNodes/translationProviders/googleTranslationProviderConnection.js +15 -0
- package/build/shared/charts/descriptors/connectionNodes/translationProviders/index.js +23 -0
- package/build/shared/charts/descriptors/connectionNodes/translationProviders/microsoftTranslationProviderConnection.js +21 -0
- package/build/shared/charts/descriptors/data/addToContext.js +7 -7
- package/build/shared/charts/descriptors/data/code.js +3 -3
- package/build/shared/charts/descriptors/data/copyDataToContext.js +1 -1
- package/build/shared/charts/descriptors/data/copySlotsToContext.js +9 -9
- package/build/shared/charts/descriptors/data/log.js +7 -7
- package/build/shared/charts/descriptors/data/removeFromContext.js +7 -7
- package/build/shared/charts/descriptors/data/resetContext.js +2 -2
- package/build/shared/charts/descriptors/index.js +47 -12
- package/build/shared/charts/descriptors/knowledgeSearch/constants/constants.js +6 -0
- package/build/shared/charts/descriptors/knowledgeSearch/index.js +10 -0
- package/build/shared/charts/descriptors/knowledgeSearch/knowledgeSearch.js +154 -0
- package/build/shared/charts/descriptors/knowledgeSearch/knowledgeSearchV2.js +151 -0
- package/build/shared/charts/descriptors/knowledgeSearch/searchExtractOutput.js +985 -0
- package/build/shared/charts/descriptors/liveAgent/assistInfo.js +25 -25
- package/build/shared/charts/descriptors/logic/disableSlotFillers.js +4 -4
- package/build/shared/charts/descriptors/logic/enableSlotFillers.js +3 -3
- package/build/shared/charts/descriptors/logic/executeFlow.js +9 -9
- package/build/shared/charts/descriptors/logic/goTo.js +20 -18
- package/build/shared/charts/descriptors/logic/if/if.js +3 -3
- package/build/shared/charts/descriptors/logic/interval/interval.js +3 -3
- package/build/shared/charts/descriptors/logic/once/once.js +1 -1
- package/build/shared/charts/descriptors/logic/resetState.js +1 -1
- package/build/shared/charts/descriptors/logic/setState.js +4 -4
- package/build/shared/charts/descriptors/logic/setTranslation.js +15 -15
- package/build/shared/charts/descriptors/logic/sleep.js +2 -2
- package/build/shared/charts/descriptors/logic/stop.js +1 -1
- package/build/shared/charts/descriptors/logic/switch/case.js +1 -1
- package/build/shared/charts/descriptors/logic/switch/default.js +1 -1
- package/build/shared/charts/descriptors/logic/switch/switch.js +28 -19
- package/build/shared/charts/descriptors/logic/switchLocale.js +5 -5
- package/build/shared/charts/descriptors/logic/think.js +11 -11
- package/build/shared/charts/descriptors/logic/thinkV2.js +11 -11
- package/build/shared/charts/descriptors/logic/wait.js +1 -1
- package/build/shared/charts/descriptors/message/checkChannelChange/checkChannelChange.js +4 -4
- package/build/shared/charts/descriptors/message/datePicker.js +1 -1
- package/build/shared/charts/descriptors/message/question/optionalQuestion.js +68 -36
- package/build/shared/charts/descriptors/message/question/question.js +796 -210
- package/build/shared/charts/descriptors/message/question/utils/cleanTextUtils.js +191 -0
- package/build/shared/charts/descriptors/message/question/utils/datepickerUtils.js +40 -40
- package/build/shared/charts/descriptors/message/question/utils/evaluateQuestionAnswer.js +37 -27
- package/build/shared/charts/descriptors/message/say.js +37 -4
- package/build/shared/charts/descriptors/message/sendImage.js +1 -1
- package/build/shared/charts/descriptors/message/sendText.js +2 -2
- package/build/shared/charts/descriptors/microsoft/getToken.js +1 -1
- package/build/shared/charts/descriptors/microsoft/invalidateToken.js +1 -1
- package/build/shared/charts/descriptors/microsoft/tokenStatus/index.js +1 -1
- package/build/shared/charts/descriptors/nlu/addLexiconKeyphrase.js +5 -5
- package/build/shared/charts/descriptors/nlu/cleanText.js +104 -0
- package/build/shared/charts/descriptors/nlu/executeCognigyNLU.js +15 -15
- package/build/shared/charts/descriptors/nlu/extractAnswer.js +11 -11
- package/build/shared/charts/descriptors/nlu/fuzzySearch.js +33 -33
- package/build/shared/charts/descriptors/nlu/generativeSlotFiller/generativeSlotFiller.js +270 -0
- package/build/shared/charts/descriptors/nlu/generativeSlotFiller/generativeSlotFillerFallback.js +27 -0
- package/build/shared/charts/descriptors/nlu/generativeSlotFiller/generativeSlotFillerSuccess.js +27 -0
- package/build/shared/charts/descriptors/nlu/generativeSlotFiller/prompt.js +174 -0
- package/build/shared/charts/descriptors/nlu/index.js +9 -1
- package/build/shared/charts/descriptors/nlu/matchPattern.js +16 -16
- package/build/shared/charts/descriptors/nlu/regexSlotFiller.js +5 -5
- package/build/shared/charts/descriptors/placeholder.js +3 -3
- package/build/shared/charts/descriptors/service/GPTConversation.js +780 -0
- package/build/shared/charts/descriptors/service/GPTPrompt.js +394 -0
- package/build/shared/charts/descriptors/service/checkAgentAvailability.js +48 -33
- package/build/shared/charts/descriptors/service/closeHandover.js +34 -0
- package/build/shared/charts/descriptors/service/conversationSummary.js +148 -0
- package/build/shared/charts/descriptors/service/handover.js +18 -17
- package/build/shared/charts/descriptors/service/handoverInactivityTimer.js +37 -0
- package/build/shared/charts/descriptors/service/handoverV2.js +179 -51
- package/build/shared/charts/descriptors/service/httpRequest.js +52 -52
- package/build/shared/charts/descriptors/service/index.js +11 -3
- package/build/shared/charts/descriptors/service/triggerFunction/triggerFunction.js +3 -3
- package/build/shared/charts/descriptors/voice/index.js +5 -1
- package/build/shared/{interfaces/twilioInterface.js → charts/descriptors/voice/interface/IBandwidth.js} +1 -1
- package/build/shared/charts/descriptors/voice/mappers/base.mapper.js +97 -0
- package/build/shared/charts/descriptors/voice/mappers/hangup.mapper.js +32 -9
- package/build/shared/charts/descriptors/voice/mappers/muteSpeechInput.mapper.js +67 -0
- package/build/shared/charts/descriptors/voice/mappers/play.mapper.js +73 -19
- package/build/shared/charts/descriptors/voice/mappers/record.mapper.js +103 -0
- package/build/shared/charts/descriptors/voice/mappers/sendMetadata.mapper.js +68 -0
- package/build/shared/charts/descriptors/voice/mappers/setSessionConfig.mapper.js +158 -66
- package/build/shared/charts/descriptors/voice/mappers/transfer.mapper.js +68 -16
- package/build/shared/charts/descriptors/voice/nodes/bargeIn.js +14 -20
- package/build/shared/charts/descriptors/voice/nodes/continuousAsr.js +7 -7
- package/build/shared/charts/descriptors/voice/nodes/dtmf.js +10 -18
- package/build/shared/charts/descriptors/voice/nodes/hangup.js +2 -2
- package/build/shared/charts/descriptors/voice/nodes/muteSpeechInput.js +52 -0
- package/build/shared/charts/descriptors/voice/nodes/noUserInput.js +15 -14
- package/build/shared/charts/descriptors/voice/nodes/play.js +13 -9
- package/build/shared/charts/descriptors/voice/nodes/sendMetadata.js +51 -0
- package/build/shared/charts/descriptors/voice/nodes/sessionSpeechParameters.js +199 -21
- package/build/shared/charts/descriptors/voice/nodes/transfer.js +21 -13
- package/build/shared/charts/descriptors/voice/utils/vgConstants.js +14 -0
- package/build/shared/charts/descriptors/voicegateway/index.js +14 -11
- package/build/shared/charts/descriptors/voicegateway/nodes/agentAssist.js +10 -10
- package/build/shared/charts/descriptors/voicegateway/nodes/callRecording.js +64 -62
- package/build/shared/charts/descriptors/voicegateway/nodes/handover.js +14 -14
- package/build/shared/charts/descriptors/voicegateway/nodes/hangup.js +2 -2
- package/build/shared/charts/descriptors/voicegateway/nodes/playURL.js +18 -15
- package/build/shared/charts/descriptors/voicegateway/nodes/sendMessage.js +41 -41
- package/build/shared/charts/descriptors/voicegateway/nodes/sendMetaData.js +15 -19
- package/build/shared/charts/descriptors/voicegateway/nodes/setSessionParams.js +3 -3
- package/build/shared/charts/descriptors/voicegateway/utils/paramUtils.js +113 -97
- package/build/shared/charts/descriptors/voicegateway2/index.js +5 -1
- package/build/shared/charts/descriptors/voicegateway2/nodes/dtmf.js +5 -5
- package/build/shared/charts/descriptors/voicegateway2/nodes/hangup.js +3 -4
- package/build/shared/charts/descriptors/voicegateway2/nodes/muteSpeechInput.js +60 -0
- package/build/shared/charts/descriptors/voicegateway2/nodes/play.js +42 -18
- package/build/shared/charts/descriptors/voicegateway2/nodes/record.js +108 -0
- package/build/shared/charts/descriptors/voicegateway2/nodes/refer.js +9 -10
- package/build/shared/charts/descriptors/voicegateway2/nodes/sendMetadata.js +14 -29
- package/build/shared/charts/descriptors/voicegateway2/nodes/setSessionConfig.js +424 -74
- package/build/shared/charts/descriptors/voicegateway2/nodes/transfer.js +410 -45
- package/build/shared/charts/descriptors/voicegateway2/utils/helper.js +33 -7
- package/build/shared/charts/descriptors/voicegateway2/utils/strip-nulls.js +4 -0
- package/build/shared/charts/helpers/generativeAI/getRephraseWithAIFields.js +8 -8
- package/build/shared/charts/helpers/generativeAI/rephraseSentenceWithAi.js +1 -1
- package/build/shared/constants.js +18 -1
- package/build/shared/errors/ErrorCode.js +1 -0
- package/build/shared/errors/TooManyRequestsError.js +59 -0
- package/build/shared/errors/baseError.js +6 -2
- package/build/shared/errors/codes.js +2 -1
- package/build/shared/errors/index.js +3 -1
- package/build/shared/handoverClients/interfaces/THandoverEventType.js +3 -1
- package/build/shared/helper/BaseContext.js +43 -3
- package/build/shared/helper/nlu/dicts/dicts.js +691 -0
- package/build/shared/helper/nlu/textCleaner.js +413 -0
- package/build/shared/interfaces/IApiKey.js +2 -7
- package/build/shared/interfaces/IEndpointTranslationSettings.js +9 -0
- package/build/shared/interfaces/IOrganisation.js +4 -8
- package/build/shared/interfaces/IProfileSchema.js +1 -7
- package/build/shared/interfaces/agentAssist/ISendConfigUpdateParams.js +3 -0
- package/build/shared/interfaces/agentAssist/ISendTileUpdateParams.js +3 -0
- package/build/shared/interfaces/agentAssist/ISendUpdateReferenceParams.js +3 -0
- package/build/shared/interfaces/agentAssist/index.js +3 -0
- package/build/shared/interfaces/ai.js +0 -16
- package/build/shared/interfaces/amqpInterface.js +25 -23
- package/build/shared/interfaces/channels/genesysBotConnector.js +21 -0
- package/build/shared/interfaces/channels/niceCXOne.js +8 -0
- package/build/shared/interfaces/generativeAI/IGenerativeAIModels.js +80 -0
- package/build/shared/interfaces/generativeAI/IGenerativeAIPrompts.js +3 -0
- package/build/shared/interfaces/generativeAI/IRunGenerativeAIPromptOptions.js +3 -0
- package/build/shared/interfaces/handover.js +70 -4
- package/build/shared/interfaces/journeys/IJourney.js +6 -0
- package/build/shared/interfaces/journeys/IJourneyTrackEvent.js +2 -0
- package/build/shared/interfaces/knowledgesearch/search.js +3 -0
- package/build/shared/interfaces/messageAPI/ai.js +2 -1
- package/build/shared/interfaces/messageAPI/endpoints.js +177 -5
- package/build/shared/interfaces/messageAPI/handover.js +4 -1
- package/build/shared/interfaces/resources/IAgentAssistConfig.js +26 -20
- package/build/shared/interfaces/resources/IAuditEvent.js +9 -1
- package/build/shared/interfaces/resources/IChart.js +1 -10
- package/build/shared/interfaces/resources/IConnection.js +7 -1
- package/build/shared/interfaces/resources/IConnectionSchema.js +3 -0
- package/build/shared/interfaces/resources/IEndpoint.js +3 -14
- package/build/shared/interfaces/resources/IExtension.js +3 -0
- package/build/shared/interfaces/resources/IFlow.js +15 -10
- package/build/shared/interfaces/resources/IFunction.js +1 -7
- package/build/shared/interfaces/resources/IGenerateNodeOutput.js +3 -0
- package/build/shared/interfaces/resources/ILargeLanguageModel.js +73 -0
- package/build/shared/interfaces/resources/ILexicon.js +2 -7
- package/build/shared/interfaces/resources/INodeDescriptorSet.js +55 -30
- package/build/shared/interfaces/resources/IPackage.js +1 -7
- package/build/shared/interfaces/resources/IPlaybookRun.js +2 -1
- package/build/shared/interfaces/resources/IProject.js +1 -7
- package/build/shared/interfaces/resources/ISnapshot.js +2 -14
- package/build/shared/interfaces/resources/TNLUConnectorType.js +2 -2
- package/build/shared/interfaces/resources/TResourceType.js +16 -5
- package/build/shared/interfaces/resources/TRestChannelType.js +16 -11
- package/build/shared/interfaces/resources/TWebhookChannelType.js +6 -1
- package/build/shared/interfaces/resources/chart/IChartExecutable.js +1 -7
- package/build/shared/interfaces/resources/knowledgeStore/IKnowledgeChunk.js +50 -0
- package/build/shared/interfaces/resources/knowledgeStore/IKnowledgeSource.js +42 -0
- package/build/shared/interfaces/resources/knowledgeStore/IKnowledgeStore.js +26 -0
- package/build/shared/interfaces/resources/settings/IAgentSettings.js +7 -70
- package/build/shared/interfaces/resources/settings/IAudioPreviewSettings.js +36 -0
- package/build/shared/interfaces/resources/settings/IGenerativeAISettings.js +25 -88
- package/build/shared/interfaces/resources/settings/IGenerativeAIUseCase.js +3 -0
- package/build/shared/interfaces/resources/settings/ISharedSettings.js +2 -2
- package/build/shared/interfaces/resources/settings/ITranslationSettings.js +63 -0
- package/build/shared/interfaces/resources/settings/index.js +7 -5
- package/build/shared/interfaces/restAPI/administration/user/v2.1/IApiKeyIndexItem_2_1.js +3 -0
- package/build/shared/interfaces/restAPI/administration/user/v2.1/IApiKey_2_1.js +3 -0
- package/build/shared/interfaces/restAPI/administration/user/v2.1/ICreateApiKeyRest_2_1.js +3 -0
- package/build/shared/interfaces/restAPI/administration/user/v2.1/IIndexApiKeysMeRest_2_1.js +3 -0
- package/build/shared/interfaces/restAPI/administration/user/v2.1/index.js +3 -0
- package/build/shared/interfaces/restAPI/administration/voiceGateway/v2.0/IReadVoiceGatewayAccountRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/administration/voiceGateway/v2.0/ISetupVoiceGatewayAccountRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/administration/voiceGateway/v2.0/index.js +3 -0
- package/build/shared/interfaces/restAPI/insights/reports/IGenerateReportRest_2_0.js +0 -2
- package/build/shared/interfaces/restAPI/metrics/knowledgeQueryCounter/v2.0/IGetKnowledgeQueryCounterOrganisationRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/metrics/knowledgeQueryCounter/v2.0/IGetKnowledgeQueryCounterRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/metrics/knowledgeQueryCounter/v2.0/IKnowlegeQueryCounterAggregatedValue_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/metrics/knowledgeQueryCounter/v2.0/index.js +3 -0
- package/build/shared/interfaces/restAPI/resources/agentAssist/v2.0/IReadAgentAssistSessionDataRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/chart/v2.0/IGenerateNodeOutputRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeSearchIndex/v2.0/ICreateKnowledgeSearchIndexRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeSearchIndex/v2.0/IDeleteKnowledgeSearchIndexRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeSearchIndex/v2.0/index.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/ICreateKnowledgeStoreRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IDeleteKnowledgeStoreRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IIndexKnowledgeStoresRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IIngestKnowledgeStoreRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IKnowledgeStore_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IReadKnowledgeStoreRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/IUpdateKnowledgeStoreRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/index.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/ICreateKnowledgeSourceRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IDeleteKnowledgeSourceRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IIndexKnowledgeSourcesRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IKnowledgeSource_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IReadKnowledgeSourceRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IUpdateKnowledgeSourceRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/IUploadKnowledgeSourceFileRest_2_0.js +4 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/ICreateKnowledgeChunkRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IDeleteKnowledgeChunkRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IIndexKnowledgeChunksRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IKnowledgeChunk_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IReadKnowledgeChunkRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/knowledgeStore/v2.0/source/chunk/IUpdateKnowledgeChunkRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ICloneLargeLanguageModelRest_2_0.js +4 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ICreateLargeLanguageModelRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/IDeleteLargeLanguageModelRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/IIndexLargeLanguageModelsRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ILargeLanguageModelIndexItem_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ILargeLanguageModel_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/IReadLargeLanguageModelRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/ITestLargeLanguageModelRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/IUpdateLargeLanguageModelRest_2_0.js +3 -0
- package/build/shared/interfaces/restAPI/resources/largeLanguageModel/v2.0/index.js +3 -0
- package/build/shared/interfaces/restAPI/resources/nluconnector/v2.0/TNLUConnectorType_2_0.js +3 -3
- package/build/shared/interfaces/restAPI/resources/project/v2.0/settings/ISetupCognigyGenerativeAIRest_2_0.js +4 -0
- package/build/shared/interfaces/restAPI/resources/uploadResumable/v2.0/IUploadResumableRest_2_0.js +17 -0
- package/build/shared/interfaces/restAPI/resources/uploadResumable/v2.0/index.js +3 -0
- package/build/shared/interfaces/security/IACL.js +1 -7
- package/build/shared/interfaces/security/IIdentityProvider.js +1 -7
- package/build/shared/interfaces/security/IKnowledgeQueryCounterAggregatedValue.js +3 -0
- package/build/shared/interfaces/security/IPermission.js +8 -2
- package/build/shared/interfaces/security/IRole.js +6 -2
- package/build/shared/interfaces/security/index.js +1 -2
- package/build/shared/interfaces/taskmanager/ITask.js +1 -0
- package/build/shared/interfaces/trainer/ITrainerRecord.js +1 -1
- package/build/shared/interfaces/user.js +1 -9
- package/build/test.js +27 -0
- package/package.json +19 -17
- package/types/index.d.ts +10428 -8487
- package/build/shared/charts/descriptors/service/completeText.js +0 -316
- package/build/shared/charts/descriptors/voice/utils/constants.js +0 -8
- package/build/shared/charts/descriptors/voicegateway2/utils/constants.js +0 -7
|
@@ -0,0 +1,413 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTextCleaner = exports.TextCleaner = void 0;
|
|
4
|
+
const dicts_1 = require("./dicts/dicts");
|
|
5
|
+
;
|
|
6
|
+
/**
|
|
7
|
+
* A class to clean up text
|
|
8
|
+
* Mainly written to deal with text coming in from STT
|
|
9
|
+
*/
|
|
10
|
+
class TextCleaner {
|
|
11
|
+
/**
|
|
12
|
+
* Creates an instance of CleanText
|
|
13
|
+
* @param locale The locale to use (e.g. "de")
|
|
14
|
+
* @param additionalAllowedCharacters Extra allowed symbols for this instance (e.g. ["-", "*"])
|
|
15
|
+
* @param additionalMappedSymbols Extra allowed symbol words for this instance (e.g. {"minus": "-"})
|
|
16
|
+
* @param additionalSpecialPhrases Special words which may need replacing (e.g. if you want to detect cities, you might want to replace "färben" with "verden")
|
|
17
|
+
* @param additionalPhoneticAlphabet Extra spelling alphabet for this instance (e.g. {"alfa": "a", "bravo": "b"})
|
|
18
|
+
*/
|
|
19
|
+
constructor(locale, additionalAllowedCharacters = [], additionalMappedSymbols = {}, additionalSpecialPhrases = {}, additionalPhoneticAlphabet = null) {
|
|
20
|
+
this.locale = locale;
|
|
21
|
+
this.allowedCharacters = dicts_1.LOCALE_SPECIFIC_SYMBOLS[locale].concat(additionalAllowedCharacters);
|
|
22
|
+
if (additionalPhoneticAlphabet === null) {
|
|
23
|
+
additionalPhoneticAlphabet = dicts_1.EXTRA_SPELLING_ALPHABET[locale];
|
|
24
|
+
}
|
|
25
|
+
this.dictAlphabet = dicts_1.ALPHABET[locale];
|
|
26
|
+
this.dictAlphabet = Object.assign(Object.assign({}, this.dictAlphabet), additionalPhoneticAlphabet);
|
|
27
|
+
this.dictSymbolWords = dicts_1.SYMBOL_WORDS[locale];
|
|
28
|
+
this.dictSymbolWords = Object.assign(Object.assign({}, this.dictSymbolWords), additionalMappedSymbols);
|
|
29
|
+
this.dictSpecials = Object.assign({}, additionalSpecialPhrases);
|
|
30
|
+
this.dictPunctuation = dicts_1.PUNCTUATION;
|
|
31
|
+
this.listExcludedWords = dicts_1.EXCLUDE[locale];
|
|
32
|
+
this.dictNumbers = dicts_1.NUMBERS_DICT[locale];
|
|
33
|
+
this.dictNumberRepeaters = dicts_1.NUMBERS_REPEAT[locale];
|
|
34
|
+
this.dictNumberMultipliers = dicts_1.NUMBERS_MULTIPLIERS[locale];
|
|
35
|
+
this.dictPhoneticConnectors = dicts_1.PHONETIC_CONNECTORS[locale];
|
|
36
|
+
if (this.dictPhoneticConnectors.length > 0) {
|
|
37
|
+
// sort in descending order for the regex to work properly
|
|
38
|
+
this.dictPhoneticConnectors.sort((a, b) => b.length - a.length);
|
|
39
|
+
}
|
|
40
|
+
// create the regex of allowed characters.
|
|
41
|
+
// the .replace portion escapes the additional allowed symbols so they can be used in the regex
|
|
42
|
+
this.allowedSymbolsRegex = new RegExp(`[^A-Za-z0-9${this.allowedCharacters.join("").replace(/[-.*+?^${}()|[\]\\]/g, '\\$&')}\\s]+`, "g");
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Function to executed all or selected functions of this class on a phrase
|
|
46
|
+
* @param phrase The phrase to clean
|
|
47
|
+
* @param options Optional toggle for cleaning functions
|
|
48
|
+
* @returns The cleaned phrase
|
|
49
|
+
*/
|
|
50
|
+
cleanAll(phrase, options, detailedSlots) {
|
|
51
|
+
if (!options || options.cleanDisallowedSymbols)
|
|
52
|
+
phrase = this.cleanDisallowedSymbols(phrase);
|
|
53
|
+
if (!options || options.resolveSpelledOutNumbers)
|
|
54
|
+
phrase = this.resolveSpelledOutNumbers(phrase, detailedSlots, false);
|
|
55
|
+
if (!options || options.resolvePhoneticAlphabet)
|
|
56
|
+
phrase = this.resolvePhoneticAlphabet(phrase);
|
|
57
|
+
if (!options || options.replaceSpecialWords || options.replaceSpecialPhrases)
|
|
58
|
+
phrase = this.replaceSpecialPhrases(phrase);
|
|
59
|
+
if (!options || options.resolveSpelledOutAlphabet)
|
|
60
|
+
phrase = this.resolveSpelledOutAlphabet(phrase);
|
|
61
|
+
if (!options || options.resolvePhoneticCounters)
|
|
62
|
+
phrase = this.resolvePhoneticCounters(phrase);
|
|
63
|
+
if (!options || options.contractSingleCharacters)
|
|
64
|
+
phrase = this.contractSingleCharacters(phrase);
|
|
65
|
+
if (!options || options.contractNumberGroups)
|
|
66
|
+
phrase = this.contractNumberGroups(phrase);
|
|
67
|
+
if (!options || options.trimResult)
|
|
68
|
+
phrase = this.trimResult(phrase);
|
|
69
|
+
return phrase;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Remove all symbols which are not allowed
|
|
73
|
+
*/
|
|
74
|
+
cleanDisallowedSymbols(phrase) {
|
|
75
|
+
phrase = phrase.toLowerCase().replace(this.allowedSymbolsRegex, '');
|
|
76
|
+
phrase = phrase.replace(/\s+/g, ' ');
|
|
77
|
+
const words = phrase.split(' ');
|
|
78
|
+
const cleanedWords = words.map((word) => {
|
|
79
|
+
var _a, _b;
|
|
80
|
+
// figure out if last character is a full stop
|
|
81
|
+
const lastChar = word.slice(-1);
|
|
82
|
+
const hasPunctuation = this.dictPunctuation.indexOf(lastChar) !== -1;
|
|
83
|
+
let replacement = word;
|
|
84
|
+
if (hasPunctuation) {
|
|
85
|
+
word = word.slice(0, -1);
|
|
86
|
+
replacement = ((_a = this.dictSymbolWords[word]) !== null && _a !== void 0 ? _a : word) + lastChar;
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
replacement = (_b = this.dictSymbolWords[word]) !== null && _b !== void 0 ? _b : word;
|
|
90
|
+
}
|
|
91
|
+
// if word was found in the dictionary, add it to the list of additional allowed characters
|
|
92
|
+
if (this.dictSymbolWords[word] && this.allowedCharacters.indexOf(this.dictSymbolWords[word]) === -1) {
|
|
93
|
+
this.allowedCharacters.push(this.dictSymbolWords[word]);
|
|
94
|
+
this.allowedSymbolsRegex = new RegExp(`[^A-Za-z0-9${this.allowedCharacters.join("").replace(/[-.*+?^${}()|[\]\\]/g, '\\$&')}\\s]+`, "g");
|
|
95
|
+
}
|
|
96
|
+
return replacement;
|
|
97
|
+
});
|
|
98
|
+
phrase = cleanedWords.join(' ');
|
|
99
|
+
return phrase;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Replaces all number words with their numerical representation
|
|
103
|
+
* e.g. "eins zwei drei" -> "1 2 3"
|
|
104
|
+
* @param preserveExcludedWords If true, words which are in the listExcludedWords will not be replaced
|
|
105
|
+
*/
|
|
106
|
+
resolveSpelledOutNumbers(phrase, detailedSlots, preserveExcludedWords) {
|
|
107
|
+
// check if we have a detailedSlots NUMBER object
|
|
108
|
+
if (detailedSlots && detailedSlots.NUMBER && Array.isArray(detailedSlots.NUMBER) && detailedSlots.NUMBER.length > 0) {
|
|
109
|
+
detailedSlots.NUMBER.forEach((num) => {
|
|
110
|
+
// special rule for de-DE, as our NLU captures "mal" as part of the number words
|
|
111
|
+
// if we replace this, we can't resolve phonetic counters anymore
|
|
112
|
+
// in addition the German NLU parser finds IPv4 addresses with full length (123.123.123.132) as numbers, which we don't want to replace
|
|
113
|
+
if (this.locale !== "de" || (!num.text.includes("mal") && !num.text.match(/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/))) {
|
|
114
|
+
phrase = phrase.replace(num.text, num.data.value.toString());
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
phrase = phrase.toLowerCase().split(' ')
|
|
119
|
+
.filter((i) => preserveExcludedWords || !this.listExcludedWords.includes(i))
|
|
120
|
+
.map((w, i, splits) => {
|
|
121
|
+
if (this.dictNumbers[w] !== undefined) {
|
|
122
|
+
if (splits[i + 1] && this.dictNumbers[w + " " + splits[i + 1]] !== undefined) {
|
|
123
|
+
const result = this.dictNumbers[w + " " + splits[i + 1]];
|
|
124
|
+
delete splits[i + 1];
|
|
125
|
+
return result;
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
return this.dictNumbers[w];
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
else
|
|
132
|
+
return w;
|
|
133
|
+
}).join(' ').replace(/\s\s/g, ' ');
|
|
134
|
+
return phrase;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Replaces specifically determined words with their replacements
|
|
138
|
+
* e.g. "färben" -> "verden"
|
|
139
|
+
* @deprecated Use replaceSpecialPhrases instead
|
|
140
|
+
*/
|
|
141
|
+
replaceSpecialWords(phrase) {
|
|
142
|
+
phrase = phrase.toLowerCase().replace(this.allowedSymbolsRegex, '');
|
|
143
|
+
phrase = phrase.replace(/\s+/g, ' ');
|
|
144
|
+
const words = phrase.split(' ');
|
|
145
|
+
const cleanedWords = words.map((word) => {
|
|
146
|
+
var _a, _b;
|
|
147
|
+
// figure out if last character is a punctuation symbol
|
|
148
|
+
const lastChar = word.slice(-1);
|
|
149
|
+
const hasPunctuation = this.dictPunctuation.indexOf(lastChar) !== -1;
|
|
150
|
+
let replacement = word;
|
|
151
|
+
if (hasPunctuation) {
|
|
152
|
+
word = word.slice(0, -1);
|
|
153
|
+
replacement = ((_a = this.dictSpecials[word]) !== null && _a !== void 0 ? _a : word) + lastChar;
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
replacement = (_b = this.dictSpecials[word]) !== null && _b !== void 0 ? _b : word;
|
|
157
|
+
}
|
|
158
|
+
return replacement;
|
|
159
|
+
});
|
|
160
|
+
phrase = cleanedWords.join(' ');
|
|
161
|
+
return phrase;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Replaces specifically determined phrases with their replacements
|
|
165
|
+
* e.g. "swiss airlines international" -> "SWISS"
|
|
166
|
+
*/
|
|
167
|
+
replaceSpecialPhrases(phrase) {
|
|
168
|
+
// lowercase the whole dictSpecials
|
|
169
|
+
for (const [key, value] of Object.entries(this.dictSpecials)) {
|
|
170
|
+
this.dictSpecials[key.toLowerCase()] = value;
|
|
171
|
+
}
|
|
172
|
+
// Replace all double spaces with single spaces
|
|
173
|
+
let normalizedPhrase = phrase.replace(/\s+/g, ' ').toLowerCase();
|
|
174
|
+
for (let phraseToDetect of Object.keys(this.dictSpecials)) {
|
|
175
|
+
// make phrase regex-safe
|
|
176
|
+
phraseToDetect = phraseToDetect.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
|
|
177
|
+
const matches = normalizedPhrase.match(new RegExp(`\\b(${phraseToDetect})\\b`, 'gi'));
|
|
178
|
+
if (matches) {
|
|
179
|
+
normalizedPhrase = normalizedPhrase.replace(new RegExp(`\\b${matches[0]}\\b`, "gi"), this.dictSpecials[phraseToDetect]);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
return normalizedPhrase;
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Detects and replaces all words which are known in the spelling alphabet
|
|
186
|
+
* e.g. "alpha tango lima" -> "a t l" or "anton ida otto" -> "a i o"
|
|
187
|
+
*/
|
|
188
|
+
resolvePhoneticAlphabet(phrase) {
|
|
189
|
+
phrase = phrase.toLowerCase().replace(this.allowedSymbolsRegex, '');
|
|
190
|
+
phrase = phrase.replace(/\s+/g, ' ');
|
|
191
|
+
const words = phrase.split(' ');
|
|
192
|
+
const cleanedWords = words.map((word) => {
|
|
193
|
+
var _a;
|
|
194
|
+
let lastChar = word.slice(-1);
|
|
195
|
+
if (this.dictPunctuation.indexOf(lastChar) !== -1) {
|
|
196
|
+
// remove punctuation
|
|
197
|
+
word = word.slice(0, -1);
|
|
198
|
+
}
|
|
199
|
+
else
|
|
200
|
+
lastChar = "";
|
|
201
|
+
const replacement = (_a = this.dictAlphabet[word]) !== null && _a !== void 0 ? _a : word;
|
|
202
|
+
return replacement + lastChar;
|
|
203
|
+
});
|
|
204
|
+
phrase = cleanedWords.join(' ');
|
|
205
|
+
return phrase;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Resolves string like "a for anton b for bertram" to "a b"
|
|
209
|
+
*/
|
|
210
|
+
resolveSpelledOutAlphabet(phrase) {
|
|
211
|
+
phrase = phrase.toLowerCase();
|
|
212
|
+
while (true) {
|
|
213
|
+
const regex = new RegExp(`(\\s|^)([a-z]{1,3}) (${this.dictPhoneticConnectors.join("|")}) \\w+`, "i");
|
|
214
|
+
const match = phrase.match(regex);
|
|
215
|
+
if (match) {
|
|
216
|
+
const start = match.index;
|
|
217
|
+
const stop = start + match[0].length;
|
|
218
|
+
const letter = this._validateReduce(phrase, match[2], start, stop, match[3]);
|
|
219
|
+
phrase = phrase.slice(0, start) + ' ' + letter + phrase.slice(stop);
|
|
220
|
+
}
|
|
221
|
+
else {
|
|
222
|
+
break;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
// Replace letter multiplication
|
|
226
|
+
for (const repeat in this.dictNumbers) {
|
|
227
|
+
while (true) {
|
|
228
|
+
const match = phrase.match(new RegExp(`(${repeat} [a-z]\\b)`));
|
|
229
|
+
if (match) {
|
|
230
|
+
const start = match.index;
|
|
231
|
+
const stop = start + match[0].length;
|
|
232
|
+
const letter = this.dictNumbers[repeat].repeat(Number(phrase.slice(start, stop).slice(-1)));
|
|
233
|
+
phrase = phrase.slice(0, start) + letter + phrase.slice(stop);
|
|
234
|
+
}
|
|
235
|
+
else {
|
|
236
|
+
break;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
return phrase;
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Resolves strings like "three times 2" to "222" or "double 4" to "44"
|
|
244
|
+
* Only takes the last number of the counter and first of the repeater
|
|
245
|
+
* e.g. ("352 mal 355" becomes "2 mal 3" > "333")
|
|
246
|
+
*/
|
|
247
|
+
resolvePhoneticCounters(phrase) {
|
|
248
|
+
phrase = phrase.toLowerCase();
|
|
249
|
+
// first we check for "X times Y"-style counters
|
|
250
|
+
let matches;
|
|
251
|
+
do {
|
|
252
|
+
const allowedRepeaters = this.dictNumberMultipliers.join("|");
|
|
253
|
+
const xMalYRegex = new RegExp(`(\\d+){1}\\s*(${allowedRepeaters}|\\*)\\s*[die\\s]*(\\d+|\\w+)`, "gi");
|
|
254
|
+
phrase = phrase.replace(/\s\s/gi, ' ');
|
|
255
|
+
matches = xMalYRegex.exec(phrase);
|
|
256
|
+
if (matches && !isNaN(Number(matches[1])) && !isNaN(Number(matches[3]))) {
|
|
257
|
+
// string is like "3 mal 4"
|
|
258
|
+
const counter = Number(matches[1]);
|
|
259
|
+
let replacer = "";
|
|
260
|
+
let remainer = "";
|
|
261
|
+
let adder = matches[3];
|
|
262
|
+
if (adder.length > 1 && !isNaN(Number(adder)) && Number(adder) > 12) {
|
|
263
|
+
// if number is > 12, we assume that the user meant to write "3 times 1 and 3" instead of "3 times 13"
|
|
264
|
+
// otherwise we assume "2 times 11" means "1111"
|
|
265
|
+
remainer = adder.substring(1, adder.length);
|
|
266
|
+
adder = adder.substring(0, 1);
|
|
267
|
+
}
|
|
268
|
+
for (let i = 0; i < counter; i++) {
|
|
269
|
+
replacer += adder;
|
|
270
|
+
}
|
|
271
|
+
phrase = phrase.replace(matches[0].replace(remainer, ""), replacer);
|
|
272
|
+
}
|
|
273
|
+
else if (matches && !isNaN(Number(matches[1])) && isNaN(Number(matches[3]))) {
|
|
274
|
+
// string is like "3 mal x"
|
|
275
|
+
const counter = Number(matches[1]);
|
|
276
|
+
let replacer = "";
|
|
277
|
+
let remainer = "";
|
|
278
|
+
let adder = matches[3];
|
|
279
|
+
// this happens if adder is a string and starts with a number
|
|
280
|
+
if (adder.length > 1 && !isNaN(Number(adder.substring(0, 1)))) {
|
|
281
|
+
remainer = adder.substring(1, adder.length);
|
|
282
|
+
adder = adder.substring(0, 1);
|
|
283
|
+
}
|
|
284
|
+
// the next checks happen only if the adder is a string
|
|
285
|
+
if (isNaN(Number(adder)) && typeof adder === "string" && adder.length > 1 && dicts_1.ALPHABET.de[adder]) {
|
|
286
|
+
// adder is part of the spelling alphabet (e.g. "alpha"), so we use the corresponding letter
|
|
287
|
+
adder = dicts_1.ALPHABET.de[matches[3]];
|
|
288
|
+
}
|
|
289
|
+
else if (isNaN(Number(adder)) && typeof adder === "string" && adder.length > 1 && !dicts_1.ALPHABET.de[adder]) {
|
|
290
|
+
// adder is NOT part of the spelling alphabet (e.g. "alpha"), so we use the first letter only
|
|
291
|
+
remainer = adder.substring(1, adder.length);
|
|
292
|
+
adder = adder.substring(0, 1);
|
|
293
|
+
}
|
|
294
|
+
for (let i = 0; i < counter; i++) {
|
|
295
|
+
replacer += adder;
|
|
296
|
+
}
|
|
297
|
+
phrase = phrase.replace(matches[0].replace(remainer, ""), replacer);
|
|
298
|
+
}
|
|
299
|
+
} while (matches);
|
|
300
|
+
// here we check for "double X"-style counters
|
|
301
|
+
let matches2;
|
|
302
|
+
do {
|
|
303
|
+
const allowedRepeaters = Object.keys(this.dictNumberRepeaters).join("|");
|
|
304
|
+
const reg2 = new RegExp(`(${allowedRepeaters})\\s*?[die\\s]*(\\d+|\\w+)`, "gi");
|
|
305
|
+
matches2 = reg2.exec(phrase);
|
|
306
|
+
if (matches2 && this.dictNumberRepeaters[matches2[1]]) {
|
|
307
|
+
const counter = Number(this.dictNumberRepeaters[matches2[1]]);
|
|
308
|
+
let replacer = "";
|
|
309
|
+
let remainer = "";
|
|
310
|
+
let adder = matches2[2];
|
|
311
|
+
if (adder.length > 1 && !isNaN(Number(adder)) && Number(adder) > 12) {
|
|
312
|
+
// if number is > 12, we assume that the user meant to write "double 1 and 3" instead of "double 13"
|
|
313
|
+
// otherwise we assume "double 11" means "1111"
|
|
314
|
+
remainer = adder.substring(1, adder.length);
|
|
315
|
+
adder = adder.substring(0, 1);
|
|
316
|
+
}
|
|
317
|
+
if (isNaN(Number(adder)) && typeof adder === "string" && adder.length > 1 && dicts_1.ALPHABET.de[adder]) {
|
|
318
|
+
// adder is part of the spelling alphabet (e.g. "alpha"), so we use the corresponding letter
|
|
319
|
+
adder = dicts_1.ALPHABET.de[matches2[2]];
|
|
320
|
+
}
|
|
321
|
+
else if (isNaN(Number(adder)) && typeof adder === "string" && adder.length > 1 && !dicts_1.ALPHABET.de[adder]) {
|
|
322
|
+
// adder is NOT part of the spelling alphabet (e.g. "alpha"), so we use the first letter only
|
|
323
|
+
remainer = adder.substring(1, adder.length);
|
|
324
|
+
adder = adder.substring(0, 1);
|
|
325
|
+
}
|
|
326
|
+
for (let i = 0; i < counter; i++) {
|
|
327
|
+
replacer += adder;
|
|
328
|
+
}
|
|
329
|
+
phrase = phrase.replace(matches2[0].replace(remainer, ""), replacer);
|
|
330
|
+
}
|
|
331
|
+
} while (matches2);
|
|
332
|
+
return phrase;
|
|
333
|
+
}
|
|
334
|
+
/**
|
|
335
|
+
* Joins all single characters standing alone into a full string
|
|
336
|
+
* e.g. "my name is h e l t e w i g" > "my name is heltewig"
|
|
337
|
+
*/
|
|
338
|
+
contractSingleCharacters(phrase) {
|
|
339
|
+
const words = phrase.split(' ');
|
|
340
|
+
const result = [];
|
|
341
|
+
for (let i = 0; i < words.length; i++) {
|
|
342
|
+
const word = words[i];
|
|
343
|
+
// we check whether the word is either a single character or a single character followed by a punctuation mark
|
|
344
|
+
// if so, we check whether the previous word is a single character and if yes, we join them
|
|
345
|
+
if ((word.length === 1 || (word.length === 2 && [".", ",", "!", "?"].indexOf(word[1]) > -1)) && i > 0 && words[i - 1].length === 1) {
|
|
346
|
+
result[result.length - 1] += word;
|
|
347
|
+
}
|
|
348
|
+
else {
|
|
349
|
+
result.push(word);
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
// Join the words back together with spaces
|
|
353
|
+
return result.join(' ');
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* Joins all numbers standing next to each other
|
|
357
|
+
* e.g. "his number is 333 43 22 44" > "his number is 333432244"
|
|
358
|
+
*/
|
|
359
|
+
contractNumberGroups(phrase) {
|
|
360
|
+
// Use a regular expression to match all the number groups in the input string
|
|
361
|
+
const numberGroups = phrase.match(/(\d[\d\s]*\d|\d)/g);
|
|
362
|
+
if (!numberGroups) {
|
|
363
|
+
// If there are no number groups, return the original phrase
|
|
364
|
+
return phrase;
|
|
365
|
+
}
|
|
366
|
+
// Join the number groups, removing spaces in between
|
|
367
|
+
const contractedNumberGroups = numberGroups.map(group => group.replace(/\s+/g, ''));
|
|
368
|
+
// Replace the original number groups with the contracted ones
|
|
369
|
+
let result = phrase;
|
|
370
|
+
for (let i = 0; i < numberGroups.length; i++) {
|
|
371
|
+
result = result.replace(numberGroups[i], contractedNumberGroups[i]);
|
|
372
|
+
}
|
|
373
|
+
return result;
|
|
374
|
+
}
|
|
375
|
+
/**
|
|
376
|
+
* Trims the start and end of the string and replaces double spaces with single spaces
|
|
377
|
+
*/
|
|
378
|
+
trimResult(phrase) {
|
|
379
|
+
phrase = phrase.trim();
|
|
380
|
+
phrase = phrase.replace(/\s+/g, ' ');
|
|
381
|
+
return phrase;
|
|
382
|
+
}
|
|
383
|
+
/**
|
|
384
|
+
* Helper function for resolveSpelledOutAlphabet
|
|
385
|
+
* @param phrase The phrase to resolve
|
|
386
|
+
* @param letter The letter found in LETTER as in THIRDWORD
|
|
387
|
+
* @param start The start index of the detected partial phrase
|
|
388
|
+
* @param stop The stop index of the detected partial phrase
|
|
389
|
+
* @param separator The separator (e.g. "as in" or "wie")
|
|
390
|
+
* @returns string
|
|
391
|
+
*/
|
|
392
|
+
_validateReduce(phrase, letter, start, stop, separator) {
|
|
393
|
+
if (letter.length === 1) {
|
|
394
|
+
const thirdWord = phrase
|
|
395
|
+
.substring(start, stop)
|
|
396
|
+
.trim()
|
|
397
|
+
.split(` ${separator} `)[1];
|
|
398
|
+
if (letter !== thirdWord[0]) {
|
|
399
|
+
letter = thirdWord[0];
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
return letter;
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
exports.TextCleaner = TextCleaner;
|
|
406
|
+
/**
|
|
407
|
+
* Returns a new instance of TextCleaner
|
|
408
|
+
*/
|
|
409
|
+
function getTextCleaner(locale, options) {
|
|
410
|
+
return new TextCleaner(locale, options === null || options === void 0 ? void 0 : options.additionalAllowedCharacters, options === null || options === void 0 ? void 0 : options.additionalMappedSymbols, options === null || options === void 0 ? void 0 : options.additionalSpecialPhrases, options === null || options === void 0 ? void 0 : options.additionalPhoneticAlphabet);
|
|
411
|
+
}
|
|
412
|
+
exports.getTextCleaner = getTextCleaner;
|
|
413
|
+
//# sourceMappingURL=textCleaner.js.map
|
|
@@ -1,14 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.apiKeyQuerySchema = exports.apiKeySchema =
|
|
3
|
+
exports.apiKeyQuerySchema = exports.apiKeySchema = void 0;
|
|
4
4
|
/* Custom Modules */
|
|
5
5
|
const createQuerySchema_1 = require("../helper/createQuerySchema");
|
|
6
|
-
const generateApiKeyRedisKeys = (data) => {
|
|
7
|
-
return [
|
|
8
|
-
`apiKey:${data.apiKey}`,
|
|
9
|
-
];
|
|
10
|
-
};
|
|
11
|
-
exports.generateApiKeyRedisKeys = generateApiKeyRedisKeys;
|
|
12
6
|
exports.apiKeySchema = {
|
|
13
7
|
title: "apiKeyDataSchema",
|
|
14
8
|
type: "object",
|
|
@@ -22,6 +16,7 @@ exports.apiKeySchema = {
|
|
|
22
16
|
userReference: { type: "string", format: "mongo-id" },
|
|
23
17
|
ttl: { type: "integer", maximum: 3 * 365 * 24 * 60 * 60 * 1000, minimum: 0 },
|
|
24
18
|
expiresAt: { type: "object" },
|
|
19
|
+
schemaVersion: { type: "integer", minimum: 1 },
|
|
25
20
|
}
|
|
26
21
|
};
|
|
27
22
|
exports.apiKeyQuerySchema = (0, createQuerySchema_1.createQuerySchema)("apiKeyQuerySchema", exports.apiKeySchema);
|
|
@@ -18,6 +18,15 @@ exports.translationSettingsEndpointSchema = {
|
|
|
18
18
|
noTranslateMarker: {
|
|
19
19
|
type: "string"
|
|
20
20
|
},
|
|
21
|
+
glossaryId: {
|
|
22
|
+
type: "string"
|
|
23
|
+
},
|
|
24
|
+
glossaryIdInput: {
|
|
25
|
+
type: "string"
|
|
26
|
+
},
|
|
27
|
+
formality: {
|
|
28
|
+
type: "string"
|
|
29
|
+
},
|
|
21
30
|
padPayloads: {
|
|
22
31
|
type: "boolean"
|
|
23
32
|
},
|
|
@@ -1,14 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.organisationQuerySchema = exports.organisationSchema = exports.organisationDataSchema = exports.organisationPasswordPolicySchema = exports.organisationDataPrivacySettingsSchema =
|
|
3
|
+
exports.organisationQuerySchema = exports.organisationSchema = exports.organisationDataSchema = exports.organisationPasswordPolicySchema = exports.organisationDataPrivacySettingsSchema = void 0;
|
|
4
4
|
/* Custom Modules */
|
|
5
5
|
const createQuerySchema_1 = require("../helper/createQuerySchema");
|
|
6
|
-
const generateOrganisationRedisKeys = (data) => {
|
|
7
|
-
return [
|
|
8
|
-
`organisationId:${data.organisationId}`,
|
|
9
|
-
];
|
|
10
|
-
};
|
|
11
|
-
exports.generateOrganisationRedisKeys = generateOrganisationRedisKeys;
|
|
12
6
|
exports.organisationDataPrivacySettingsSchema = {
|
|
13
7
|
title: "organisationDataPrivacySettingsSchema",
|
|
14
8
|
type: "object",
|
|
@@ -16,8 +10,10 @@ exports.organisationDataPrivacySettingsSchema = {
|
|
|
16
10
|
properties: {
|
|
17
11
|
enabled: { type: "boolean" },
|
|
18
12
|
useAnalytics: { type: "boolean" },
|
|
13
|
+
storeDataPayload: { type: "boolean" },
|
|
19
14
|
useContactProfiles: { type: "boolean" },
|
|
20
15
|
useConversations: { type: "boolean" },
|
|
16
|
+
maskIPAddress: { type: "boolean" },
|
|
21
17
|
maskAnalytics: { type: "boolean" },
|
|
22
18
|
maskLogging: { type: "boolean" },
|
|
23
19
|
ignoreList: { type: "array", items: { type: "string" }, additionalItems: false, minItems: 0 }
|
|
@@ -64,7 +60,7 @@ exports.organisationSchema = {
|
|
|
64
60
|
title: "organisationSchema",
|
|
65
61
|
type: "object",
|
|
66
62
|
additionalProperties: false,
|
|
67
|
-
properties: Object.assign(Object.assign({ _id: { format: "mongo-id" } }, exports.organisationDataSchema.properties), { liveAgentAccount: { type: "number" } }),
|
|
63
|
+
properties: Object.assign(Object.assign({ _id: { format: "mongo-id" } }, exports.organisationDataSchema.properties), { liveAgentAccount: { type: "number" }, voiceGatewayAccount: { type: "string" } }),
|
|
68
64
|
};
|
|
69
65
|
exports.organisationQuerySchema = (0, createQuerySchema_1.createQuerySchema)("organisationQuerySchema", exports.organisationSchema);
|
|
70
66
|
//# sourceMappingURL=IOrganisation.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.defaultProfile = exports.profileSchemaSchema = exports.profileSchemaEntry = exports.profileEntrySchemaTypes = void 0;
|
|
4
4
|
const IEntityMeta_1 = require("./resources/IEntityMeta");
|
|
5
5
|
exports.profileEntrySchemaTypes = ["string", "object", "number", "boolean"];
|
|
6
6
|
exports.profileSchemaEntry = {
|
|
@@ -37,10 +37,4 @@ exports.defaultProfile = {
|
|
|
37
37
|
accepted_gdpr: false,
|
|
38
38
|
goals: [],
|
|
39
39
|
};
|
|
40
|
-
const generateProfileSchemaRedisKeys = (data) => {
|
|
41
|
-
return [
|
|
42
|
-
`organisationId:${data.organisationId}:projectId:${data.projectId}:profileSchema`,
|
|
43
|
-
];
|
|
44
|
-
};
|
|
45
|
-
exports.generateProfileSchemaRedisKeys = generateProfileSchemaRedisKeys;
|
|
46
40
|
//# sourceMappingURL=IProfileSchema.js.map
|
|
@@ -1,19 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AzureOpenAiModels = exports.OpenAiModels = void 0;
|
|
4
|
-
var OpenAiModels;
|
|
5
|
-
(function (OpenAiModels) {
|
|
6
|
-
OpenAiModels["davinci"] = "text-davinci-003";
|
|
7
|
-
OpenAiModels["curie"] = "text-curie-001";
|
|
8
|
-
OpenAiModels["babbage"] = "text-babbage-001";
|
|
9
|
-
OpenAiModels["ada"] = "text-ada-001";
|
|
10
|
-
})(OpenAiModels = exports.OpenAiModels || (exports.OpenAiModels = {}));
|
|
11
|
-
var AzureOpenAiModels;
|
|
12
|
-
(function (AzureOpenAiModels) {
|
|
13
|
-
AzureOpenAiModels["davinci3"] = "text-davinci-003";
|
|
14
|
-
AzureOpenAiModels["davinci2"] = "text-davinci-002";
|
|
15
|
-
AzureOpenAiModels["curie"] = "text-curie-001";
|
|
16
|
-
AzureOpenAiModels["babbage"] = "text-babbage-001";
|
|
17
|
-
AzureOpenAiModels["ada"] = "text-ada-001";
|
|
18
|
-
})(AzureOpenAiModels = exports.AzureOpenAiModels || (exports.AzureOpenAiModels = {}));
|
|
19
3
|
//# sourceMappingURL=ai.js.map
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.executeRpcInternalParamsSchema = exports.referenceKeys = void 0;
|
|
4
|
-
;
|
|
5
4
|
exports.referenceKeys = [
|
|
6
5
|
"analyticsStepReference",
|
|
7
6
|
"chartReference",
|
|
@@ -24,44 +23,40 @@ exports.referenceKeys = [
|
|
|
24
23
|
"projectReference",
|
|
25
24
|
"resourceReference",
|
|
26
25
|
"snapshotReference",
|
|
27
|
-
"subResourceReference"
|
|
26
|
+
"subResourceReference",
|
|
27
|
+
"storeReference",
|
|
28
|
+
"sourceReference",
|
|
28
29
|
];
|
|
29
30
|
exports.executeRpcInternalParamsSchema = {
|
|
30
31
|
title: "executeRpcInternalParamsSchema",
|
|
31
32
|
type: "object",
|
|
32
|
-
required: [
|
|
33
|
-
"serviceQueue",
|
|
34
|
-
"payload"
|
|
35
|
-
],
|
|
33
|
+
required: ["serviceQueue", "payload"],
|
|
36
34
|
additionalProperties: false,
|
|
37
35
|
properties: {
|
|
38
36
|
serviceQueue: {
|
|
39
37
|
type: "string",
|
|
40
|
-
minLength: 1
|
|
38
|
+
minLength: 1,
|
|
41
39
|
},
|
|
42
40
|
payload: {
|
|
43
41
|
type: "object",
|
|
44
|
-
required: [
|
|
45
|
-
"type",
|
|
46
|
-
"data",
|
|
47
|
-
],
|
|
42
|
+
required: ["type", "data"],
|
|
48
43
|
properties: {
|
|
49
44
|
type: {
|
|
50
45
|
type: "string",
|
|
51
|
-
minLength: 1
|
|
46
|
+
minLength: 1,
|
|
52
47
|
},
|
|
53
48
|
data: {
|
|
54
|
-
type: "object"
|
|
55
|
-
}
|
|
56
|
-
}
|
|
49
|
+
type: "object",
|
|
50
|
+
},
|
|
51
|
+
},
|
|
57
52
|
},
|
|
58
53
|
timeout: {
|
|
59
54
|
anyOf: [
|
|
60
55
|
{
|
|
61
56
|
type: ["integer", "null"],
|
|
62
|
-
minimum: -1
|
|
63
|
-
}
|
|
64
|
-
]
|
|
57
|
+
minimum: -1,
|
|
58
|
+
},
|
|
59
|
+
],
|
|
65
60
|
},
|
|
66
61
|
consumerTag: {
|
|
67
62
|
type: "string",
|
|
@@ -75,14 +70,21 @@ exports.executeRpcInternalParamsSchema = {
|
|
|
75
70
|
type: "boolean",
|
|
76
71
|
},
|
|
77
72
|
reThrow: {
|
|
78
|
-
type: "boolean"
|
|
73
|
+
type: "boolean",
|
|
79
74
|
},
|
|
80
75
|
exchange: {
|
|
81
|
-
type: "string"
|
|
76
|
+
type: "string",
|
|
82
77
|
},
|
|
83
78
|
expiration: {
|
|
84
|
-
type: "string"
|
|
85
|
-
}
|
|
86
|
-
|
|
79
|
+
type: "string",
|
|
80
|
+
},
|
|
81
|
+
errorLogLevel: {
|
|
82
|
+
type: "string",
|
|
83
|
+
enum: ["error", "warn"],
|
|
84
|
+
},
|
|
85
|
+
priority: {
|
|
86
|
+
type: "number",
|
|
87
|
+
},
|
|
88
|
+
},
|
|
87
89
|
};
|
|
88
90
|
//# sourceMappingURL=amqpInterface.js.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// generated using https://app.quicktype.io/?l=ts
|
|
3
|
+
// and the "post utterance response body" schema
|
|
4
|
+
// https://developer.dev-genesys.cloud/commdigital/textbots/botconnector-customer-api-spec#postutterance-response-schema
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.isJsonChannelConfiguration = exports.isTextChannelConfiguration = void 0;
|
|
7
|
+
/**
|
|
8
|
+
* type-guard that checks whether a "genesys channel configuration" is a "text configuration"
|
|
9
|
+
*/
|
|
10
|
+
const isTextChannelConfiguration = (channelContent) => {
|
|
11
|
+
return typeof (channelContent === null || channelContent === void 0 ? void 0 : channelContent.text) === 'string';
|
|
12
|
+
};
|
|
13
|
+
exports.isTextChannelConfiguration = isTextChannelConfiguration;
|
|
14
|
+
/**
|
|
15
|
+
* type-guard that checks whether a "genesys channel configuration" is a "json configuration"
|
|
16
|
+
*/
|
|
17
|
+
const isJsonChannelConfiguration = (channelContent) => {
|
|
18
|
+
return !!(channelContent === null || channelContent === void 0 ? void 0 : channelContent.json);
|
|
19
|
+
};
|
|
20
|
+
exports.isJsonChannelConfiguration = isJsonChannelConfiguration;
|
|
21
|
+
//# sourceMappingURL=genesysBotConnector.js.map
|