Conecte-se a modelos e aplicativos da Realtime API pelos protocolos AOQ, WebRTC e WebSocket. Este tópico aborda o fluxo de conexão, diagramas de sequência e exemplos de código para cada protocolo.
Pré-requisitos
- Antes de se conectar, verifique Supported models and applications
- Saiba mais sobre Token authentication
Experimente a demonstração
Use a demonstração para Android do Alibaba Cloud Model Studio para verificar rapidamente a conectividade AOQ. Baixe o APK e configure a chave de API e o workspaceId para testar os modelos selecionados.
Escaneie o QR code a seguir para baixar a demonstração:

Conexão AOQ
O protocolo AOQ é uma personalização avançada baseada no QUIC. Ele é ideal para aplicativos móveis nativos, suporta transmissão mista de áudio, vídeo e dados e possui resiliência integrada para redes instáveis. O exemplo a seguir usa a demonstração iOS Real-time omni (Omni) para detalhar o fluxo de conexão AOQ. Para obter detalhes sobre a API do SDK AOQ, consulte AOQ client SDK.
Diagrama de sequência geral

Crie o engine e defina os callbacks
AoqEngineDelegate para escutar callbacks como onConnectionStatusChange, onDataMsg e onError.
Inicie a captura e a reprodução de áudio
Obtenha as credenciais de conexão
O AppServer do aplicativo atua como proxy da solicitação para o Model Studio. Consulte Token authentication.
Configure os codecs e estabeleça a conexão
Configure os parâmetros do codec e chame connect:
Configure a sessão de IA
Após estabelecer a conexão com sucesso, envie um evento session.update. Para mais detalhes, consulte Client events:
Ative o envio de mídia após receber session.updated
O exemplo a seguir processa a resposta session.updated do modelo. Para mais detalhes, consulte Server events:
Desconecte e destrua o engine
Conexão WebRTC
O WebRTC não possui um SDK dedicado. Na web, conecte-se diretamente pela API JavaScript nativa do navegador. Em outros clientes, use uma biblioteca WebRTC open source ou um service RTC de terceiros compatível com o protocolo WebRTC padrão. O exemplo a seguir usa JavaScript na web.
Diagrama de fluxo geral

Estabeleça a conexão
Configure os parâmetros do modelo
Monitore as mensagens retornadas pelo modelo via DataChannel para manter a sequência correta da interação:
Envie e receba dados de mídia
As faixas de áudio e vídeo adicionadas durante a configuração da conexão (os canais de mídia RTP) transmitem dados automaticamente para o servidor.
- Áudio: transmitido diretamente pela faixa de áudio (RTP). Não são necessários eventos
input_audio_buffer.append. - Imagens: os quadros são enviados pela faixa de vídeo (RTP). Eventos
input_image_buffer.appendnão são suportados.
O WebRTC suporta apenas modos VAD no lado do servidor (
server_vad ou semantic_vad). O modo manual não é suportado.Código-fonte da demonstração
Pré-requisitos
- Um navegador moderno com suporte a WebRTC (como Chrome, Edge, Firefox ou Safari).
- Permissão de microfone concedida ao navegador.
- Devido às políticas de segurança de origem cruzada, o navegador não consegue enviar a solicitação de conexão diretamente ao servidor. Execute o comando curl em um terminal para estabelecer a conexão.
Execute a demonstração
Crie um arquivo HTML chamado webrtc_demo.html e copie o seguinte código para ele:
webrtc_demo.html.
Abra o arquivo em um navegador e siga estas etapas:
- Clique em Start session. A página gera automaticamente o Offer SDP e o comando curl correspondente.
- Clique em Copy curl command e execute o comando em um terminal. O comando retorna o Answer SDP.
- Cole o Answer SDP na caixa de texto Answer SDP da página e clique em Set Answer para estabelecer a conexão e iniciar a conversa por voz.