Ir al contenido
Guías

Seguir a usuarios en los canales de voz de Discord con OpenClaw

Una presencia que acompaña a personas elegidas, los tres modos de unión, la cadena STT-TTS, las sesiones y destinos del modo agent-proxy, el control de ejecuciones por voz en directo y el ajuste del barge-in para salas con mucho eco

6 min de lectura

En una configuración personal o de operador, lo natural en voz es que el bot esté donde estés tú. El modo de seguimiento de OpenClaw hace que el bot de voz de Discord siga a usuarios elegidos cuando se mueven entre canales de voz: entra cuando un usuario seguido entra en un canal permitido, se mueve cuando ese usuario se mueve y sale cuando se desconecta. Aquí tienes la configuración y sus reglas, cómo se compara con los otros modos de unión, la cadena de audio, cómo se corresponden las sesiones de voz con las sesiones y los destinos del agente, qué entiende una ejecución delegada cuando le hablas y el ajuste para salas que oyen su propia reproducción.

Reglas de seguimiento

  • La lista de usuarios seguidos acepta identificadores de usuario de Discord sin prefijo o con prefijo y normaliza ambos; el indicador de activación está activado por defecto cuando la lista está configurada y se puede desactivar para conservar la lista sin seguimiento automático; y la lista solo controla la presencia en voz, sin conceder acceso de hablante ni autoridad de propietario, que provienen de los propietarios de comandos y de los usuarios y roles del servidor (guild) o del canal.
  • Si hay varios usuarios seguidos en un mismo servidor y el activo se va, el bot se mueve al canal de otro usuario seguido antes de salir del servidor, y cuando varios se mueven a la vez gana el último evento de estado de voz; la lista de canales permitidos sigue aplicándose, así que un usuario seguido que está en un canal no permitido se ignora y la sesión pasa a otro o sale.
  • Los eventos de estado de voz perdidos se reconcilian al arrancar y a intervalos acotados, muestreando los servidores configurados y limitando las consultas REST por pasada, así que las listas muy grandes pueden tardar más de un intervalo en converger; un bot movido por Discord o por un administrador reconstruye su sesión y conserva la propiedad del seguimiento cuando el destino está permitido, y una recuperación del cifrado que sale del mismo canal y vuelve a entrar también la conserva.
  • Tres modos de unión: seguimiento, para configuraciones personales o de operador en las que el bot debe estar en voz cuando tú lo estás; unión automática, para salas fijas, con el indicador de ocupación cuando el bot solo debe estar presente mientras haya humanos; y el comando de unión manual, para salas puntuales en las que una presencia automática resultaría sorprendente.
followUsers solo controla la presencia en voz. No concede acceso de hablante ni autoridad de propietario; configura commands.ownerAllowFrom y los usuarios y roles del servidor o del canal por separado.

Cadena de audio y sesiones

La recepción de voz decodifica con el códec Opus en WebAssembly incluido, la reproducción en tiempo real codifica PCM estéreo sin procesar a 48 kilohercios a Opus con el mismo paquete, y la reproducción de archivos o de flujos de proveedores transcodifica primero con ffmpeg. En la cadena STT-TTS, el PCM capturado se convierte en un archivo WAV temporal, el ajuste de audio de medios se encarga de la transcripción, la captura por lotes respeta el mayor límite de entrada de audio aplicable y detiene las capturas demasiado grandes con una advertencia en lugar de transcribir audio parcial, la transcripción pasa por la entrada y el enrutamiento de Discord mientras el modelo de respuesta se ejecuta bajo una política de salida de voz que oculta la herramienta TTS del agente y pide texto, el modelo de voz solo sustituye a ese modelo de respuesta, y el bloque TTS de voz se fusiona sobre el global, con los proveedores de streaming alimentando directamente al reproductor. Sin bloque de sesión de agente, cada canal de voz obtiene su propia sesión enrutada, el modelo en tiempo real es solo la parte frontal, las peticiones de fondo van al agente configurado, y una transcripción final producida sin la herramienta de consulta fuerza la consulta como alternativa. Un destino con un id de canal o el id sin prefijo enruta la voz a través de la sesión de ese canal de texto, y una forma de mensaje directo o de usuario, a través de esa sesión de mensaje directo, y el agente supervisor sigue libre de usar sus herramientas de mensajes, incluido enviar un mensaje de Discord aparte cuando esa es la acción correcta.

Control de ejecución y eco

  • Mientras hay una ejecución delegada activa, las transcripciones de voz autorizadas para comandos se tratan como control de la ejecución en directo antes de iniciar otro turno: frases como “estado”, “cancela eso”, “usa el arreglo más pequeño” o “cuando termines, revisa también los tests” se clasifican como estado, cancelación, redirección o continuación, y el resultado se responde en voz alta para que quien habla sepa si se ha atendido; una consulta cancelada registra una cancelación en lugar de un fallo, las llamadas tardías del proveedor a herramientas reciben la misma cancelación terminal, y la sesión sigue disponible para la siguiente petición.
  • Para un modelo que oye su propia reproducción a través de un micrófono abierto, el ejemplo para mucho eco impide que el proveedor se interrumpa automáticamente con el audio de entrada sin procesar, mientras que el barge-in deja que los eventos de inicio de habla de Discord y el audio del hablante activo cancelen las respuestas, y un umbral mínimo de fin de audio, quinientos milisegundos en el ejemplo, trata las señales muy tempranas como probable eco para que el modelo no se corte en la primera trama de reproducción.
  • La documentación enumera las líneas de registro que cabe esperar: la unión con la voz, el supervisor, el modo de sesión y los modelos; el puente en tiempo real arrancando con sus indicadores de respuesta automática, interrupción y barge-in; turnos de hablante que se abren y se cierran con recuentos de bytes; habla obsoleta descartada con su motivo; reproducción que termina, se almacena en búfer y se detiene; consultas solicitadas y respondidas; habla exacta encolada y desencolada cuando el reproductor queda inactivo; barge-in detectado y solicitado; e interrupciones del modelo solicitadas, truncadas, confirmadas o ignoradas como eco.

OpenClaw en los canales de voz de Discord es toda la superficie de voz en la que viven estos modos, y OpenClaw en Discord, el canal y los intents que necesita.

La voz como superficie de control

Lo interesante del modo de seguimiento no es el seguimiento, sino lo que permite: un agente que está en la sala cuando tú estás, al que puedes redirigir, cancelar o consultar a mitad de una ejecución hablando, y cuyas respuestas vuelven al mismo canal. Redirigir una ejecución de OpenClaw en curso es el equivalente en texto de esas frases habladas de control de ejecución, y las sesiones de OpenClaw explica las sesiones enrutadas que selecciona una forma de destino.

En Diali

En Diali, el modo de seguimiento forma parte del mismo bloque de voz autogestionado que el resto de la voz de Discord, mientras que el propio bot de Discord se conecta desde el panel; las reglas de presencia se aplicarían sin cambios una vez activada la voz. OpenClaw alojado en Diali es el asistente y la seguridad en Diali describe el perímetro que lo rodea.

  • Seguimiento, unión automática o unión manual: tres formas de entrar en una sala.
  • La presencia no concede nada; los propietarios y los roles siguen decidiendo.
  • Estado, cancelación, redirección y continuación, todo por voz.
Empezar

Deja de leer sobre ello y crea el tuyo

Configura un agente, elige un canal y ponlo a trabajar dentro de la aplicación que ya tienes abierta.