As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Integre o aplicativo, a web, a videochamada e o compartilhamento de tela de forma nativa em seu aplicativo
Para integrar o Amazon Connect no aplicativo, na web, nas videochamadas e no compartilhamento de tela com seu aplicativo:
-
Use a StartWebRTCContactAPI Amazon Connect para criar o contato.
-
Em seguida, use os detalhes retornados pela chamada de API para participar da chamada usando a biblioteca Amazon Chime cliente para iOS
, Android ou JavaScript .
Para obter informações sobre a criação de participantes adicionais, consulteHabilite chamadas multiusuário no aplicativo, pela web e por vídeo.
Conteúdo
Como um dispositivo cliente inicia uma chamada na aplicação ou na web
O diagrama a seguir mostra a sequência de eventos de um dispositivo cliente (aplicativo móvel ou navegador) para iniciar uma chamada na aplicação ou pela web.

-
O cliente usa a aplicação cliente (site ou aplicação) para iniciar uma chamada na aplicação ou na web.
-
O aplicativo cliente (site ou aplicativo móvel) ou servidor da web usa a Amazon Connect StartWebRTCContactAPI para iniciar o contato, passando quaisquer atributos ou contexto para Amazon Connect o.
-
O aplicativo cliente ingressa na chamada usando os detalhes retornados StartWebRTCContactna etapa 2.
-
(Opcional) O cliente usa a CreateParticipantConnectionAPI para receber uma
ConnectionToken
que é usada para enviar DTMF por meio da API. SendMessage -
O contato atinge o fluxo é encaminhado com base no fluxo e colocado na fila.
-
O atendente aceita o contato.
-
(Opcional) Se o vídeo estiver habilitado para o cliente e o atendente, eles poderão iniciar o vídeo.
-
(Opcional - não mostrado no diagrama) Participantes adicionais podem ser adicionados usando o CreateParticipantCreateParticipantConnection APIse.
Conceitos básicos
Estas são as etapas de alto nível para começar:
-
Use a StartWebRTCContactAPI para criar o contato. A API retorna os detalhes necessários para que o cliente Amazon Chime SDK participe da chamada.
-
Instancie o objeto
MeetingSessionConfiguration
cliente do Amazon Chime SDK usando as configurações retornadas por. StartWebRTCContact -
Instancie o
DefaultMeetingSession
cliente Amazon Chime SDKMeetingSessionConfiguration
com, que foi criado na etapa 2 para criar uma sessão de reunião com o cliente.-
iOS
let logger = ConsoleLogger(name: "logger") let meetingSession = DefaultMeetingSession( configuration: meetingSessionConfig, logger: logger )
-
Android
val logger = ConsoleLogger() val meetingSession = DefaultMeetingSession( configuration = meetingSessionConfig, logger = logger, context = applicationContext )
-
JavaScript
const logger = new ConsoleLogger('MeetingLogs', LogLevel.INFO); const deviceController = new DefaultDeviceController(logger); const configuration = new MeetingSessionConfiguration( meetingResponse, attendeeResponse ); const meetingSession = new DefaultMeetingSession( configuration, logger, deviceController );
-
-
Use o método
meetingSession.audioVideo.start()
para unir o contato WebRTC ao áudio.-
iOS/Android
meetingSession.audioVideo.start()
-
JavaScript
await meetingSession.audioVideo.start();
-
-
Use o método
meetingSession.audioVideo.stop()
para desligar o contato WebRTC.-
iOS/Android
meetingSession.audioVideo.stop()
-
JavaScript
meetingSession.audioVideo.stop();
-
Etapas opcionais
Para operações adicionais e documentação abrangente da API, consulte os guias de visão geral da API específicos da plataforma:
-
iOS: visão geral da API
-
Android: visão geral da API
-
JavaScript: Visão geral da API
Enviar tons DTMF
Para enviar o DTMF para a chamada, APIs são necessários dois Amazon Connect Participant Service: CreateParticipantConnectione respectivamente. SendMessage
nota
contentType
para a SendMessage API deve seraudio/dtmf
.
-
Invoque CreateParticipantConnectionpara recuperar
ConnectionToken
. (ParticipantToken
é necessário para chamar essa API. Você pode encontrá-la na StartWebRTCContactresposta.) -
Com o
ConnectionToken
, ligue SendMessagepara enviar dígitos DTMF.
Selecione dispositivos de áudio
Para selecionar o input/output dispositivo de áudio, você pode usar os métodos do cliente Amazon Chime SDK para Android e iOS ou os recursos nativos do iOS para iOS
iOS/Android
meetingSession.audioVideo.listAudioDevices() meetingSession.audioVideo.chooseAudioDevice(mediaDevice)
JavaScript
await meetingSession.audioVideo.listAudioInputDevices(); await meetingSession.audioVideo.listAudioOutputDevices(); await meetingSession.audioVideo.startAudioInput(device); await meetingSession.audioVideo.chooseAudioOutput(deviceId);
Silenciar e ativar o áudio
Para ativar e desativar o som, use meetingSession.audioVideo.realtimeLocalMute()
e meetingSession.audioVideo.realtimeLocalUnmute()
.
iOS/Android
meetingSession.audioVideo.realtimeLocalMute() meetingSession.audioVideo.realtimeLocalUnmute()
JavaScript
meetingSession.audioVideo.realtimeMuteLocalAudio(); meetingSession.audioVideo.realtimeUnmuteLocalAudio();
Iniciar vídeo próprio
Para iniciar o vídeo pessoal, use meetingSession.audioVideo.startLocalVideo()
o. Consulte os guias da API da biblioteca cliente para obter mais informações sobre como enumerar e escolher dispositivos específicos.
iOS/Android
meetingSession.audioVideo.startLocalVideo()
JavaScript
meetingSession.audioVideo.startLocalVideoTile();
Pare o vídeo pessoal
Para interromper o vídeo automático, use meetingSession.audioVideo.stopLocalVideo()
o.
iOS/Android
meetingSession.audioVideo.stopLocalVideo()
JavaScript
meetingSession.audioVideo.stopLocalVideoTile();
Ativar vídeo do agente
Para permitir o recebimento e o carregamento de vídeo do agente dentro do aplicativo, use meetingSession.audioVideo.startRemoteVideo()
o. Você também precisará implementar observadores de blocos de vídeo e vincular blocos de vídeo para exibir visualizações.
iOS/Android
meetingSession.audioVideo.startRemoteVideo() // Implement VideoTileObserver to handle video tiles meetingSession.audioVideo.addVideoTileObserver(observer) // In videoTileDidAdd callback: meetingSession.audioVideo.bindVideoView(videoView, tileId: tileState.tileId)
JavaScript
// Remote video is received automatically when available // Implement AudioVideoObserver to handle video tiles meetingSession.audioVideo.addObserver(observer); // In videoTileDidUpdate callback: meetingSession.audioVideo.bindVideoElement(tileId, videoElement);
Consulte os guias de SDK específicos da plataforma para obter detalhes completos da implementação do mosaico de vídeo.
Desativar vídeo do agente
Para impedir o recebimento e o carregamento de vídeo do agente dentro do aplicativo, use o. meetingSession.audioVideo.stopRemoteVideo()
iOS/Android
meetingSession.audioVideo.stopRemoteVideo() meetingSession.audioVideo.unbindVideoView(tileId)
JavaScript
meetingSession.audioVideo.unbindVideoElement(tileId);
Use mensagens de dados
Você pode usar mensagens de dados
iOS/Android
meetingSession.audioVideo.realtimeSendDataMessage(topic, data, lifetimeMs) meetingSession.audioVideo.addRealtimeDataMessageObserver(topic, observer)
JavaScript
meetingSession.audioVideo.realtimeSendDataMessage(topic, data, lifetimeMs); meetingSession.audioVideo.realtimeSubscribeToReceiveDataMessage(topic, callback);
Ouça os principais eventos
Você pode ouvir os eventos quando a participação de um contato termina por meio do audioVideoDidStop
observador. Os códigos de status específicos podem variar de acordo com a plataforma.
A chamada atinge a capacidade
Quando mais de 6 pessoas tentarem participar da chamada, outros participantes receberão o seguinte erro e não poderão participar até que outros saiam.
-
iOS:
MeetingSessionStatusCode.audioCallAtCapacity
ouMeetingSessionStatusCode.audioAuthenticationRejected
-
Android:
MeetingSessionStatusCode.AudioCallAtCapacity
ouMeetingSessionStatusCode.AudioAuthenticationRejected
-
JavaScript:
MeetingSessionStatusCode.AudioCallAtCapacity
ouMeetingSessionStatusCode.AudioAuthenticationRejected
Participante removido da chamada
Quando um participante é removido da chamada pelo agente, mas o contato continua para outros participantes, ele receberá o seguinte código de status. Observe que, se a remoção do participante levar ao término do contato, ele receberá esse status ou o status de término do contato.
-
iOS:
MeetingSessionStatusCode.audioServerHungup
ouMeetingSessionStatusCode.audioAuthenticationRejected
-
Android:
MeetingSessionStatusCode.AudioServerHungup
ouMeetingSessionStatusCode.AudioAuthenticationRejected
-
JavaScript:
MeetingSessionStatusCode.AudioAttendeeRemoved
ouMeetingSessionStatusCode.AudioAuthenticationRejected
O contato termina
Quando o contato real terminar completamente para todos os participantes, eles receberão o seguinte código de status.
-
iOS:
MeetingSessionStatusCode.audioCallEnded
-
Android:
MeetingSessionStatusCode.AudioCallEnded
-
JavaScript:
MeetingSessionStatusCode.AudioCallEnded