UNPKG

@azure/communication-call-automation

Version:
227 lines 9.04 kB
import type { CommunicationIdentifier, CommunicationUserIdentifier, MicrosoftTeamsUserIdentifier, MicrosoftTeamsAppIdentifier, PhoneNumberIdentifier } from "@azure/communication-common"; import type { CallConnectionStateModel, MediaStreamingSubscription, TranscriptionSubscription, MediaStreamingAudioChannelType, MediaStreamingContentType, AudioFormat } from "../generated/src/index.js"; export { CallConnectionStateModel, CallRejectReason, KnownCallRejectReason, KnownMediaStreamingAudioChannelType, KnownMediaStreamingContentType, KnownStreamingTransportType, RecognitionType, ChoiceResult, DtmfResult, SpeechResult, RecordingState, Tone, MediaStreamingAudioChannelType, MediaStreamingContentType, AudioFormat, TranscriptionUpdate, MediaStreamingUpdate, } from "../generated/src/models/index.js"; /** Properties of a call connection */ export interface CallConnectionProperties { /** The call connection id. */ callConnectionId?: string; /** The server call id. */ serverCallId?: string; /** * The source caller Id, a phone number, that's shown to the PSTN participant being invited. * Required only when calling a PSTN callee. */ sourceCallerIdNumber?: PhoneNumberIdentifier; /** Display name of the call if dialing out to a pstn number. */ sourceDisplayName?: string; /** Source identity. */ source?: CommunicationIdentifier; /** The targets of the call. */ targetParticipants?: CommunicationIdentifier[]; /** The state of the call connection. */ callConnectionState?: CallConnectionStateModel; /** The callback URL. */ callbackUrl?: string; /** The correlation ID. */ correlationId?: string; /** Identity of the answering entity. Only populated when identity is provided in the request. */ answeredby?: CommunicationUserIdentifier; /** Identity of the original Pstn target of an incoming Call. Only populated when the original target is a Pstn number. */ answeredFor?: PhoneNumberIdentifier; /** Media streaming subscription */ mediaStreamingSubscription?: MediaStreamingSubscription; /** Transcription Subscription. */ transcriptionSubscription?: TranscriptionSubscription; } /** Contract model of an ACS call participant */ export interface CallParticipant { /** Communication identifier of the participant */ identifier?: CommunicationIdentifier; /** Is participant muted */ isMuted?: boolean; /** Is participant on hold. */ isOnHold?: boolean; } /** The locator used for joining or taking action on a call. */ export interface CallLocator { id: string; kind: CallLocatorType; } /** Defines values for VoiceKind that the service accepts. */ export declare enum VoiceKind { /** Male */ Male = "male", /** Female */ Female = "female" } /** The PlaySource model. */ export interface PlaySource { /** @deprecated Not in use, instead use playsourcecacheid for similar functionality*/ playsourcacheid?: string; /** Sets the play source cache id.*/ playSourceCacheId?: string; } /** The FileSource model. */ export interface FileSource extends PlaySource { url: string; readonly kind: "fileSource"; } /** The TextSource model. */ export interface TextSource extends PlaySource { text: string; sourceLocale?: string; voiceKind?: VoiceKind; voiceName?: string; customVoiceEndpointId?: string; readonly kind: "textSource"; } /** The SsmlSource model. */ export interface SsmlSource extends PlaySource { ssmlText: string; customVoiceEndpointId?: string; readonly kind: "ssmlSource"; } /** A Dtmf Tone. */ export declare enum DtmfTone { /** Zero */ Zero = "zero", /** One */ One = "one", /** Two */ Two = "two", /** Three */ Three = "three", /** Four */ Four = "four", /** Five */ Five = "five", /** Six */ Six = "six", /** Seven */ Seven = "seven", /** Eight */ Eight = "eight", /** Nine */ Nine = "nine", /** A */ A = "a", /** B */ B = "b", /** C */ C = "c", /** D */ D = "d", /** Pound */ Pound = "pound", /** Asterisk */ Asterisk = "asterisk" } /** A Recognition Choice */ export interface RecognitionChoice { /** Identifier for a given choice */ label: string; /** List of phrases to recognize */ phrases: string[]; tone?: DtmfTone; } /** The type of the recognition that the service accepts. */ export declare enum RecognizeInputType { /** Dtmf */ Dtmf = "dtmf" } /** Call invitee details. */ export interface CallInvite { /** The Target's PhoneNumberIdentifier, CommunicationUserIdentifier, MicrosoftTeamsUserIdentifier or MicrosoftTeamsAppIdentifier. */ readonly targetParticipant: PhoneNumberIdentifier | CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier | MicrosoftTeamsAppIdentifier; /** Caller's phone number identifier. */ readonly sourceCallIdNumber?: PhoneNumberIdentifier; sourceDisplayName?: string; /** Used by customer to send custom context to targets. */ customCallingContext?: CustomCallingContext; } /** The locator type of a call. */ export type CallLocatorType = "serverCallLocator" | "groupCallLocator" | "roomCallLocator"; /** The content type of a call recording. */ export type RecordingContent = "audio" | "audioVideo"; /** The channel type of a call recording. */ export type RecordingChannel = "mixed" | "unmixed"; /** The format type of a call recording. */ export type RecordingFormat = "mp3" | "mp4" | "wav"; /** The format type of a call recording. */ export type RecordingKind = "azureCommunicationServices" | "teams" | "teamsCompliance"; /** The storage type of a call recording. */ export type RecordingStorageKind = "azureCommunicationServices" | "azureBlobStorage"; /** Channel affinity for a participant */ export interface ChannelAffinity { /** Channel number to which bitstream from a particular participant will be written. */ channel?: number; /** * The identifier for the participant whose bitstream will be written to the channel * represented by the channel number. */ targetParticipant: CommunicationIdentifier; } /** The recording storage */ export interface RecordingStorage { /** Defines the kind of recording storage */ recordingStorageKind: RecordingStorageKind; /** Uri of a container or a location within a container */ recordingDestinationContainerUrl?: string; } interface CustomCallingContextHeader { key: string; value: string; } /** VOIP header. */ export interface VoipHeader extends CustomCallingContextHeader { kind: "voip"; } /** SIP User To User header. */ export interface SipUserToUserHeader extends CustomCallingContextHeader { kind: "sipuui"; } /** SIP Custom header. */ export interface SipCustomHeader extends CustomCallingContextHeader { kind: "sipx"; } /** Custom Calling Context */ export type CustomCallingContext = (VoipHeader | SipUserToUserHeader | SipCustomHeader)[]; /** AI options for the call. */ export interface CallIntelligenceOptions { /** The identifier of the Cognitive Service resource assigned to this call. */ cognitiveServicesEndpoint?: string; } /** Options for media streaming. */ export interface MediaStreamingOptions { /** Polymorphic discriminator, which specifies the different types this object can be */ transportType: "websocket"; /** The audio channel type to stream, e.g., unmixed audio, mixed audio. */ audioChannelType: MediaStreamingAudioChannelType; /** The transport URL for media streaming. */ transportUrl?: string; contentType?: MediaStreamingContentType; /** A value indicating whether the media streaming should start immediately after the call is answered. */ startMediaStreaming?: boolean; /** A value indicating whether bidirectional streaming is enabled. */ enableBidirectional?: boolean; /** The audio format used for encoding, including sample rate and channel type. The default is Pcm16KMono. */ audioFormat?: AudioFormat; /** A value that indicates whether to stream the DTMF tones. */ enableDtmfTones?: boolean; } /** Options for media streaming. */ export interface TranscriptionOptions { /** Specifies the Locale used for transcription, e.g., en-CA or en-AU. */ locale: string; /** Polymorphic discriminator, which specifies the different types this object can be */ transportType: "websocket"; /** The URL used for live transcription transport. */ transportUrl?: string; /** The ID of the deployed custom model in GUID format. The GUID is generated by Azure Speech Studio, e.g., a259c255-1cdw-4ed7-a693-dd58563b6f6a. */ speechModelEndpointId?: string; /** Indicates whether the transcription should start immediately after the call is answered. */ startTranscription?: boolean; /** Enables intermediate results for the transcribed speech. */ enableIntermediateResults?: boolean; } //# sourceMappingURL=models.d.ts.map