Qwen-LiveTranslate-Realtime Conexión mediante AOQ
Ámbito de aplicación
Este documento está dirigido a la serie Qwen-LiveTranslate-Realtime; consulte Traducción de audio y video en tiempo real para ver la lista de modelos. Los ejemplos de esta página usan qwen3.8-livetranslate-flash-realtime. La configuración y los campos de eventos difieren para qwen3.5-livetranslate-flash-realtime; consulte Eventos del cliente.
- Use la API Key y el ID del espacio de trabajo correspondientes a la región y al espacio de trabajo seleccionados.
-
Dominio de Pekín:
{WorkspaceId}.cn-beijing.maas.aliyuncs.com; dominio de Singapur:{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com. - Almacene la API Key únicamente en el servidor. No la incluya en una aplicación móvil ni en una aplicación de navegador.
- Al capturar audio con un micrófono, solicite los permisos de micrófono de acuerdo con los requisitos de la plataforma.
- Descargue el SDK de su plataforma desde Descargas del SDK.
Autenticación y credenciales de conexión
{WorkspaceId} en el dominio por el ID de su espacio de trabajo. Para otra región, use el dominio correspondiente indicado arriba. clientIp es opcional. Si se omite, el gateway usa la dirección IP desde la que recibe la solicitud.
-d '{}' en el cuerpo de la solicitud por -d '{"clientIp":"<CLIENT_PUBLIC_IP>"}'.
Campos de la solicitud
Configuración | Valor | Descripción |
|---|---|---|
endpoint | Seleccionar el dominio del endpoint para su caso de uso | Especifique el dominio del endpoint. Para obtener más información, consulte Seleccionar una región, un ámbito de implementación y un endpoint. Si usa Token Plan, establezca |
Content-Type |
| Tipo de medio del mensaje |
Authorization |
| Su API Key |
x-dashscope-rtc-transport |
| Seleccionar el protocolo AOQ |
clientIp | Dirección IP pública del cliente | Opcional. Si se omite, el servicio usa la dirección IP desde la que el gateway recibe la solicitud. Si se especifica, usa clientIp. El servicio selecciona el mejor endpoint de Relay según la dirección IP del cliente. |
Ejemplo de respuesta
Campos de la respuesta
Field | Description |
|---|---|
sid | Identificador único de la sesión. |
aoqTokenForClient | Token de conexión del cliente. Pase este valor al campo token del SDK. |
clientRelayEndpoints | Arreglo de endpoints de Relay. Cada elemento del ejemplo de respuesta contiene los siguientes campos:
Propiedades endpointDirección del endpoint de Relay.portPuerto del endpoint de Relay.route_indexEl ejemplo de iOS que se muestra a continuación usa el índice del arreglo cuando este campo está ausente. |
clientRelayCertFingerprint | Huella del certificado TLS de Relay. |
sidExpiresInSecs | Tiempo de vencimiento de la sesión, en segundos. |
extraInfo | Información adicional.
Propiedades workspaceIdHashHash del ID del espacio de trabajo. |
Ejemplo de conexión del SDK de cliente AOQ
clientIp es un campo opcional del cuerpo de la solicitud. Si no se especifica, se usa como IP del cliente la dirección IP que envía la solicitud al gateway de Model Studio. Si se especifica, el valor de clientIp tiene prioridad. Haga que su AppServer de negocio obtenga la dirección IP real del cliente y la transmita para obtener el mejor punto de acceso de Relay.Flujo de trabajo

- Obtenga las credenciales de conexión mediante AppServer.
- Cree el motor del SDK y registre las funciones de callback.
- Configure las pistas de medios y Data, y desactive la transmisión ascendente de medios.
- Establezca la conexión de AOQ y espere a que se conecte.
- Configure el modelo de acuerdo con su protocolo. Tras recibir la confirmación, active los medios ascendentes necesarios.
- Desconéctese y libere los recursos cuando termine la interacción.
- Los medios los administra AOQ SDK, que se encarga de su captura, procesamiento, envío, recepción y reproducción; el invocador debe enviar y recibir Data según las definiciones de eventos del modelo de destino.
-
Una conexión exitosa indica que se ha establecido el canal de transmisión con el modelo. El cliente debe activar los medios ascendentes necesarios solo después de que termine la inicialización del modelo. Para el modelo de ejemplo
qwen3.8-livetranslate-flash-realtimede esta página, envíesession.updatey esperesession.updatedantes de activar la transmisión de medios.
1. Obtener credenciales de conexión
El cliente solicita las credenciales a su AppServer. AppServer llama al endpoint de conexión Realtime de este modelo e incluye la API Key y x-dashscope-rtc-transport: moq en la solicitud al gateway. Para consultar el endpoint completo, la solicitud y las descripciones de los campos, consulte Autenticación mediante token.
Asigne la respuesta a AoqConnectConfig:
| Respuesta de la puerta de enlace | Configuración del SDK |
|---|---|
aoqTokenForClient | token |
sid | sid |
clientRelayCertFingerprint | certFingerprint |
clientRelayEndpoints | relayEndpoints, convierta cada punto de acceso de acuerdo con la estructura |
extraInfo contiene workspaceIdHash | workspaceIdHash |
2. Inicializar el SDK y registrar devoluciones de llamada
Cree el motor y registre las funciones de callback para el estado de la conexión, los mensajes Data y los errores. El siguiente ejemplo usa Swift en iOS:
AoqEngineDelegate; mantenga el estado de la conexión en onConnectionStatusChange; analice los eventos del modelo de destino en onDataMsg; y maneje los errores del SDK en onError. Los eventos de error que devuelve el modelo también deben manejarse por separado dentro de la lógica de procesamiento de mensajes Data. Para consultar la interfaz del SDK y las descripciones de errores, consulte SDK por plataforma y Referencia de funciones.
3. Configurar el SDK
Configurar la dirección de medios
Las direcciones se definen con respecto al cliente. Configure únicamente las modalidades de entrada y salida que necesita su aplicación. No agregue pistas para direcciones que no se utilicen.
| Dirección | Configuración | Uso típico |
|---|---|---|
| Envío de audio: | Publique una pista Audio, establezca el codificador de audio y configure la captura integrada o externa | Traducción de voz |
| Recepción de audio: | Suscríbase a la pista Audio, establezca el decodificador de audio y configure un reproductor o la reproducción externa | Traducir y reproducir audio |
| Envío de video: | Configure la pista Video, la cámara o la entrada de video externa de acuerdo con la versión seleccionada y los escenarios admitidos | Envíe video a modelos que admitan entrada visual |
| Recepción de video: | Este modelo no admite salida de video | No configure la suscripción de video |
Direcciones de medios para este modelo
La siguiente tabla enumera las direcciones de medios para este modelo. Consulte el Ámbito de aplicación para conocer el alcance del modelo; los demás métodos de integración se describen en Qwen-LiveTranslate-Realtime.
| Modelo o aplicación | Enviar audio | Recibir audio | Enviar video | Recibir video |
|---|---|---|---|---|
| Qwen-LiveTranslate-Realtime | Active cuando se use la entrada de voz | Active cuando se requiera traducción de voz | Configure de acuerdo con la versión y el escenario seleccionados | No admite la activación |
Configurar parámetros de medios y pistas
Configure por separado el audio ascendente y descendente: use setAudioEncoderConfig para el audio ascendente y setAudioDecoderConfig para el audio descendente. Estos parámetros controlan la transmisión de red; el gateway convierte el audio al formato que requiere el modelo. Configure la codificación de transporte y el formato de audio de los eventos del modelo según los requisitos del SDK y del modelo de destino, respectivamente.
Inicie startAudioCapture o startAudioPlayer según la dirección. La entrada y la salida personalizadas se describen en la sección de funciones avanzadas que aparece más adelante.
El cliente envía las pistas de publishTracks y recibe las de subscribeTracks:
| Scenario | publishTracks | subscribeTracks |
|---|---|---|
| Traducción de voz | Audio, Data | Audio, Data |
4. Establecer la conexión
Introduzca las credenciales y la configuración de pistas en AoqConnectConfig y después llame a:
onConnectionStatusChange devuelva .connected y después continúe con el proceso de inicialización del modelo. El retorno de la llamada a connect no significa que la conexión se haya establecido correctamente.
5. Intercambiar eventos del modelo y medios
Enviar y analizar eventos del modelo
El cliente envía eventos mediante la pista Data. El siguiente fragmento usa Swift en iOS; para consultar otras interfaces, consulte Referencia del SDK de iOS:
onDataMsg. Este modelo identifica los tipos de eventos mediante el campo type. Los campos completos, los parámetros y las condiciones de finalización deben ajustarse a la documentación del modelo de destino.
Habilitar medios después de que el modelo esté listo
Cuando el modelo, la sesión o la tarea actuales cumplan sus condiciones de disponibilidad, active únicamente las direcciones ascendentes configuradas. Para la entrada de voz, llame a:
input_audio_buffer.append para volver a enviar el audio. El audio descendente se procesa mediante el reproductor configurado o la lógica de reproducción externa.
6. Finalizar la interacción y liberar recursos
La siguiente secuencia de finalización se aplica a la traducción de voz de qwen3.8-livetranslate-flash-realtime mediante AOQ:
- Detenga la captura y desactive el audio ascendente; deje de enviar la entrada y envíe un solo mensaje
session.finishmediante la pista Data. - Mantenga la conexión de AOQ, la suscripción a Data y la reproducción de audio; continúe recibiendo el texto original, la traducción y el audio traducido de la última oración, y espere
session.finished. - Si se requiere reproducir todo el audio traducido, desconecte la conexión y libere los recursos solo después de terminar la reproducción de audio local y su limpieza.
session.finish y session.finished, consulte Eventos del cliente y Eventos del servidor, respectivamente. Para ver el código completo, consulte Traducción de voz en tiempo real en la práctica.
Después de completar los pasos de limpieza anteriores, la capa de negocio del cliente llama a las interfaces de desconexión y liberación de recursos de AOQ y del SDK:
Enviar y recibir eventos mediante el canal Data
El cliente envía y recibe eventos del modelo mediante la pista Data de AOQ SDK. Durante la conexión, es necesario publicar la pista Data y suscribirse a ella; al enviar, serialice el evento del modelo en AoqDataMsg y llame a la interfaz de envío de Data de la plataforma; al recibir, analice el mensaje en la función de callback onDataMsg. Consulte SDK por plataforma para obtener detalles de las interfaces.
Los nombres, campos, parámetros y tiempos de envío de los eventos se ajustan a las definiciones de eventos del cliente del modelo de destino; el método de análisis, los cambios de estado, los resultados y el manejo de errores después de recibir mensajes se ajustan a las definiciones de eventos del servidor del modelo. Los eventos de inicialización se envían según los requisitos del modelo, y los eventos posteriores de texto y control se envían según las necesidades del negocio.
| Modelo o aplicación | Eventos del cliente (envío) | Eventos del servidor (recepción) |
|---|---|---|
| Qwen-LiveTranslate-Realtime | Eventos del cliente | Eventos del servidor |
-
Use el campo
typede los eventos para identificar los eventos del modelo y maneje los identificadores asociados según la referencia de eventos de este modelo. - Las operaciones que requiere el modelo, como la confirmación de inicialización, el envío de la entrada, la cancelación de respuestas y la finalización de tareas, se manejan en el canal Data de acuerdo con el protocolo correspondiente; constituyen la semántica de interacción del modelo y son independientes de la desconexión del transporte.
- Antes de terminar, complete el envío de la entrada y la recepción de resultados según la documentación de eventos de este modelo; si se requiere la reproducción completa, libere la conexión solo después de procesar todo el audio en la cola local.
- Los datos de medios se transmiten por las pistas de medios. Al consultar la documentación de eventos del modelo, la encapsulación de medios y los modos de interacción disponibles siguen el método de conexión descrito aquí; no adopte directamente el método de transmisión de medios de WebSocket.
Funciones avanzadas
| Capacidad | Caso de uso | Documentación |
|---|---|---|
| Controlar la transmisión de audio | esperar a que el modelo esté listo y pausar el audio ascendente | Administración de la transmisión de flujos de medios |
| Dispositivos y procesamiento de audio | codificación/decodificación, altavoces, mezcla de archivos y funciones de callback de fotogramas de audio | Funciones comunes de audio |
| entrada de audio externa | usar una fuente de audio del lado del cliente | captura de audio personalizada |
| salida de audio externa | se procesa o reproduce del lado del cliente | reproducción de audio personalizada |
Ejemplo de configuración de sesión
qwen3.8-livetranslate-flash-realtime. El audio se transmite mediante las pistas de medios y no usa los eventos de transmisión de medios de WebSocket.Descarga del SDK AOQ
Las notas de versión que aparecen a continuación describen las funciones generales de AOQ SDK; el ámbito de medios admitidos por este modelo se detalla arriba en Direcciones de medios para este modelo.
| Versión | Plataforma | Descarga | Fecha de lanzamiento | Notas de la versión |
|---|---|---|---|---|
| v1.4.0 | Android | AoqClientSdk-release.aarlibPluginOpus.zip | 2026-10-27 |
|
| iOS | AoqClientSdk.framework.zipAoqScreenShare.framework.zipPluginOpus.framework.zip | |||
| HarmonyOS | AoqClientSdk.harlibPluginOpus.zip | |||
| Windows | AoqClientSdk-windows-x64.zip | |||
| macOS | AoqClientSdk.framework.zipPluginOpus.framework.zip | |||
| Electron | aoq-electron-sdk-1.4.0-59463182.tgzTambién puede instalarlo mediante npm:npm install aoq-electron-sdk@1.4.0-59463182 | |||
| Linux | x86_64: AoqClientSdk.ziparm64: AoqClientSdk.zip | |||
| v1.3.0 | Android | 2026-09-18 |
| |
| iOS | ||||
| HarmonyOS | ||||
| Windows | AoqClientSdk-windows-x64.zip | |||
| macOS | ||||
| Electron | O instálelo con npm: npm install aoq-electron-sdk@1.3.0-58586345 | |||
| Linux | x86_64: AoqClientSdk.zip arm64: AoqClientSdk.zip | |||
| v1.2.2 | iOS | AoqClientSdk.framework.zip | 2026-09-09 |
|
| v1.2.0 | Android | 2026-08-17 |
| |
| iOS | ||||
| HarmonyOS | ||||
| Windows | ||||
| macOS | ||||
| Electron | Paquete: aoq-electron-sdk-1.2.0-57407598.tgz Alternativamente, instálelo usando npm: npm install aoq-electron-sdk@1.2.0-57407598 | |||
| Linux | x86_64: AoqClientSdk.zip arm64: AoqClientSdk.zip | |||
| v1.1.0 | Android | 2026-07-31 |
| |
| iOS | ||||
| HarmonyOS | ||||
| Linux | AoqClientSdk.zip | |||
| v1.0.1 | Android | 2026-07-09 |
| |
| iOS | ||||
| HarmonyOS |