اتصال Home Assistant به بروکر MQTT
آموزش

اتصال Home Assistant به بروکر MQTT

۱۰ آبان ۱۴۰۵۷ دقیقه مطالعه

Home Assistant را به یک بروکر MQTT ابری وصل کنید و پیشوند discovery و پیام‌های وضعیت را طوری تنظیم کنید که با قواعد تاپیک بروکر سازگار باشد.

چرا بروکر ابری برای Home Assistant؟#

بیشتر کاربران Home Assistant یک بروکر داخل شبکه خانه دارند. بروکر ابری وقتی به کار می‌آید که دستگاه‌هایی خارج از خانه دارید (مثلاً در ویلا یا کارگاه) یا می‌خواهید داده چند مکان در یک جا جمع شود، بدون باز کردن پورت روی مودم.

افزودن یکپارچه‌سازی MQTT#

در Home Assistant به Settings و سپس Devices & services بروید، Add Integration را بزنید و MQTT را انتخاب کنید. اطلاعات بروکر را وارد کنید:

  • Broker: mqtt.mqttcloud.ir و Port: 8883
  • Username و Password: اطلاعات اکانت MQTT شما

برای تعیین Client ID و فعال کردن TLS به گزینه‌های پیشرفته نیاز دارید؛ اگر آن‌ها را نمی‌بینید، Advanced mode را در صفحه پروفایل کاربری خود روشن کنید. سپس:

  • Client ID را دقیقاً برابر شناسه‌ای بگذارید که در داشبورد ثبت کرده‌اید، مثلاً home-assistant.
  • TLS را فعال کنید و اعتبارسنجی گواهی را روی حالت خودکار بگذارید؛ گواهی بروکر از Let's Encrypt است.

مهم‌ترین قدم: پیشوند تاپیک‌ها#

Home Assistant به‌طور پیش‌فرض برای کشف خودکار دستگاه‌ها (discovery) به تاپیک‌های homeassistant/... گوش می‌دهد و پیام‌های وضعیت خودش (birth و will) را روی homeassistant/status منتشر می‌کند. در mqttcloud.ir همه تاپیک‌ها باید با نام‌کاربری/ شروع شوند؛ انتشار روی homeassistant/status باعث می‌شود بروکر اتصال را قطع کند و Home Assistant مدام دوباره وصل و قطع شود.

بعد از افزودن یکپارچه‌سازی، روی Configure آن بزنید و در گزینه‌های MQTT (اگر لازم است با Advanced mode) این‌ها را عوض کنید. فرض کنیم نام کاربری شما alice است:

  • Discovery prefix: alice/homeassistant
  • تاپیک پیام birth: alice/homeassistant/status
  • تاپیک پیام will: alice/homeassistant/status

هر دستگاه یا نرم‌افزاری که از discovery استفاده می‌کند (مثلاً Zigbee2MQTT) هم باید با همین پیشوند تنظیم شود تا Home Assistant آن را پیدا کند.

آزمایش#

در صفحه تنظیمات یکپارچه‌سازی MQTT بخشی برای گوش دادن به یک تاپیک و انتشار پیام وجود دارد. روی alice/# گوش دهید و از ترمینال یا دستگاه دیگری پیامی روی alice/test بفرستید؛ باید فوراً آن را ببینید. وضعیت آنلاین Home Assistant را هم در صفحه «بروکر MQTT» داشبورد mqttcloud.ir خواهید دید.

اگر اتصال برقرار نشد، عیب‌یابی اتصال MQTT و توضیح وایلدکاردها در تاپیک‌ها، QoS و پیام ماندگار را ببینید.

#HomeAssistant#خانه_هوشمند#MQTT