StatefulCallClient interface
Define os métodos que permitem que CallClient <xref:%40azure%2Fcommunication-calling%23CallClient> seja utilizado com monitorização de estado. A interface fornece acesso ao estado proxied e também permite registar um processador para eventos de alteração de estado. Para a definição de estado, veja CallClientState.
Os eventos de alteração de estado são impulsionados por:
- Dados devolvidos de <xref:%40azure%2Fcommunication-calling%23DeviceManager> APIs.
- Dados devolvidos de <xref:%40azure%2Fcommunication-calling%23CallAgent> APIs.
- Os serviços de escuta anexados automaticamente a vários objetos de chamadas de comunicação do Azure:
- CallAgent "incomingCall"
- CallAgent "callsUpdated"
- DeviceManager "videoDevicesUpdated"
- DeviceManager 'audioDevicesUpdated
- DeviceManager "selectedMicrophoneChanged"
- DeviceManager "selectedSpeakerChanged"
- Chamar "stateChanged"
- Chamar "idChanged"
- Chamar "isMutedChanged"
- Chamar "isScreenSharingOnChanged"
- Chamar "remoteParticipantsUpdated"
- Chamar "localVideoStreamsUpdated"
- IncomingCall "callEnded"
- RemoteParticipant "stateChanged"
- RemoteParticipant "isMutedChanged"
- RemoteParticipant "displayNameChanged"
- RemoteParticipant "isSpeakingChanged"
- RemoteParticipant "videoStreamsUpdated"
- RemoteVideoStream "isAvailableChanged"
- TranscriptionCallFeature "isTranscriptionActiveChanged"
- RecordingCallFeature "isRecordingActiveChanged"
- Extends
Métodos
create |
Compõe um RemoteVideoStreamState ou LocalVideoStreamState e armazena o VideoStreamRendererViewState resultante no RemoteVideoStreamState ou LocalVideoStreamState relevante ou como vista não preparada no estado. Debaixo dos bastidores chama <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.createView>. Cenário 1: Compor RemoteVideoStreamState
Cenário 2: Compor LocalVideoStreamState para uma chamada
|
dispose |
Deixa de compor um RemoteVideoStreamState ou LocalVideoStreamState e remove o <xref:VideoStreamRendererView> do RemoteVideoStreamState relevante em CallClientState ou <xref:LocalVideoStream> em CallClientState ou adequado <xref:CallClientState.deviceManager.unparentedViews> Sob as chamadas <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.dispose>de bastidor. É importante eliminarVer para limpar os recursos corretamente. Cenário 1: Eliminar RemoteVideoStreamState
Cenário 2: Eliminar LocalVideoStreamState para uma chamada
|
get |
Contém todo o estado em que poderíamos utilizar o proxy de CallClient <xref:%40azure%2Fcommunication-calling%23CallClient> como CallClientState CallClientState. |
off |
Permite anular o registo de eventos "stateChanged". |
on |
Permite que um processador seja registado para eventos "stateChanged". |
Métodos Herdados
create |
O CallAgent é utilizado para processar chamadas. Para criar o CallAgent, transmita um objeto CommunicationTokenCredential fornecido a partir do SDK.
|
create |
O TeamsCallAgent é utilizado para processar chamadas do Teams. Para criar o TeamsCallAgent, transmita um objeto CommunicationTokenCredential fornecido a partir do SDK.
|
feature<TFeature>(Call |
Obtém um objeto de Funcionalidade inicializado e memorando com a API expandida. Verifique o objeto Funcionalidades.* para ver todas as funcionalidades de cliente de chamada alargada disponíveis neste pacote. |
get |
O DeviceManager é utilizado para processar dispositivos multimédia, como câmaras, microfones e altifalantes. |
Detalhes de Método
createView(undefined | string, undefined | CommunicationIdentifier, LocalVideoStreamState | RemoteVideoStreamState, CreateViewOptions)
Compõe um RemoteVideoStreamState ou LocalVideoStreamState e armazena o VideoStreamRendererViewState resultante no RemoteVideoStreamState ou LocalVideoStreamState relevante ou como vista não preparada no estado. Debaixo dos bastidores chama <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.createView>.
Cenário 1: Compor RemoteVideoStreamState
- CallId é necessário, participantId é necessário e é necessário um fluxo do tipo RemoteVideoStreamState
- O VideoStreamRendererViewState resultante é armazenado no callId e no participantId indicados em CallClientState
Cenário 2: Compor LocalVideoStreamState para uma chamada
O CallId é obrigatório, o participantId tem de ser indefinido e é necessário um fluxo do tipo LocalVideoStreamState.
O <xref:%40azure%2Fcommunication-calling%23Call.localVideoStreams> tem de já ser iniciado com <xref:%40azure%2Fcommunication-calling%23Call.startVideo>.
O VideoStreamRendererViewState resultante é armazenado no callId localVideoStreams em CallClientState.
Cenário 2: Compor LocalVideoStreamState não faz parte de uma chamada (por exemplo, câmara de composição para pré-visualização local)
O CallId tem de ser indefinido, o participantId tem de ser indefinido e é necessário um fluxo do tipo LocalVideoStreamState.
O VideoStreamRendererViewState resultante é armazenado no localVideoStreamState indicado em <xref:CallClientState.deviceManager.unparentedViews>
function createView(callId: undefined | string, participantId: undefined | CommunicationIdentifier, stream: LocalVideoStreamState | RemoteVideoStreamState, options?: CreateViewOptions): Promise<undefined | CreateViewResult>
Parâmetros
- callId
-
undefined | string
CallId para o fluxo especificado. Pode ser indefinido se o fluxo não fizer parte de qualquer chamada.
- participantId
-
undefined | CommunicationIdentifier
<xref:RemoteParticipant.identifier> associado ao RemoteVideoStreamState especificado. Pode ser indefinido se estiver a compor LocalVideoStreamState.
LocalVideoStreamState ou RemoteVideoStreamState para iniciar a composição.
- options
- CreateViewOptions
Opções que são transmitidas para o <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer>.
Devoluções
Promise<undefined | CreateViewResult>
disposeView(undefined | string, undefined | CommunicationIdentifier, LocalVideoStreamState | RemoteVideoStreamState)
Deixa de compor um RemoteVideoStreamState ou LocalVideoStreamState e remove o <xref:VideoStreamRendererView> do RemoteVideoStreamState relevante em CallClientState ou <xref:LocalVideoStream> em CallClientState ou adequado <xref:CallClientState.deviceManager.unparentedViews> Sob as chamadas <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.dispose>de bastidor.
É importante eliminarVer para limpar os recursos corretamente.
Cenário 1: Eliminar RemoteVideoStreamState
- CallId é necessário, participantId é necessário e é necessário um fluxo do tipo RemoteVideoStreamState
Cenário 2: Eliminar LocalVideoStreamState para uma chamada
O CallId é obrigatório, o participantId tem de ser indefinido e é necessário um fluxo do tipo LocalVideoStreamState.
Cenário 2: Eliminar LocalVideoStreamState não faz parte de uma chamada
O CallId tem de ser indefinido, o participantId tem de ser indefinido e é necessário um fluxo do tipo LocalVideoStreamState.
LocalVideoStreamState tem de ser o original transmitido para createView.
function disposeView(callId: undefined | string, participantId: undefined | CommunicationIdentifier, stream: LocalVideoStreamState | RemoteVideoStreamState)
Parâmetros
- callId
-
undefined | string
CallId para o fluxo especificado. Pode ser indefinido se o fluxo não fizer parte de qualquer chamada.
- participantId
-
undefined | CommunicationIdentifier
<xref:RemoteParticipant.identifier> associado ao RemoteVideoStreamState especificado. Pode ser indefinido se eliminar LocalVideoStreamState.
LocalVideoStreamState ou RemoteVideoStreamState a eliminar.
getState()
Contém todo o estado em que poderíamos utilizar o proxy de CallClient <xref:%40azure%2Fcommunication-calling%23CallClient> como CallClientState CallClientState.
function getState(): CallClientState
Devoluções
offStateChange((state: CallClientState) => void)
Permite anular o registo de eventos "stateChanged".
function offStateChange(handler: (state: CallClientState) => void)
Parâmetros
- handler
-
(state: CallClientState) => void
Chamada de retorno original a anular a subscrição.
onStateChange((state: CallClientState) => void)
Permite que um processador seja registado para eventos "stateChanged".
function onStateChange(handler: (state: CallClientState) => void)
Parâmetros
- handler
-
(state: CallClientState) => void
Chamada de retorno para receber o estado.
Detalhes do Método Herdado
createCallAgent(CommunicationTokenCredential, CallAgentOptions)
O CallAgent é utilizado para processar chamadas. Para criar o CallAgent, transmita um objeto CommunicationTokenCredential fornecido a partir do SDK.
- O CallClient só pode ter uma instância CallAgent ativa de cada vez.
- Pode criar uma nova instância CallClient para criar um novo CallAgent.
- Pode eliminar o CallAgent ativo atual de um CallClient e chamar novamente o método createCallAgent() do CallClient para criar um novo CallAgent.
function createCallAgent(tokenCredential: CommunicationTokenCredential, options?: CallAgentOptions): Promise<CallAgent>
Parâmetros
- tokenCredential
- CommunicationTokenCredential
A credencial do token. Utilize AzureCommunicationTokenCredential de @azure/communication-common para criar uma credencial.
- options
- CallAgentOptions
CallAgentOptions para opções adicionais, como o nome a apresentar.
Devoluções
Promise<CallAgent>
Herdado de CallClient.createCallAgent
createTeamsCallAgent(CommunicationTokenCredential, TeamsCallAgentOptions)
O TeamsCallAgent é utilizado para processar chamadas do Teams. Para criar o TeamsCallAgent, transmita um objeto CommunicationTokenCredential fornecido a partir do SDK.
- O CallClient só pode ter uma instância ativa do TeamsCallAgent de cada vez.
- Pode criar uma nova instância CallClient para criar um novo TeamsCallAgent.
- Pode eliminar o TeamsCallAgent ativo atual de um CallClient e chamar novamente o método createTeamsCallAgent() do CallClient para criar um novo TeamsCallAgent.
function createTeamsCallAgent(tokenCredential: CommunicationTokenCredential, options?: TeamsCallAgentOptions): Promise<TeamsCallAgent>
Parâmetros
- tokenCredential
- CommunicationTokenCredential
A credencial do token. Utilize AzureCommunicationTokenCredential de @azure/communication-common para criar uma credencial.
- options
- TeamsCallAgentOptions
CallAgentOptions para opções adicionais, como o nome a apresentar.
Devoluções
Promise<TeamsCallAgent>
Herdado de CallClient.createTeamsCallAgent
feature<TFeature>(CallClientFeatureFactory<TFeature>)
Obtém um objeto de Funcionalidade inicializado e memorando com a API expandida. Verifique o objeto Funcionalidades.* para ver todas as funcionalidades de cliente de chamada alargada disponíveis neste pacote.
function feature<TFeature>(factory: CallClientFeatureFactory<TFeature>): TFeature
Parâmetros
- factory
-
CallClientFeatureFactory<TFeature>
A fábrica do construtor de funcionalidades cliente de chamada que fornece uma API expandida.
Devoluções
TFeature
Herdado de CallClient.feature
getDeviceManager()
O DeviceManager é utilizado para processar dispositivos multimédia, como câmaras, microfones e altifalantes.
function getDeviceManager(): Promise<DeviceManager>
Devoluções
Promise<DeviceManager>
Herdado de CallClient.getDeviceManager