Compartir a través de


StatefulCallClient interface

Define los métodos que permiten usar callClient <xref:%40azure%2Fcommunication-calling%23CallClient> con estado. La interfaz proporciona acceso al estado proxy y también permite registrar un controlador para eventos de cambio de estado. Para obtener la definición de estado, consulte CallClientState.

Los eventos de cambio de estado se controlan mediante:

  • Se devuelven datos de las API de <xref:%40azure%2Fcommunication-calling%23DeviceManager>.
  • Se devuelven datos de las API de <xref:%40azure%2Fcommunication-calling%23CallAgent>.
  • Los agentes de escucha se adjuntan automáticamente a varios objetos de llamada de comunicación de Azure:
    • CallAgent 'incomingCall'
    • CallAgent 'llamadasActualizadas'
    • DeviceManager 'videoDevicesUpdated'
    • DeviceManager 'audioDevicesUpdated
    • DeviceManager "selectedMicrophoneChanged"
    • DeviceManager "selectedSpeakerChanged"
    • Llamar a 'stateChanged'
    • Llamar a 'idChanged'
    • Llamar a 'isMutedChanged'
    • Llame a 'isScreenSharingOnChanged'
    • Llame a "remoteParticipantsUpdated"
    • Llame a "localVideoStreamsUpdated"
    • IncomingCall 'callEnded'
    • RemoteParticipant 'estadoCambiado'
    • RemoteParticipant 'isMutedChanged'
    • RemoteParticipant 'displayNameChanged'
    • RemoteParticipant 'isSpeakingChanged'
    • RemoteParticipant 'videoStreamsUpdated'
    • RemoteVideoStream 'isAvailableChanged'
    • TranscriptionCallFeature 'isTranscriptionActiveChanged'
    • RecordingCallFeature 'isRecordingActiveChanged'
    • LocalRecordingCallFeature 'isLocalRecordingActiveChanged'
    • RaiseHandCallFeature 'raisedHandEvent'
    • RaiseHandCallFeature 'loweredHandEvent'
    • PPTLiveCallFeature 'isAciveChanged'
    • ReactionCallFeature 'reacción'
Extends

Métodos

createCallAgent([tokenCredential, options])

CallAgent se usa para controlar las llamadas. Para crear el CallAgent, pase un objeto CommunicationTokenCredential proporcionado por el SDK.

  • CallClient solo puede tener una instancia activa de CallAgent a la vez.
  • Puede crear una nueva instancia de CallClient para crear un nuevo CallAgent.
  • Puede deshacerse del CallAgent activo actual de un CallClient y volver a llamar al método createCallAgent() de CallClient para crear un nuevo CallAgent.
createTeamsCallAgent([tokenCredential, options])

TeamsCallAgent se usa para controlar las llamadas. Para crear TeamsCallAgent, pase un objeto CommunicationTokenCredential proporcionado desde el SDK.

  • CallClient solo puede tener una instancia activa de TeamsCallAgent a la vez.
  • Puede crear una nueva instancia de CallClient para crear un nuevo TeamsCallAgent.
  • Puede deshacerse del TeamsCallAgent activo actual de CallClient y volver a llamar al método createTeamsCallAgent() de CallClient para crear un nuevo TeamsCallAgent.
createView(undefined | string, undefined | CommunicationIdentifier, CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState, CreateViewOptions)

Representa un RemoteVideoStreamState o LocalVideoStreamState y almacena el VideoStreamRendererViewState resultante en el RemoteVideoStreamState o LocalVideoStreamState pertinente o como vista no primaria en el estado. Bajo el capó llama <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.createView>.

Escenario 1: Render RemoteVideoStreamState

  • CallId es necesario, participantId es necesario y stream de tipo RemoteVideoStreamState es obligatorio
  • El VideoStreamRendererViewState resultante se almacena en el callId y el participantId especificados en CallClientState

Escenario 2: Representación de LocalVideoStreamState para una llamada

  • CallId es necesario, participantId debe ser undefined y se requiere una secuencia de tipo LocalVideoStreamState.

  • El <xref:%40azure%2Fcommunication-calling%23Call.localVideoStreams> ya debe haber comenzado usando <xref:%40azure%2Fcommunication-calling%23Call.startVideo>.

  • El VideoStreamRendererViewState resultante se almacena en el callId localVideoStreams especificado en CallClientState.

  • Escenario 2: Representación de LocalVideoStreamState que no forma parte de una llamada (ejemplo de representación de la cámara para la vista previa local)

  • CallId debe ser undefined, participantId debe ser undefined y se requiere una secuencia de tipo LocalVideoStreamState.

  • El VideoStreamRendererViewState resultante se almacena en el LocalVideoStreamState especificado en <xref:CallClientState.deviceManager.unparentedViews>

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

Detiene la representación de RemoteVideoStreamState o LocalVideoStreamState y quita el <xref:VideoStreamRendererView> del RemoteVideoStreamState pertinente en CallClientState o <xref:LocalVideoStream> en CallClientState o en las llamadas en segundo plano adecuadas <xref:CallClientState.deviceManager.unparentedViews><xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.dispose>.

Es importante disposeView para limpiar los recursos correctamente.

Escenario 1: Eliminación de RemoteVideoStreamState

  • CallId es necesario, participantId es necesario y stream de tipo RemoteVideoStreamState es obligatorio

Escenario 2: Eliminación de LocalVideoStreamState para una llamada

  • CallId es necesario, participantId debe ser undefined y se requiere una secuencia de tipo LocalVideoStreamState.

  • Escenario 2: Eliminar LocalVideoStreamState que no forma parte de una llamada

  • CallId debe ser undefined, participantId debe ser undefined y se requiere una secuencia de tipo LocalVideoStreamState.

  • LocalVideoStreamState debe ser el original que se pasa a createView.

getState()

Contiene todo el estado que podríamos proxy de CallClient <xref:%40azure%2Fcommunication-calling%23CallClient> como CallClientState CallClientState.

offStateChange((state: CallClientState) => void)

Permite anular el registro de eventos "stateChanged".

onStateChange((state: CallClientState) => void)

Permite registrar un controlador para eventos "stateChanged".

Métodos heredados

dispose()

Elimina este CallClient, que también elimina el administrador de dispositivos asociado y el agente de llamadas asociado.

feature<TFeature>(CallClientFeatureFactory<TFeature>)

Recupera un objeto Feature inicializado y memoizado con la API extendida. Compruebe el objeto Features.* para ver todas las funciones de cliente de llamadas extendidas disponibles en este paquete.

getDeviceManager()

El DeviceManager se utiliza para manejar dispositivos multimedia como cámaras, micrófonos y altavoces.

Detalles del método

createCallAgent([tokenCredential, options])

CallAgent se usa para controlar las llamadas. Para crear el CallAgent, pase un objeto CommunicationTokenCredential proporcionado por el SDK.

  • CallClient solo puede tener una instancia activa de CallAgent a la vez.
  • Puede crear una nueva instancia de CallClient para crear un nuevo CallAgent.
  • Puede deshacerse del CallAgent activo actual de un CallClient y volver a llamar al método createCallAgent() de CallClient para crear un nuevo CallAgent.
function createCallAgent(args: [tokenCredential, options]): Promise<DeclarativeCallAgent>

Parámetros

args

[tokenCredential, options]

Devoluciones

createTeamsCallAgent([tokenCredential, options])

TeamsCallAgent se usa para controlar las llamadas. Para crear TeamsCallAgent, pase un objeto CommunicationTokenCredential proporcionado desde el SDK.

  • CallClient solo puede tener una instancia activa de TeamsCallAgent a la vez.
  • Puede crear una nueva instancia de CallClient para crear un nuevo TeamsCallAgent.
  • Puede deshacerse del TeamsCallAgent activo actual de CallClient y volver a llamar al método createTeamsCallAgent() de CallClient para crear un nuevo TeamsCallAgent.
function createTeamsCallAgent(args: [tokenCredential, options]): Promise<DeclarativeTeamsCallAgent>

Parámetros

args

[tokenCredential, options]

Devoluciones

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

Representa un RemoteVideoStreamState o LocalVideoStreamState y almacena el VideoStreamRendererViewState resultante en el RemoteVideoStreamState o LocalVideoStreamState pertinente o como vista no primaria en el estado. Bajo el capó llama <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.createView>.

Escenario 1: Render RemoteVideoStreamState

  • CallId es necesario, participantId es necesario y stream de tipo RemoteVideoStreamState es obligatorio
  • El VideoStreamRendererViewState resultante se almacena en el callId y el participantId especificados en CallClientState

Escenario 2: Representación de LocalVideoStreamState para una llamada

  • CallId es necesario, participantId debe ser undefined y se requiere una secuencia de tipo LocalVideoStreamState.

  • El <xref:%40azure%2Fcommunication-calling%23Call.localVideoStreams> ya debe haber comenzado usando <xref:%40azure%2Fcommunication-calling%23Call.startVideo>.

  • El VideoStreamRendererViewState resultante se almacena en el callId localVideoStreams especificado en CallClientState.

  • Escenario 2: Representación de LocalVideoStreamState que no forma parte de una llamada (ejemplo de representación de la cámara para la vista previa local)

  • CallId debe ser undefined, participantId debe ser undefined y se requiere una secuencia de tipo LocalVideoStreamState.

  • El VideoStreamRendererViewState resultante se almacena en el LocalVideoStreamState especificado en <xref:CallClientState.deviceManager.unparentedViews>

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

Parámetros

callId

undefined | string

CallId para la secuencia dada. Puede ser undefined si la secuencia no forma parte de ninguna llamada.

participantId

undefined | CommunicationIdentifier

<xref:RemoteParticipant.identifier> asociado con el RemoteVideoStreamState dado. Podría ser undefined si se representa LocalVideoStreamState.

stream

CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState

LocalVideoStreamState o RemoteVideoStreamState para iniciar la representación.

options
CreateViewOptions

Las opciones que se pasan al <xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer>archivo .

Devoluciones

Promise<undefined | CreateViewResult>

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

Detiene la representación de RemoteVideoStreamState o LocalVideoStreamState y quita el <xref:VideoStreamRendererView> del RemoteVideoStreamState pertinente en CallClientState o <xref:LocalVideoStream> en CallClientState o en las llamadas en segundo plano adecuadas <xref:CallClientState.deviceManager.unparentedViews><xref:%40azure%2Fcommunication-calling%23VideoStreamRenderer.dispose>.

Es importante disposeView para limpiar los recursos correctamente.

Escenario 1: Eliminación de RemoteVideoStreamState

  • CallId es necesario, participantId es necesario y stream de tipo RemoteVideoStreamState es obligatorio

Escenario 2: Eliminación de LocalVideoStreamState para una llamada

  • CallId es necesario, participantId debe ser undefined y se requiere una secuencia de tipo LocalVideoStreamState.

  • Escenario 2: Eliminar LocalVideoStreamState que no forma parte de una llamada

  • CallId debe ser undefined, participantId debe ser undefined y se requiere una secuencia de tipo LocalVideoStreamState.

  • LocalVideoStreamState debe ser el original que se pasa a createView.

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

Parámetros

callId

undefined | string

CallId para la secuencia dada. Puede ser undefined si la secuencia no forma parte de ninguna llamada.

participantId

undefined | CommunicationIdentifier

<xref:RemoteParticipant.identifier> asociado con el RemoteVideoStreamState dado. Podría ser undefined si se elimina LocalVideoStreamState.

stream

CallFeatureStreamState | RemoteVideoStreamState | LocalVideoStreamState

LocalVideoStreamState o RemoteVideoStreamState que se van a eliminar.

getState()

Contiene todo el estado que podríamos proxy de CallClient <xref:%40azure%2Fcommunication-calling%23CallClient> como CallClientState CallClientState.

function getState(): CallClientState

Devoluciones

offStateChange((state: CallClientState) => void)

Permite anular el registro de eventos "stateChanged".

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

Parámetros

handler

(state: CallClientState) => void

Devolución de llamada original que se va a cancelar la suscripción.

onStateChange((state: CallClientState) => void)

Permite registrar un controlador para eventos "stateChanged".

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

Parámetros

handler

(state: CallClientState) => void

Devolución de llamada para recibir el estado.

Detalles de los métodos heredados

dispose()

Elimina este CallClient, que también elimina el administrador de dispositivos asociado y el agente de llamadas asociado.

function dispose(): Promise<void>

Devoluciones

Promise<void>

Heredado de CallClient.dispose

feature<TFeature>(CallClientFeatureFactory<TFeature>)

Recupera un objeto Feature inicializado y memoizado con la API extendida. Compruebe el objeto Features.* para ver todas las funciones de cliente de llamadas extendidas disponibles en este paquete.

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

Parámetros

factory

CallClientFeatureFactory<TFeature>

El generador del constructor de características de cliente de llamadas que proporciona una API extendida.

Devoluciones

TFeature

heredado de CallClient.feature

getDeviceManager()

El DeviceManager se utiliza para manejar dispositivos multimedia como cámaras, micrófonos y altavoces.

function getDeviceManager(): Promise<DeviceManager>

Devoluciones

Promise<DeviceManager>

heredado de CallClient.getDeviceManager