Dela via


StatefulCallClient interface

Definierar de metoder som gör att CallClient-<xref:%40azure%2Fcommunication-calling%23CallClient> kan användas tillståndsfullt. Gränssnittet ger åtkomst till proportionellt tillstånd och tillåter även registrering av en hanterare för tillståndsändringshändelser. Tillståndsdefinition finns i CallClientState.

Tillståndsändringshändelser drivs av:

  • Returnerade data från <xref:%40azure%2Fcommunication-calling%23DeviceManager> API:er.
  • Returnerade data från <xref:%40azure%2Fcommunication-calling%23CallAgent> API:er.
  • Lyssnare ansluts automatiskt till olika azure-kommunikationssamtalsobjekt:
    • CallAgent "incomingCall"
    • CallAgent "callsUpdated"
    • DeviceManager "videoDevicesUpdated"
    • DeviceManager 'audioDevicesUpdated
    • DeviceManager "selectedMicrophoneChanged"
    • DeviceManager "selectedSpeakerChanged"
    • Anropa "stateChanged"
    • Anropa "idChanged"
    • Anropa "isMutedChanged"
    • Anropa "isScreenSharingOnChanged"
    • Anropa "remoteParticipantsUpdated"
    • Anropa "localVideoStreamsUpdated"
    • IncomingCall "callEnded"
    • RemoteParticipant "stateChanged"
    • RemoteParticipant "isMutedChanged"
    • RemoteParticipant "displayNameChanged"
    • RemoteParticipant "isSpeakingChanged"
    • RemoteParticipant "videoStreamsUpdated"
    • RemoteVideoStream "isAvailableChanged"
    • TranscriptionCallFeature "isTranscriptionActiveChanged"
    • RecordingCallFeature "isRecordingActiveChanged"
    • LocalRecordingCallFeature 'isLocalRecordingActiveChanged'
    • RaiseHandCallFeature 'raisedHandEvent'
    • RaiseHandCallFeature 'sänktHandEvent'
    • PPTLiveCallFeature 'isAciveChanged'
    • ReactionCallFeature "reaktion"
Extends

Metoder

createCallAgent([tokenCredential, options])

CallAgent används för att hantera anrop. För att skapa CallAgent skickar du ett CommunicationTokenCredential-objekt som tillhandahålls från SDK.

  • CallClient kan bara ha en aktiv CallAgent-instans i taget.
  • Du kan skapa en ny CallClient-instans för att skapa en ny CallAgent.
  • Du kan ta bort en CallClients aktuella aktiva CallAgent och anropa CallClients createCallAgent()-metod igen för att skapa en ny CallAgent.
createTeamsCallAgent([tokenCredential, options])

TeamsCallAgent används för att hantera samtal. Om du vill skapa TeamsCallAgent skickar du ett CommunicationTokenCredential-objekt som tillhandahålls från SDK.

  • CallClient kan bara ha en aktiv TeamsCallAgent-instans i taget.
  • Du kan skapa en ny CallClient-instans för att skapa en ny TeamsCallAgent.
  • Du kan ta bort en CallClients aktuella aktiva TeamsCallAgent och anropa Metoden CallClient createTeamsCallAgent() igen för att skapa en ny TeamsCallAgent.
createView(undefined | string, undefined | CommunicationIdentifier, CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState, CreateViewOptions)

Renderar en RemoteVideoStreamState eller LocalVideoStreamState och lagrar den resulterande VideoStreamRendererViewState under relevant RemoteVideoStreamState eller LocalVideoStreamState eller som en icke-underordnad vy i tillståndet. Under huven anropar <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.createView>.

Scenario 1: Rendera RemoteVideoStreamState

Scenario 2: Rendera LocalVideoStreamState för ett anrop

  • CallId krävs, deltagar-ID måste vara odefinierat och dataström av typen LocalVideoStreamState krävs.

  • <xref:%40azure%2Fcommunication-calling%23Call.localVideoStreams> måste redan startas med hjälp av <xref:%40azure%2Fcommunication-calling%23Call.startVideo>.

  • Resulterande VideoStreamRendererViewState lagras i det angivna callId-localVideoStreams- i CallClientState.

  • Scenario 2: Rendera LocalVideoStreamState inte en del av ett anrop (till exempel renderingskamera för lokal förhandsversion)

  • CallId måste vara odefinierat, deltagar-ID måste vara odefinierat och dataström av typen LocalVideoStreamState krävs.

  • Resulterande VideoStreamRendererViewState lagras i under den angivna LocalVideoStreamState i <xref:CallClientState.deviceManager.unparentedViews>

disposeView(undefined | string, undefined | CommunicationIdentifier, CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState)

Slutar återge en RemoteVideoStreamState eller LocalVideoStreamState och tar bort <xref:VideoStreamRendererView> från relevant RemoteVideoStreamState i CallClientState eller <xref:LocalVideoStream> i CallClientState eller lämplig <xref:CallClientState.deviceManager.unparentedViews> Under huven anropar <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.dispose>.

Det är viktigt att disposeView att rensa resurser korrekt.

Scenario 1: Ta bort RemoteVideoStreamState

  • CallId krävs, participantId krävs och dataström av typen RemoteVideoStreamState krävs

Scenario 2: Ta bort LocalVideoStreamState för ett anrop

  • CallId krävs, deltagar-ID måste vara odefinierat och dataström av typen LocalVideoStreamState krävs.

  • Scenario 2: Ta bort LocalVideoStreamState som inte ingår i ett anrop

  • CallId måste vara odefinierat, deltagar-ID måste vara odefinierat och dataström av typen LocalVideoStreamState krävs.

  • LocalVideoStreamState måste vara den ursprungliga som skickades till createView.

getState()

Innehåller alla tillstånd som vi kan proxy från CallClient <xref:%40azure%2Fcommunication-calling%23CallClient> som CallClientState CallClientState.

offStateChange((state: CallClientState) => void)

Tillåter avregistrering för "stateChanged"-händelser.

onStateChange((state: CallClientState) => void)

Tillåter att en hanterare registreras för "stateChanged"-händelser.

Ärvda metoder

dispose()

Tar bort den här CallClient, som även tar bort den associerade enhetshanteraren och den associerade anropsagenten.

feature<TFeature>(CallClientFeatureFactory<TFeature>)

Hämtar ett initierat och memorerat funktionsobjekt med utökat API. Kontrollera objektet Funktioner.* för alla tillgängliga funktioner för utökade anropsklienter i det här paketet.

getDeviceManager()

DeviceManager används för att hantera medieenheter som kameror, mikrofoner och högtalare.

Metodinformation

createCallAgent([tokenCredential, options])

CallAgent används för att hantera anrop. För att skapa CallAgent skickar du ett CommunicationTokenCredential-objekt som tillhandahålls från SDK.

  • CallClient kan bara ha en aktiv CallAgent-instans i taget.
  • Du kan skapa en ny CallClient-instans för att skapa en ny CallAgent.
  • Du kan ta bort en CallClients aktuella aktiva CallAgent och anropa CallClients createCallAgent()-metod igen för att skapa en ny CallAgent.
function createCallAgent(args: [tokenCredential, options]): Promise<DeclarativeCallAgent>

Parametrar

args

[tokenCredential, options]

Returer

createTeamsCallAgent([tokenCredential, options])

TeamsCallAgent används för att hantera samtal. Om du vill skapa TeamsCallAgent skickar du ett CommunicationTokenCredential-objekt som tillhandahålls från SDK.

  • CallClient kan bara ha en aktiv TeamsCallAgent-instans i taget.
  • Du kan skapa en ny CallClient-instans för att skapa en ny TeamsCallAgent.
  • Du kan ta bort en CallClients aktuella aktiva TeamsCallAgent och anropa Metoden CallClient createTeamsCallAgent() igen för att skapa en ny TeamsCallAgent.
function createTeamsCallAgent(args: [tokenCredential, options]): Promise<DeclarativeTeamsCallAgent>

Parametrar

args

[tokenCredential, options]

Returer

createView(undefined | string, undefined | CommunicationIdentifier, CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState, CreateViewOptions)

Renderar en RemoteVideoStreamState eller LocalVideoStreamState och lagrar den resulterande VideoStreamRendererViewState under relevant RemoteVideoStreamState eller LocalVideoStreamState eller som en icke-underordnad vy i tillståndet. Under huven anropar <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.createView>.

Scenario 1: Rendera RemoteVideoStreamState

Scenario 2: Rendera LocalVideoStreamState för ett anrop

  • CallId krävs, deltagar-ID måste vara odefinierat och dataström av typen LocalVideoStreamState krävs.

  • <xref:%40azure%2Fcommunication-calling%23Call.localVideoStreams> måste redan startas med hjälp av <xref:%40azure%2Fcommunication-calling%23Call.startVideo>.

  • Resulterande VideoStreamRendererViewState lagras i det angivna callId-localVideoStreams- i CallClientState.

  • Scenario 2: Rendera LocalVideoStreamState inte en del av ett anrop (till exempel renderingskamera för lokal förhandsversion)

  • CallId måste vara odefinierat, deltagar-ID måste vara odefinierat och dataström av typen LocalVideoStreamState krävs.

  • Resulterande VideoStreamRendererViewState lagras i under den angivna LocalVideoStreamState i <xref:CallClientState.deviceManager.unparentedViews>

function createView(callId: undefined | string, participantId: undefined | CommunicationIdentifier, stream: CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState, options?: CreateViewOptions): Promise<undefined | CreateViewResult>

Parametrar

callId

undefined | string

CallId för den angivna strömmen. Kan odefinieras om strömmen inte ingår i något anrop.

participantId

undefined | CommunicationIdentifier

<xref:RemoteParticipant.identifier> associerad med den angivna RemoteVideoStreamState. Kan vara odefinierat om du återger LocalVideoStreamState.

stream

CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState

LocalVideoStreamState eller RemoteVideoStreamState för att starta återgivningen.

options
CreateViewOptions

Alternativ som skickas till <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer>.

Returer

Promise<undefined | CreateViewResult>

disposeView(undefined | string, undefined | CommunicationIdentifier, CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState)

Slutar återge en RemoteVideoStreamState eller LocalVideoStreamState och tar bort <xref:VideoStreamRendererView> från relevant RemoteVideoStreamState i CallClientState eller <xref:LocalVideoStream> i CallClientState eller lämplig <xref:CallClientState.deviceManager.unparentedViews> Under huven anropar <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.dispose>.

Det är viktigt att disposeView att rensa resurser korrekt.

Scenario 1: Ta bort RemoteVideoStreamState

  • CallId krävs, participantId krävs och dataström av typen RemoteVideoStreamState krävs

Scenario 2: Ta bort LocalVideoStreamState för ett anrop

  • CallId krävs, deltagar-ID måste vara odefinierat och dataström av typen LocalVideoStreamState krävs.

  • Scenario 2: Ta bort LocalVideoStreamState som inte ingår i ett anrop

  • CallId måste vara odefinierat, deltagar-ID måste vara odefinierat och dataström av typen LocalVideoStreamState krävs.

  • LocalVideoStreamState måste vara den ursprungliga som skickades till createView.

function disposeView(callId: undefined | string, participantId: undefined | CommunicationIdentifier, stream: CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState)

Parametrar

callId

undefined | string

CallId för den angivna strömmen. Kan odefinieras om strömmen inte ingår i något anrop.

participantId

undefined | CommunicationIdentifier

<xref:RemoteParticipant.identifier> associerad med den angivna RemoteVideoStreamState. Det kan vara odefinierat om du tar bort LocalVideoStreamState.

stream

CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState

LocalVideoStreamState eller RemoteVideoStreamState att ta bort.

getState()

Innehåller alla tillstånd som vi kan proxy från CallClient <xref:%40azure%2Fcommunication-calling%23CallClient> som CallClientState CallClientState.

function getState(): CallClientState

Returer

offStateChange((state: CallClientState) => void)

Tillåter avregistrering för "stateChanged"-händelser.

function offStateChange(handler: (state: CallClientState) => void)

Parametrar

handler

(state: CallClientState) => void

Ursprunglig återanrop som ska avbrytas.

onStateChange((state: CallClientState) => void)

Tillåter att en hanterare registreras för "stateChanged"-händelser.

function onStateChange(handler: (state: CallClientState) => void)

Parametrar

handler

(state: CallClientState) => void

Återanrop för att ta emot tillståndet.

Ärvd metodinformation

dispose()

Tar bort den här CallClient, som även tar bort den associerade enhetshanteraren och den associerade anropsagenten.

function dispose(): Promise<void>

Returer

Promise<void>

Ärvd från CallClient.dispose

feature<TFeature>(CallClientFeatureFactory<TFeature>)

Hämtar ett initierat och memorerat funktionsobjekt med utökat API. Kontrollera objektet Funktioner.* för alla tillgängliga funktioner för utökade anropsklienter i det här paketet.

function feature<TFeature>(factory: CallClientFeatureFactory<TFeature>): TFeature

Parametrar

factory

CallClientFeatureFactory<TFeature>

Fabriken för funktionskonstruktorn för anropsklienten som tillhandahåller ett utökat API.

Returer

TFeature

ärvd från CallClient.feature

getDeviceManager()

DeviceManager används för att hantera medieenheter som kameror, mikrofoner och högtalare.

function getDeviceManager(): Promise<DeviceManager>

Returer

Promise<DeviceManager>

ärvd från CallClient.getDeviceManager