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
| create |
CallAgent används för att hantera anrop. För att skapa CallAgent skickar du ett CommunicationTokenCredential-objekt som tillhandahålls från SDK.
|
| create |
TeamsCallAgent används för att hantera samtal. Om du vill skapa TeamsCallAgent skickar du ett CommunicationTokenCredential-objekt som tillhandahålls från SDK.
|
| create |
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
|
| dispose |
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
Scenario 2: Ta bort LocalVideoStreamState för ett anrop
|
| get |
Innehåller alla tillstånd som vi kan proxy från CallClient <xref:%40azure%2Fcommunication-calling%23CallClient> som CallClientState CallClientState. |
| off |
Tillåter avregistrering för "stateChanged"-händelser. |
| on |
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>(Call |
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. |
| get |
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
Promise<DeclarativeCallAgent>
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
Promise<DeclarativeTeamsCallAgent>
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
- CallId krävs, participantId krävs och dataström av typen RemoteVideoStreamState krävs
- Resulterande VideoStreamRendererViewState lagras i det angivna callId och participantId i CallClientState
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.
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.
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