Descreve a máquina de estados de conexão do AOQ Client SDK e as chamadas de API correspondentes.
Diagrama de estados de conexão
O diagrama a seguir ilustra as transições de estado de conexão do AOQ Client SDK:
Diagrama de estados de conexão do AOQ Client SDK
Descrições dos estados
Estado | Valor do enum | Descrição |
|---|---|---|
Connecting | 1 | Estado atingido após a chamada de |
Connected | 2 | Conexão estabelecida. Mensagens de áudio, vídeo e dados são enviadas e recebidas normalmente. |
Failed | 3 | Erro de conexão (falha de autenticação, timeout, rejeição pelo servidor, entre outros). O SDK faz a transição automática para Disconnected. |
Disconnected | 0 | Estado inicial ou final após uma desconexão intencional ou inesperada. |
Regras de transição de estado
- O aplicativo chama
connect→ entra emConnecting. - Conexão bem-sucedida → transição de
ConnectingparaConnected. - Falha na conexão → transição de
ConnectingparaFailed; em seguida, o SDK passa automaticamente paraDisconnected. - O aplicativo chama
disconnect→ transição deConnectedparaDisconnected.
Failed é um estado transitório. Após o SDK disparar onConnectionStatusChange(Failed), ele transita automaticamente para Disconnected. A camada de aplicação não precisa chamar disconnect manualmente.
API connect
Chame connect para iniciar uma conexão com o AI Service. Utilize as credenciais de autenticação retornadas pelo endpoint allocate do AppServer.
Assinatura do método
Android:
0 indica que a chamada foi bem-sucedida (a conexão é estabelecida de forma assíncrona). < 0 indica falha.
Comportamento
- Dispara o callback
onConnectionStatusChange(connecting)imediatamente após a chamada. - Aciona o callback
onConnectionStatusChange(connected)se a conexão for estabelecida com sucesso. - Invoca o callback
onConnectionStatusChange(failed)caso ocorra falha na conexão.
API disconnect
Utilize disconnect para encerrar intencionalmente a conexão com o AI Service.
Assinatura do método
Android:
0 indica sucesso. < 0 sinaliza falha.
Comportamento
- Dispara o callback
onConnectionStatusChange(Disconnected)após a execução da chamada. - O engine não é liberado automaticamente. Chame
connectnovamente para reconectar. - A invocação de
disconnectsem uma conexão ativa é segura e retorna 0.