Seguire gli utenti nei canali vocali Discord con OpenClaw
Una presenza che segue le persone selezionate, le tre modalità di ingresso, la pipeline STT-TTS, le sessioni e i target agent-proxy, il controllo delle esecuzioni a voce in tempo reale e la regolazione del barge-in per ambienti con forte eco
In una configurazione personale o da operatore, il comportamento vocale più naturale è che il bot stia dove sei tu. La modalità follow di OpenClaw fa sì che il bot vocale di Discord segua gli utenti selezionati mentre si spostano tra i canali vocali: entra quando un utente seguito entra in un canale consentito, si sposta quando si sposta lui ed esce quando si disconnette. Ecco la configurazione e le sue regole, il confronto con le altre modalità di ingresso, la pipeline audio, come le sessioni vocali corrispondono alle sessioni e ai target dell’agente, cosa capisce un’esecuzione delegata quando le parli, e la regolazione per le stanze che sentono la propria riproduzione.
Le regole della modalità follow
- L’elenco degli utenti da seguire accetta ID utente Discord grezzi o ID con prefisso e normalizza entrambi; il flag di attivazione è attivo per impostazione predefinita quando l’elenco è configurato e può essere disattivato per conservare l’elenco senza il follow automatico; e l’elenco controlla solo la presenza vocale, senza concedere accesso come speaker né autorità di proprietario, che derivano dai proprietari dei comandi e dagli utenti e ruoli del server o del canale.
- Se diversi utenti seguiti sono nello stesso server e quello attivo esce, il bot si sposta nel canale di un altro utente tracciato prima di lasciare il server, e quando più utenti si spostano insieme vince l’evento di stato vocale più recente; l’elenco dei canali consentiti si applica comunque, quindi un utente seguito in un canale non consentito viene ignorato e la sessione passa oltre o esce.
- Gli eventi di stato vocale persi vengono riconciliati all’avvio e a intervalli limitati, campionando i server configurati e limitando le ricerche REST per ogni passata, quindi elenchi molto grandi possono richiedere più di un intervallo per convergere; un bot spostato da Discord o da un amministratore ricostruisce la sessione e mantiene la titolarità del follow quando la destinazione è consentita, e la mantiene anche il ripristino della cifratura che esce e rientra nello stesso canale.
- Tre modalità di ingresso: follow per configurazioni personali o da operatore in cui il bot deve essere in voce quando ci sei tu, auto-join per stanze fisse, con il flag when-occupied quando il bot deve essere presente solo mentre ci sono persone, e il comando di ingresso manuale per stanze occasionali in cui una presenza automatica sarebbe inattesa.
followUsers controlla solo la presenza vocale. Non concede accesso come speaker né autorità di proprietario; configura separatamente commands.ownerAllowFrom e gli utenti e ruoli del server o del canale.
Pipeline e sessioni
La ricezione vocale decodifica con il codec Opus WebAssembly incluso, la riproduzione in tempo reale codifica in Opus il PCM stereo grezzo a 48 kilohertz con lo stesso pacchetto, e la riproduzione di file o di stream del provider passa prima per una transcodifica tramite ffmpeg. Nella pipeline STT-TTS, il PCM catturato diventa un file WAV temporaneo, la trascrizione è gestita dall’impostazione audio dei media, la cattura batch rispetta il limite di input audio applicabile più grande e interrompe le catture troppo grandi con un avviso invece di trascrivere audio parziale, la trascrizione passa per l’ingresso e l’instradamento di Discord mentre il modello di risposta gira sotto una policy di output vocale che nasconde lo strumento TTS dell’agente e chiede testo, il modello vocale sostituisce solo quel modello di risposta, e il blocco TTS vocale viene unito sopra quello globale, con i provider in streaming che alimentano direttamente il player. Senza un blocco di sessione dell’agente, ogni canale vocale ha una propria sessione instradata, il modello in tempo reale è solo il front end, le richieste sostanziali vanno all’agente configurato, e una trascrizione finale prodotta senza lo strumento di consulto forza il consulto come fallback. Un target con un ID di canale o con l’ID nudo instrada la voce attraverso la sessione di quel canale testuale, e una forma DM o utente attraverso quella sessione di messaggi diretti, con l’agente supervisore sempre libero di usare i suoi strumenti di messaggistica, incluso l’invio di un messaggio Discord separato quando è l’azione giusta.
Controllo dell’esecuzione ed eco
- Mentre un’esecuzione delegata è attiva, le trascrizioni vocali autorizzate ai comandi vengono trattate come controllo in tempo reale dell’esecuzione prima di avviare un altro turno: frasi come stato, annulla, usa la correzione più piccola oppure quando hai finito controlla anche i test vengono classificate come stato, annullamento, pilotaggio o follow-up, e l’esito viene ripetuto a voce così chi parla sa se è stato gestito; un consulto annullato registra un annullamento anziché un errore, le chiamate tardive agli strumenti del provider ricevono lo stesso annullamento terminale, e la sessione resta disponibile per la richiesta successiva.
- Per un modello che sente la propria riproduzione attraverso un microfono aperto, l’esempio per ambienti con forte eco impedisce al provider di interrompersi automaticamente sull’audio grezzo in ingresso, mentre il barge-in lascia che siano gli eventi di inizio parlato di Discord e l’audio dello speaker attivo ad annullare le risposte, e una soglia minima di fine audio, cinquecento millisecondi nell’esempio, tratta i segnali molto precoci come probabile eco, così il modello non viene interrotto al primo frame di riproduzione.
- La documentazione elenca le righe di log da aspettarsi: l’ingresso con la voce, il supervisore, la modalità di sessione e i modelli; l’avvio del bridge in tempo reale con i suoi flag di risposta automatica, interruzione e barge-in; i turni degli speaker che si aprono e si chiudono con il conteggio dei byte; il parlato obsoleto saltato con il relativo motivo; la riproduzione che termina, va in buffer e si ferma; i consulti richiesti e con risposta; il parlato esatto accodato e tolto dalla coda quando il player è inattivo; il barge-in rilevato e richiesto; e le interruzioni del modello richieste, troncate, confermate o ignorate come eco.
OpenClaw nei canali vocali Discord è l’intera superficie vocale in cui vivono queste modalità, e OpenClaw su Discord il canale e gli intent di cui ha bisogno.
La voce come superficie di controllo
La parte interessante della modalità follow non è il seguire, ma ciò che rende possibile: un agente che è nella stanza quando ci sei tu, che puoi pilotare, annullare o interrogare a esecuzione in corso parlando, e le cui risposte tornano nello stesso canale. Pilotare un’esecuzione OpenClaw in corso è l’equivalente testuale di quelle frasi di controllo pronunciate, e la guida alle sessioni di OpenClaw spiega le sessioni instradate che una forma di target seleziona.
Su Diali
Su Diali la modalità follow fa parte dello stesso blocco vocale autogestito del resto della voce Discord, mentre il bot Discord stesso si collega dalla dashboard; le regole di presenza si applicherebbero invariate una volta attivata la voce. OpenClaw ospitato su Diali è l’assistente e la pagina sulla sicurezza di Diali descrive il perimetro che lo circonda.
- Follow, auto-join o ingresso manuale: tre modi per entrare in una stanza.
- La presenza non concede nulla; decidono sempre proprietari e ruoli.
- Stato, annullamento, pilotaggio e follow-up, tutto a voce.
Basta leggere, creane uno tuo
Configura un agente, scegli un canale e fallo lavorare dentro l’app che tieni già aperta.
