10ba92b5b5725b8a71b54010b85b6eebaad496eb007d72fbfb965fc1c51f2fdb.json 24 KB

1
  1. {"ast":null,"code":"\"use strict\";\n\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ConversationManager = void 0;\nconst Exports_js_1 = require(\"../../common.browser/Exports.js\");\nconst Contracts_js_1 = require(\"../../sdk/Contracts.js\");\nconst Exports_js_2 = require(\"../../sdk/Exports.js\");\nconst ConversationConnectionConfig_js_1 = require(\"./ConversationConnectionConfig.js\");\nclass ConversationManager {\n constructor() {\n //\n this.privRequestParams = ConversationConnectionConfig_js_1.ConversationConnectionConfig.configParams;\n this.privErrors = ConversationConnectionConfig_js_1.ConversationConnectionConfig.restErrors;\n this.privHost = ConversationConnectionConfig_js_1.ConversationConnectionConfig.host;\n this.privApiVersion = ConversationConnectionConfig_js_1.ConversationConnectionConfig.apiVersion;\n this.privRestPath = ConversationConnectionConfig_js_1.ConversationConnectionConfig.restPath;\n this.privRestAdapter = new Exports_js_1.RestMessageAdapter({});\n }\n /**\n * Make a POST request to the Conversation Manager service endpoint to create or join a conversation.\n * @param args\n * @param conversationCode\n * @param callback\n * @param errorCallback\n */\n createOrJoin(args, conversationCode, cb, err) {\n try {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(args, \"args\");\n const languageCode = args.getProperty(Exports_js_2.PropertyId.SpeechServiceConnection_RecoLanguage, ConversationConnectionConfig_js_1.ConversationConnectionConfig.defaultLanguageCode);\n const nickname = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_Name, \"conversation_host\");\n const endpointHost = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_Host, this.privHost);\n const correlationId = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_CorrelationId);\n const subscriptionKey = args.getProperty(Exports_js_2.PropertyId.SpeechServiceConnection_Key);\n const subscriptionRegion = args.getProperty(Exports_js_2.PropertyId.SpeechServiceConnection_Region);\n const authToken = args.getProperty(Exports_js_2.PropertyId.SpeechServiceAuthorization_Token);\n Contracts_js_1.Contracts.throwIfNullOrWhitespace(languageCode, \"languageCode\");\n Contracts_js_1.Contracts.throwIfNullOrWhitespace(nickname, \"nickname\");\n Contracts_js_1.Contracts.throwIfNullOrWhitespace(endpointHost, \"endpointHost\");\n const queryParams = {};\n queryParams[this.privRequestParams.apiVersion] = this.privApiVersion;\n queryParams[this.privRequestParams.languageCode] = languageCode;\n queryParams[this.privRequestParams.nickname] = nickname;\n const headers = {};\n if (correlationId) {\n headers[this.privRequestParams.correlationId] = correlationId;\n }\n headers[this.privRequestParams.clientAppId] = ConversationConnectionConfig_js_1.ConversationConnectionConfig.clientAppId;\n if (conversationCode !== undefined) {\n queryParams[this.privRequestParams.roomId] = conversationCode;\n } else {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(subscriptionRegion, this.privErrors.authInvalidSubscriptionRegion);\n headers[this.privRequestParams.subscriptionRegion] = subscriptionRegion;\n if (subscriptionKey) {\n headers[this.privRequestParams.subscriptionKey] = subscriptionKey;\n } else if (authToken) {\n headers[this.privRequestParams.authorization] = `Bearer ${authToken}`;\n } else {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(subscriptionKey, this.privErrors.authInvalidSubscriptionKey);\n }\n }\n const config = {};\n config.headers = headers;\n this.privRestAdapter.options = config;\n const endpoint = `https://${endpointHost}${this.privRestPath}`;\n // TODO: support a proxy and certificate validation\n this.privRestAdapter.request(Exports_js_1.RestRequestType.Post, endpoint, queryParams, null).then(response => {\n const requestId = Exports_js_1.RestMessageAdapter.extractHeaderValue(this.privRequestParams.requestId, response.headers);\n if (!response.ok) {\n if (!!err) {\n // get the error\n let errorMessage = this.privErrors.invalidCreateJoinConversationResponse.replace(\"{status}\", response.status.toString());\n let errMessageRaw;\n try {\n errMessageRaw = JSON.parse(response.data);\n errorMessage += ` [${errMessageRaw.error.code}: ${errMessageRaw.error.message}]`;\n } catch (e) {\n errorMessage += ` [${response.data}]`;\n }\n if (requestId) {\n errorMessage += ` ${requestId}`;\n }\n err(errorMessage);\n }\n return;\n }\n const conversation = JSON.parse(response.data);\n if (conversation) {\n conversation.requestId = requestId;\n }\n if (!!cb) {\n try {\n cb(conversation);\n } catch (e) {\n if (!!err) {\n err(e);\n }\n }\n cb = undefined;\n }\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n }).catch(() => {});\n } catch (error) {\n if (!!err) {\n if (error instanceof Error) {\n const typedError = error;\n err(typedError.name + \": \" + typedError.message);\n } else {\n err(error);\n }\n }\n }\n }\n /**\n * Make a DELETE request to the Conversation Manager service endpoint to leave the conversation.\n * @param args\n * @param sessionToken\n * @param callback\n */\n leave(args, sessionToken) {\n return new Promise((resolve, reject) => {\n try {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(args, this.privErrors.invalidArgs.replace(\"{arg}\", \"config\"));\n Contracts_js_1.Contracts.throwIfNullOrWhitespace(sessionToken, this.privErrors.invalidArgs.replace(\"{arg}\", \"token\"));\n const endpointHost = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_Host, this.privHost);\n const correlationId = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_CorrelationId);\n const queryParams = {};\n queryParams[this.privRequestParams.apiVersion] = this.privApiVersion;\n queryParams[this.privRequestParams.sessionToken] = sessionToken;\n const headers = {};\n if (correlationId) {\n headers[this.privRequestParams.correlationId] = correlationId;\n }\n const config = {};\n config.headers = headers;\n this.privRestAdapter.options = config;\n const endpoint = `https://${endpointHost}${this.privRestPath}`;\n // TODO: support a proxy and certificate validation\n this.privRestAdapter.request(Exports_js_1.RestRequestType.Delete, endpoint, queryParams, null).then(response => {\n if (!response.ok) {\n // ignore errors on delete\n }\n resolve();\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n }).catch(() => {});\n } catch (error) {\n if (error instanceof Error) {\n const typedError = error;\n reject(typedError.name + \": \" + typedError.message);\n } else {\n reject(error);\n }\n }\n });\n }\n}\nexports.ConversationManager = ConversationManager;","map":{"version":3,"names":["Object","defineProperty","exports","value","ConversationManager","Exports_js_1","require","Contracts_js_1","Exports_js_2","ConversationConnectionConfig_js_1","constructor","privRequestParams","ConversationConnectionConfig","configParams","privErrors","restErrors","privHost","host","privApiVersion","apiVersion","privRestPath","restPath","privRestAdapter","RestMessageAdapter","createOrJoin","args","conversationCode","cb","err","Contracts","throwIfNullOrUndefined","languageCode","getProperty","PropertyId","SpeechServiceConnection_RecoLanguage","defaultLanguageCode","nickname","ConversationTranslator_Name","endpointHost","ConversationTranslator_Host","correlationId","ConversationTranslator_CorrelationId","subscriptionKey","SpeechServiceConnection_Key","subscriptionRegion","SpeechServiceConnection_Region","authToken","SpeechServiceAuthorization_Token","throwIfNullOrWhitespace","queryParams","headers","clientAppId","undefined","roomId","authInvalidSubscriptionRegion","authorization","authInvalidSubscriptionKey","config","options","endpoint","request","RestRequestType","Post","then","response","requestId","extractHeaderValue","ok","errorMessage","invalidCreateJoinConversationResponse","replace","status","toString","errMessageRaw","JSON","parse","data","error","code","message","e","conversation","catch","Error","typedError","name","leave","sessionToken","Promise","resolve","reject","invalidArgs","Delete"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/microsoft-cognitiveservices-speech-sdk/distrib/lib/src/common.speech/Transcription/ConversationManager.js"],"sourcesContent":["\"use strict\";\n// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ConversationManager = void 0;\nconst Exports_js_1 = require(\"../../common.browser/Exports.js\");\nconst Contracts_js_1 = require(\"../../sdk/Contracts.js\");\nconst Exports_js_2 = require(\"../../sdk/Exports.js\");\nconst ConversationConnectionConfig_js_1 = require(\"./ConversationConnectionConfig.js\");\nclass ConversationManager {\n constructor() {\n //\n this.privRequestParams = ConversationConnectionConfig_js_1.ConversationConnectionConfig.configParams;\n this.privErrors = ConversationConnectionConfig_js_1.ConversationConnectionConfig.restErrors;\n this.privHost = ConversationConnectionConfig_js_1.ConversationConnectionConfig.host;\n this.privApiVersion = ConversationConnectionConfig_js_1.ConversationConnectionConfig.apiVersion;\n this.privRestPath = ConversationConnectionConfig_js_1.ConversationConnectionConfig.restPath;\n this.privRestAdapter = new Exports_js_1.RestMessageAdapter({});\n }\n /**\n * Make a POST request to the Conversation Manager service endpoint to create or join a conversation.\n * @param args\n * @param conversationCode\n * @param callback\n * @param errorCallback\n */\n createOrJoin(args, conversationCode, cb, err) {\n try {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(args, \"args\");\n const languageCode = args.getProperty(Exports_js_2.PropertyId.SpeechServiceConnection_RecoLanguage, ConversationConnectionConfig_js_1.ConversationConnectionConfig.defaultLanguageCode);\n const nickname = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_Name, \"conversation_host\");\n const endpointHost = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_Host, this.privHost);\n const correlationId = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_CorrelationId);\n const subscriptionKey = args.getProperty(Exports_js_2.PropertyId.SpeechServiceConnection_Key);\n const subscriptionRegion = args.getProperty(Exports_js_2.PropertyId.SpeechServiceConnection_Region);\n const authToken = args.getProperty(Exports_js_2.PropertyId.SpeechServiceAuthorization_Token);\n Contracts_js_1.Contracts.throwIfNullOrWhitespace(languageCode, \"languageCode\");\n Contracts_js_1.Contracts.throwIfNullOrWhitespace(nickname, \"nickname\");\n Contracts_js_1.Contracts.throwIfNullOrWhitespace(endpointHost, \"endpointHost\");\n const queryParams = {};\n queryParams[this.privRequestParams.apiVersion] = this.privApiVersion;\n queryParams[this.privRequestParams.languageCode] = languageCode;\n queryParams[this.privRequestParams.nickname] = nickname;\n const headers = {};\n if (correlationId) {\n headers[this.privRequestParams.correlationId] = correlationId;\n }\n headers[this.privRequestParams.clientAppId] = ConversationConnectionConfig_js_1.ConversationConnectionConfig.clientAppId;\n if (conversationCode !== undefined) {\n queryParams[this.privRequestParams.roomId] = conversationCode;\n }\n else {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(subscriptionRegion, this.privErrors.authInvalidSubscriptionRegion);\n headers[this.privRequestParams.subscriptionRegion] = subscriptionRegion;\n if (subscriptionKey) {\n headers[this.privRequestParams.subscriptionKey] = subscriptionKey;\n }\n else if (authToken) {\n headers[this.privRequestParams.authorization] = `Bearer ${authToken}`;\n }\n else {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(subscriptionKey, this.privErrors.authInvalidSubscriptionKey);\n }\n }\n const config = {};\n config.headers = headers;\n this.privRestAdapter.options = config;\n const endpoint = `https://${endpointHost}${this.privRestPath}`;\n // TODO: support a proxy and certificate validation\n this.privRestAdapter.request(Exports_js_1.RestRequestType.Post, endpoint, queryParams, null).then((response) => {\n const requestId = Exports_js_1.RestMessageAdapter.extractHeaderValue(this.privRequestParams.requestId, response.headers);\n if (!response.ok) {\n if (!!err) {\n // get the error\n let errorMessage = this.privErrors.invalidCreateJoinConversationResponse.replace(\"{status}\", response.status.toString());\n let errMessageRaw;\n try {\n errMessageRaw = JSON.parse(response.data);\n errorMessage += ` [${errMessageRaw.error.code}: ${errMessageRaw.error.message}]`;\n }\n catch (e) {\n errorMessage += ` [${response.data}]`;\n }\n if (requestId) {\n errorMessage += ` ${requestId}`;\n }\n err(errorMessage);\n }\n return;\n }\n const conversation = JSON.parse(response.data);\n if (conversation) {\n conversation.requestId = requestId;\n }\n if (!!cb) {\n try {\n cb(conversation);\n }\n catch (e) {\n if (!!err) {\n err(e);\n }\n }\n cb = undefined;\n }\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n }).catch(() => { });\n }\n catch (error) {\n if (!!err) {\n if (error instanceof Error) {\n const typedError = error;\n err(typedError.name + \": \" + typedError.message);\n }\n else {\n err(error);\n }\n }\n }\n }\n /**\n * Make a DELETE request to the Conversation Manager service endpoint to leave the conversation.\n * @param args\n * @param sessionToken\n * @param callback\n */\n leave(args, sessionToken) {\n return new Promise((resolve, reject) => {\n try {\n Contracts_js_1.Contracts.throwIfNullOrUndefined(args, this.privErrors.invalidArgs.replace(\"{arg}\", \"config\"));\n Contracts_js_1.Contracts.throwIfNullOrWhitespace(sessionToken, this.privErrors.invalidArgs.replace(\"{arg}\", \"token\"));\n const endpointHost = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_Host, this.privHost);\n const correlationId = args.getProperty(Exports_js_2.PropertyId.ConversationTranslator_CorrelationId);\n const queryParams = {};\n queryParams[this.privRequestParams.apiVersion] = this.privApiVersion;\n queryParams[this.privRequestParams.sessionToken] = sessionToken;\n const headers = {};\n if (correlationId) {\n headers[this.privRequestParams.correlationId] = correlationId;\n }\n const config = {};\n config.headers = headers;\n this.privRestAdapter.options = config;\n const endpoint = `https://${endpointHost}${this.privRestPath}`;\n // TODO: support a proxy and certificate validation\n this.privRestAdapter.request(Exports_js_1.RestRequestType.Delete, endpoint, queryParams, null).then((response) => {\n if (!response.ok) {\n // ignore errors on delete\n }\n resolve();\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n }).catch(() => { });\n }\n catch (error) {\n if (error instanceof Error) {\n const typedError = error;\n reject(typedError.name + \": \" + typedError.message);\n }\n else {\n reject(error);\n }\n }\n });\n }\n}\nexports.ConversationManager = ConversationManager;\n\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"script","externalDependencies":[]}