UNPKG

@voice-ping/cognitive-services-speech

Version:

VoicePing Cognitive Services Speech SDK for JavaScript forked from Microsoft

205 lines (204 loc) 7.29 kB
import { ConversationTranslatorRecognizer, IInternalConversation } from "../../common.speech/Exports"; import { IDisposable } from "../../common/Exports"; import { ConversationTranslator, Participant, PropertyCollection, SpeechTranslationConfig } from "../Exports"; import { Callback, IConversation } from "./IConversation"; import { IParticipant, IUser } from "./IParticipant"; export declare abstract class Conversation implements IConversation { abstract get authorizationToken(): string; abstract set authorizationToken(value: string); abstract get config(): SpeechTranslationConfig; abstract get conversationId(): string; abstract get properties(): PropertyCollection; abstract get speechRecognitionLanguage(): string; protected constructor(); /** * Create a conversation * @param speechConfig * @param cb * @param err */ static createConversationAsync(speechConfig: SpeechTranslationConfig, cb?: Callback, err?: Callback): Conversation; /** Start a conversation. */ abstract startConversationAsync(cb?: Callback, err?: Callback): void; /** Delete a conversation. After this no one will be able to join the conversation. */ abstract deleteConversationAsync(cb?: Callback, err?: Callback): void; /** End a conversation. */ abstract endConversationAsync(cb?: Callback, err?: Callback): void; /** Lock a conversation. This will prevent new participants from joining. */ abstract lockConversationAsync(cb?: Callback, err?: Callback): void; /** * Mute all other participants in the conversation. After this no other participants will * have their speech recognitions broadcast, nor be able to send text messages. */ abstract muteAllParticipantsAsync(cb?: Callback, err?: Callback): void; /** * Mute a participant. * @param userId A user identifier */ abstract muteParticipantAsync(userId: string, cb?: Callback, err?: Callback): void; /** * Remove a participant from a conversation using the user id, Participant or User object * @param userId A user identifier */ abstract removeParticipantAsync(userId: string | IParticipant | IUser, cb?: Callback, err?: Callback): void; /** Unlocks a conversation. */ abstract unlockConversationAsync(cb?: Callback, err?: Callback): void; /** Unmute all other participants in the conversation. */ abstract unmuteAllParticipantsAsync(cb?: Callback, err?: Callback): void; /** * Unmute a participant. * @param userId A user identifier */ abstract unmuteParticipantAsync(userId: string, cb?: Callback, err?: Callback): void; } export declare class ConversationImpl extends Conversation implements IDisposable { private privConfig; private privProperties; private privLanguage; private privToken; private privIsDisposed; private privRoom; private privManager; private privConversationRecognizer; private privConversationRecognizerConnection; private privIsConnected; private privParticipants; private privIsReady; private privConversationTranslator; private privErrors; private readonly privTextMessageMaxLength; set conversationTranslator(value: ConversationTranslator); get room(): IInternalConversation; get connection(): ConversationTranslatorRecognizer; get authorizationToken(): string; set authorizationToken(value: string); get config(): SpeechTranslationConfig; get conversationId(): string; get properties(): PropertyCollection; get speechRecognitionLanguage(): string; get isMutedByHost(): boolean; get isConnected(): boolean; get participants(): Participant[]; get me(): Participant; get host(): Participant; /** * Create a conversation impl * @param speechConfig */ constructor(speechConfig: SpeechTranslationConfig); /** * Create a new conversation as Host * @param cb * @param err */ createConversationAsync(cb?: Callback, err?: Callback): void; /** * Starts a new conversation as host. * @param cb * @param err */ startConversationAsync(cb?: Callback, err?: Callback): void; /** * Join a conversation as a participant. * @param conversation * @param nickname * @param lang * @param cb * @param err */ joinConversationAsync(conversationId: string, nickname: string, lang: string, cb?: Callback, err?: Callback): void; /** * Deletes a conversation * @param cb * @param err */ deleteConversationAsync(cb?: Callback, err?: Callback): void; /** * Issues a request to close the client websockets * @param cb * @param err */ endConversationAsync(cb?: Callback, err?: Callback): void; /** * Issues a request to lock the conversation * @param cb * @param err */ lockConversationAsync(cb?: Callback, err?: Callback): void; /** * Issues a request to mute the conversation * @param cb * @param err */ muteAllParticipantsAsync(cb?: Callback, err?: Callback): void; /** * Issues a request to mute a participant in the conversation * @param userId * @param cb * @param err */ muteParticipantAsync(userId: string, cb?: Callback, err?: Callback): void; /** * Issues a request to remove a participant from the conversation * @param userId * @param cb * @param err */ removeParticipantAsync(userId: string | IParticipant | IUser, cb?: Callback, err?: Callback): void; /** * Issues a request to unlock the conversation * @param cb * @param err */ unlockConversationAsync(cb?: Callback, err?: Callback): void; /** * Issues a request to unmute all participants in the conversation * @param cb * @param err */ unmuteAllParticipantsAsync(cb?: Callback, err?: Callback): void; /** * Issues a request to unmute a participant in the conversation * @param userId * @param cb * @param err */ unmuteParticipantAsync(userId: string, cb?: Callback, err?: Callback): void; /** * Send a text message * @param message * @param cb * @param err */ sendTextMessageAsync(message: string, cb?: Callback, err?: Callback): void; /** * Change nickname * @param message * @param cb * @param err */ changeNicknameAsync(nickname: string, cb?: Callback, err?: Callback): void; isDisposed(): boolean; dispose(reason?: string): void; /** websocket callbacks */ private onConnected; private onDisconnected; private onCanceled; private onParticipantUpdateCommandReceived; private onLockRoomCommandReceived; private onMuteAllCommandReceived; private onParticipantJoinCommandReceived; private onParticipantLeaveCommandReceived; private onTranslationReceived; private onParticipantsListReceived; private onConversationExpiration; private close; /** Helpers */ private get canSend(); private get canSendAsHost(); private handleCallback; private handleError; /** Participant Helpers */ private toParticipants; private toParticipant; }