Overview
การนำ BlueBubbles ออกและเส้นทาง iMessage ผ่าน imsg
การนำ BlueBubbles ออกและเส้นทาง iMessage ผ่าน imsg
OpenClaw ไม่ได้จัดส่งช่องทาง BlueBubbles อีกต่อไป การรองรับ iMessage ทำงานผ่าน Plugin imessage ที่รวมมาให้ โดย Gateway จะเรียกใช้ imsg เป็นโพรเซสลูกในเครื่องหรือผ่านตัวห่อหุ้ม SSH และสื่อสารด้วย JSON-RPC ผ่าน stdin/stdout ไม่มีเซิร์ฟเวอร์ ไม่มี Webhook และไม่มีพอร์ต
หากการกำหนดค่าของคุณยังมี channels.bluebubbles ให้ย้ายไปใช้ channels.imessage URL เอกสารเดิม /channels/bluebubbles จะเปลี่ยนเส้นทางไปยัง การย้ายมาจาก BlueBubbles ซึ่งมีตารางแปลงการกำหนดค่าฉบับเต็มและรายการตรวจสอบสำหรับการสลับระบบ
สิ่งที่เปลี่ยนแปลง
- เส้นทาง iMessage ที่รองรับไม่มีเซิร์ฟเวอร์ HTTP ของ BlueBubbles, เส้นทาง Webhook, รหัสผ่าน REST หรือรันไทม์ Plugin ของ BlueBubbles
- OpenClaw อ่านและเฝ้าติดตาม Messages ผ่าน
imsgบน Mac ที่ลงชื่อเข้าใช้ Messages.app อยู่ - การส่ง การรับ ประวัติ และสื่อพื้นฐานใช้ส่วนเชื่อมต่อ
imsgตามปกติและสิทธิ์ของ macOS - การดำเนินการขั้นสูง (การตอบกลับแบบเธรด, tapbacks, การแก้ไข, การยกเลิกส่ง, เอฟเฟกต์, การแจ้งว่าอ่านแล้ว, ตัวบ่งชี้การพิมพ์ และการจัดการกลุ่ม) ต้องใช้บริดจ์ API ส่วนตัว โดยเรียกใช้
imsg launchซึ่งต้องปิดใช้งาน SIP - Gateway บน Linux และ Windows ยังคงใช้ iMessage ได้โดยกำหนด
channels.imessage.cliPathให้ชี้ไปยังตัวห่อหุ้ม SSH ที่เรียกใช้imsgบน Mac ที่ลงชื่อเข้าใช้อยู่
สิ่งที่ต้องทำ
-
ติดตั้งและตรวจสอบ
imsgบน Mac ที่ใช้ Messages:bash brew install steipete/tap/imsgimsg --versionimsg chats --limit 3imsg rpc --help -
ให้สิทธิ์ Full Disk Access และ Automation แก่บริบทของโพรเซสที่เรียกใช้
imsgและ OpenClaw -
แปลงการกำหนดค่าเดิม:
json5 { channels: { imessage: { enabled: true, cliPath: "/opt/homebrew/bin/imsg", dmPolicy: "pairing", allowFrom: ["+15555550123"], groupPolicy: "allowlist", groupAllowFrom: ["+15555550123"], groups: { "*": { requireMention: true }, }, includeAttachments: true, }, },} -
รีสตาร์ต Gateway และตรวจสอบ:
bash openclaw channels status --probe -
ทดสอบข้อความส่วนตัว กลุ่ม ไฟล์แนบ และการดำเนินการผ่าน API ส่วนตัวที่คุณพึ่งพา ก่อนลบเซิร์ฟเวอร์ BlueBubbles เดิม
หมายเหตุเกี่ยวกับการย้ายระบบ
channels.bluebubbles.serverUrlและchannels.bluebubbles.passwordไม่มีค่าที่เทียบเท่าใน iMessage เนื่องจากไม่มีเซิร์ฟเวอร์ให้เชื่อมต่อหรือยืนยันตัวตนallowFrom,groupAllowFrom,groups,includeAttachments,attachmentRoots,mediaMaxMb,textChunkLimitและactions.*ยังคงมีความหมายเดิมภายใต้channels.imessagechannels.imessage.includeAttachmentsยังคงปิดอยู่โดยค่าเริ่มต้น ให้ตั้งค่าอย่างชัดเจนหากคุณต้องการให้รูปภาพ บันทึกเสียง วิดีโอ หรือไฟล์ขาเข้าถึงเอเจนต์- เมื่อใช้
groupPolicy: "allowlist"ให้คัดลอกบล็อกgroupsเดิม รวมถึงรายการไวลด์การ์ด"*"หากมี รายการอนุญาตผู้ส่งของกลุ่มและรีจิสทรีกลุ่มเป็นด่านตรวจสอบแยกกัน บล็อกgroupsที่มีรายการแต่ไม่มีchat_idที่ตรงกัน (หรือไม่มี"*") จะทิ้งข้อความขณะรันไทม์ และบล็อกgroupsที่ว่างจะบันทึกคำเตือนเมื่อเริ่มต้นระบบ แม้ว่าการกรองผู้ส่งจะยังคงปล่อยให้ข้อความผ่านก็ตาม - การผูก ACP ที่ใช้
match.channel: "bluebubbles"ต้องเปลี่ยนเป็น"imessage" - คีย์เซสชัน BlueBubbles เดิมจะไม่กลายเป็นคีย์เซสชัน iMessage การอนุมัติการจับคู่จะอิงตามตัวระบุผู้ส่ง ดังนั้นรายการ
allowFromที่คัดลอกมาจะยังคงใช้งานได้ แต่ประวัติการสนทนาภายใต้คีย์เซสชัน BlueBubbles จะไม่ถูกย้ายตามมา