UNPKG

@voice-ping/cognitive-services-speech

Version:

VoicePing Cognitive Services Speech SDK for JavaScript forked from Microsoft

1 lines 2.67 kB
{"version":3,"sources":["src/common.speech/Transcription/ConversationWebsocketMessageFormatter.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,iBAAiB,EAGjB,0BAA0B,EAE1B,OAAO,EACP,mBAAmB,EACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAEhF;;GAEG;AACH,qBAAa,qCAAsC,YAAW,0BAA0B;IAEpF;;OAEG;IACI,mBAAmB,2EAezB;IAED;;OAEG;IACI,qBAAqB,+DAc3B;CACJ","file":"ConversationWebsocketMessageFormatter.d.ts","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\nimport {\n ConnectionMessage,\n Deferred,\n IStringDictionary,\n IWebsocketMessageFormatter,\n MessageType,\n Promise,\n RawWebsocketMessage,\n} from \"../../common/Exports\";\nimport { ConversationConnectionMessage } from \"./ConversationConnectionMessage\";\n\n/**\n * Based off WebsocketMessageFormatter. The messages for Conversation Translator have some variations from the Speech messages.\n */\nexport class ConversationWebsocketMessageFormatter implements IWebsocketMessageFormatter {\n\n /**\n * Format incoming messages: text (speech partial/final, IM) or binary (tts)\n */\n public toConnectionMessage = (message: RawWebsocketMessage): Promise<ConversationConnectionMessage> => {\n const deferral = new Deferred<ConversationConnectionMessage>();\n\n try {\n if (message.messageType === MessageType.Text) {\n const incomingMessage: ConversationConnectionMessage = new ConversationConnectionMessage(message.messageType, message.textContent, {}, message.id);\n deferral.resolve(incomingMessage);\n } else if (message.messageType === MessageType.Binary) {\n deferral.resolve(new ConversationConnectionMessage(message.messageType, message.binaryContent, undefined, message.id));\n }\n } catch (e) {\n deferral.reject(`Error formatting the message. Error: ${e}`);\n }\n\n return deferral.promise();\n }\n\n /**\n * Format outgoing messages: text (commands or IM)\n */\n public fromConnectionMessage = (message: ConnectionMessage): Promise<RawWebsocketMessage> => {\n\n const deferral = new Deferred<RawWebsocketMessage>();\n\n try {\n if (message.messageType === MessageType.Text) {\n const payload = `${message.textBody ? message.textBody : \"\"}`;\n deferral.resolve(new RawWebsocketMessage(MessageType.Text, payload, message.id));\n }\n } catch (e) {\n deferral.reject(`Error formatting the message. ${e}`);\n }\n\n return deferral.promise();\n }\n}\n"]}