การปลุกด้วยเสียง(คีย์เวิร์ดปลุกส่วนกลาง)¶
OpenClaw ปฏิบัติต่อ คีย์เวิร์ดปลุกเป็นรายการส่วนกลางเพียงรายการเดียว ที่เป็นของ Gateway(เกตเวย์).
- ไม่มีคีย์เวิร์ดปลุกแบบกำหนดเองรายโหนด.
- UI ของโหนด/แอปใดๆ สามารถแก้ไข รายการได้; การเปลี่ยนแปลงจะถูกบันทึกโดยGatewayและกระจายไปยังทุกที่.
- อุปกรณ์แต่ละเครื่องยังคงมีสวิตช์ เปิด/ปิดการปลุกด้วยเสียง ของตนเอง (UX ภายในเครื่อง + สิทธิ์แตกต่างกัน).
การจัดเก็บ(โฮสต์Gateway)¶
คีย์เวิร์ดปลุกถูกจัดเก็บบนเครื่องGatewayที่ตำแหน่ง:
~/.openclaw/settings/voicewake.json
- รูปแบบ:
{ "triggers": ["openclaw", "claude", "computer"], "updatedAtMs": 1730000000000 }
โปรโตคอล¶
เมธอด¶
voicewake.get→{ triggers: string[] }voicewake.setพร้อมพารามิเตอร์{ triggers: string[] }→{ triggers: string[] }
หมายเหตุ:
- ทริกเกอร์จะถูกปรับให้อยู่ในรูปแบบมาตรฐาน(ตัดช่องว่าง, ตัดรายการว่าง). หากเป็นรายการว่างจะย้อนกลับไปใช้ค่าเริ่มต้น.
- มีการบังคับใช้ข้อจำกัดเพื่อความปลอดภัย(จำกัดจำนวน/ความยาว).
อีเวนต์¶
voicewake.changedเพย์โหลด{ triggers: string[] }
ผู้รับ:
- ไคลเอนต์ WebSocket ทั้งหมด(แอปmacOS, WebChat ฯลฯ)
- โหนดที่เชื่อมต่อทั้งหมด(iOS/Android)และจะถูกส่งเมื่อโหนดเชื่อมต่อเป็นการพุช “สถานะปัจจุบัน” เริ่มต้นด้วย.
พฤติกรรมฝั่งไคลเอนต์¶
แอปmacOS¶
- ใช้รายการส่วนกลางเพื่อกำกับทริกเกอร์
VoiceWakeRuntime. - การแก้ไข “Trigger words” ในการตั้งค่าการปลุกด้วยเสียงจะเรียก
voicewake.setแล้วพึ่งพาการกระจายเพื่อซิงค์ไคลเอนต์อื่นๆ.
โหนด iOS¶
- ใช้รายการส่วนกลางสำหรับการตรวจจับทริกเกอร์
VoiceWakeManager. - การแก้ไข Wake Words ในการตั้งค่าจะเรียก
voicewake.set(ผ่านGateway WS)และยังคงทำให้การตรวจจับคีย์เวิร์ดปลุกในเครื่องตอบสนองได้ดี.
โหนด Android¶
- เปิดให้แก้ไข Wake Words ในการตั้งค่า.
- เรียก
voicewake.setผ่านGateway WS เพื่อให้การแก้ไขซิงค์ไปทุกที่.