Mengikuti pengguna di saluran suara Discord dengan OpenClaw
Kehadiran yang melacak orang-orang terpilih, tiga mode bergabung, pipeline STT-TTS, sesi dan target agent-proxy, kontrol eksekusi langsung lewat suara, dan penyetelan barge-in untuk ruang yang banyak gema
Untuk penyiapan pribadi atau operator, perilaku suara yang paling wajar adalah bot berada di mana pun Anda berada. Mode follow OpenClaw membuat bot suara Discord melacak pengguna terpilih saat mereka berpindah antar saluran suara: bergabung saat pengguna yang diikuti bergabung ke saluran yang diizinkan, berpindah saat mereka berpindah, dan keluar saat mereka terputus. Berikut konfigurasi dan aturannya, perbandingannya dengan mode bergabung lainnya, pipeline audio, cara sesi suara dipetakan ke sesi dan target agen, apa yang dipahami eksekusi yang didelegasikan saat Anda berbicara dengannya, dan penyetelan untuk ruang yang mendengar suara pemutarannya sendiri.
Aturan follow
- Daftar pengguna yang diikuti menerima ID pengguna Discord mentah atau ID berprefiks dan menormalkan keduanya; flag pengaktifnya default menyala saat daftar dikonfigurasi dan dapat dimatikan untuk menyimpan daftar tanpa pengikutan otomatis; dan daftar itu hanya mengontrol kehadiran suara, tanpa memberikan akses pembicara maupun otoritas pemilik, yang berasal dari pemilik perintah serta pengguna dan peran guild atau saluran.
- Jika beberapa pengguna yang diikuti berada di satu guild dan pengguna yang aktif keluar, bot berpindah ke saluran pengguna terlacak lainnya sebelum keluar dari guild, dan saat beberapa pengguna berpindah bersamaan, event voice-state terbaru yang menang; daftar saluran yang diizinkan tetap berlaku, sehingga pengguna yang diikuti di saluran yang tidak diizinkan akan diabaikan dan sesi berpindah ke pengguna lain atau keluar.
- Event voice-state yang terlewat direkonsiliasi saat startup dan pada interval terbatas, dengan mengambil sampel guild yang dikonfigurasi dan membatasi jumlah pencarian REST per putaran, sehingga daftar yang sangat besar mungkin memerlukan lebih dari satu interval untuk konvergen; bot yang dipindahkan oleh Discord atau admin membangun ulang sesinya dan tetap memegang kepemilikan follow jika tujuannya diizinkan, dan pemulihan enkripsi yang keluar lalu bergabung kembali ke saluran yang sama juga mempertahankannya.
- Tiga mode bergabung: follow untuk penyiapan pribadi atau operator ketika bot harus ada di saluran suara selama Anda ada di sana, auto-join untuk ruang tetap dengan flag when-occupied ketika bot hanya perlu hadir selama ada manusia, dan perintah join manual untuk ruang sekali pakai ketika kehadiran otomatis akan mengejutkan.
followUsers hanya mengontrol kehadiran suara. followUsers tidak memberikan akses pembicara atau otoritas pemilik; konfigurasikan commands.ownerAllowFrom serta pengguna dan peran guild atau saluran secara terpisah.
Pipeline dan sesi
Suara yang diterima didekode dengan codec Opus WebAssembly bawaan, pemutaran realtime mengenkode PCM stereo mentah 48 kilohertz ke Opus dengan paket yang sama, dan pemutaran file atau stream penyedia ditranskode terlebih dahulu melalui ffmpeg. Dalam pipeline STT-TTS, PCM yang ditangkap menjadi file WAV sementara, pengaturan audio media menangani transkripsi, penangkapan batch mematuhi batas input audio terbesar yang berlaku dan menghentikan tangkapan yang terlalu besar dengan peringatan alih-alih mentranskripsi audio parsial, transkrip melewati ingress dan perutean Discord sementara model respons berjalan di bawah kebijakan output suara yang menyembunyikan alat TTS agen dan meminta teks, model suara hanya menimpa model respons tersebut, dan blok TTS suara digabungkan di atas blok global, dengan penyedia streaming yang langsung mengisi pemutar. Tanpa blok sesi agen, setiap saluran suara mendapatkan sesinya sendiri yang dirutekan, model realtime hanya menjadi front end, permintaan substantif diteruskan ke agen yang dikonfigurasi, dan transkrip akhir yang dihasilkan tanpa alat konsultasi akan memaksa konsultasi sebagai fallback. Target berupa ID saluran atau ID polos merutekan suara melalui sesi saluran teks tersebut, dan bentuk DM atau pengguna melalui sesi pesan langsung tersebut, dengan agen supervisor tetap bebas menggunakan alat pesannya, termasuk mengirim pesan Discord terpisah jika itu tindakan yang tepat.
Kontrol eksekusi dan gema
- Selama eksekusi yang didelegasikan masih aktif, transkrip suara dari pengguna yang berwenang atas perintah diperlakukan sebagai kontrol eksekusi langsung sebelum giliran lain dimulai: frasa seperti “status”, “batalkan itu”, “pakai perbaikan yang lebih kecil”, atau “kalau sudah selesai, cek juga tesnya” diklasifikasikan sebagai status, pembatalan, pengarahan, atau tindak lanjut, dan hasilnya diucapkan kembali agar penelepon tahu apakah frasa itu sudah ditangani; konsultasi yang dibatalkan dicatat sebagai pembatalan, bukan kegagalan, pemanggilan alat penyedia yang datang terlambat mendapatkan pembatalan terminal yang sama, dan sesi tetap tersedia untuk permintaan berikutnya.
- Untuk model yang mendengar suara pemutarannya sendiri melalui mikrofon terbuka, contoh untuk ruang yang banyak gema mencegah penyedia menginterupsi secara otomatis berdasarkan audio input mentah, sementara barge-in memungkinkan event mulai bicara dari Discord dan audio pembicara aktif membatalkan respons, dan ambang minimum akhir audio, lima ratus milidetik dalam contoh tersebut, memperlakukan sinyal yang datang sangat awal sebagai kemungkinan gema sehingga model tidak terpotong pada frame pemutaran pertama.
- Dokumentasi mencantumkan baris log yang dapat Anda harapkan: bergabung, beserta suara, supervisor, mode sesi, dan model yang dipakai; bridge realtime yang dimulai dengan flag auto-respond, interrupt, dan barge-in; giliran pembicara yang dibuka dan ditutup beserta jumlah byte; ucapan kedaluwarsa yang dilewati beserta alasannya; pemutaran yang selesai, melakukan buffering, dan berhenti; konsultasi yang diminta dan dijawab; ucapan persis yang dimasukkan ke antrean dan dikeluarkan saat pemutar menganggur; barge-in yang terdeteksi dan diminta; serta interupsi model yang diminta, dipotong, dikonfirmasi, atau diabaikan sebagai gema.
OpenClaw di saluran suara Discord adalah seluruh permukaan suara tempat mode-mode ini berada, dan OpenClaw di Discord membahas saluran itu serta intent yang dibutuhkannya.
Suara sebagai permukaan kontrol
Bagian menarik dari mode follow bukanlah pengikutannya, melainkan apa yang dimungkinkannya: agen yang ada di ruangan saat Anda ada, yang bisa Anda arahkan, batalkan, atau tanyai di tengah eksekusi cukup dengan berbicara, dan yang jawabannya kembali di saluran yang sama. Mengarahkan eksekusi OpenClaw yang sedang aktif adalah padanan teks dari frasa kontrol eksekusi yang diucapkan tersebut, dan panduan sesi OpenClaw menjelaskan sesi yang dirutekan yang dipilih oleh suatu bentuk target.
Di Diali
Di Diali, mode follow merupakan bagian dari blok suara yang Anda jalankan sendiri, sama seperti bagian lain dari suara Discord, sedangkan bot Discord itu sendiri dihubungkan dari dasbor; aturan kehadiran akan berlaku tanpa perubahan setelah suara diaktifkan. OpenClaw yang di-hosting di Diali adalah asistennya, dan halaman keamanan Diali menjelaskan batas pengaman di sekelilingnya.
- Follow, auto-join, atau join manual: tiga cara masuk ke ruangan.
- Kehadiran tidak memberikan hak apa pun; pemilik dan peran tetap yang menentukan.
- Status, batal, arahkan, dan tindak lanjut, semuanya lewat suara.
Berhenti membaca, buat agen Anda sendiri
Siapkan agen, pilih saluran, dan biarkan ia bekerja di dalam aplikasi yang sudah selalu Anda buka.
