[נתב AI] התקנת MQTT Broker (Mosquitto)

MQTT (Message Queuing Telemetry Transport) הוא פרוטוקול הודעות קל משקל הנמצא בשימוש נפוץ לתקשורת בין התקני IoT. ב-Home Assistant, ‏MQTT משמש לעתים קרובות לאינטגרציית אוטומציה. לדוגמה, כאשר אתם משתמשים ב-Frigate לניתוח וידאו (כגון זיהוי אדם הנכנס לאזור מסוים), Frigate תשלח הודעה ל-Home Assistant באמצעות MQTT, אשר יכולה להפעיל אוטומציות אחרות (כמו הדלקת אורות או שליחת התראות).

 

תפקידי MQTT:

מהם התפקידים בפרוטוקול MQTT? ניקח את התרחיש של שילוב מצלמות IP של Frigate עם Home Assistant כדוגמה:

  • מפרסם (Publisher): Frigate. כאשר Frigate מזהה אירוע (למשל, אדם הנכנס לאזור מסוים) מפיד מצלמת ה-IP, היא מפרסמת אירוע זה כהודעה לברוקר ה-MQTT.
  • מנוי (Subscriber): Home Assistant. הוא נרשם לנושא (topic) הספציפי שפורסם על ידי Frigate. כאשר Home Assistant מקבל את ההודעה, הוא יכול להפעיל אוטומציות (כגון הדלקת אורות או שליחת התראות).
  • ברוקר (Broker): Mosquitto. פועל כמתווך, מקבל הודעות מ-Frigate ומעביר אותן למנויי Home Assistant. בדוגמה זו, Frigate ו-Home Assistant אינם מתקשרים ישירות, אלא מחליפים הודעות דרך ברוקר ה-MQTT של Mosquitto.

 

 

1. תנאים מוקדמים

 

2. התקנת Mosquitto

   2-1. פרסו את Mosquitto באמצעות Portainer:

  • עברו לדף [Stacks] (מחסניות) ב-Portainer ולחצו על [Add Stack] (הוסף מחסנית).
  • תנו למחסנית זו את השם mosquitto.
  • ב-[Web editor] (עורך האינטרנט), הדביקו את התצורה הבאה:

version: "3.8"

services:

   # --- MQTT Broker (Eclipse Mosquitto) ---

   mosquitto:

       image: eclipse-mosquitto:2

       container_name: mosquitto

       restart: unless-stopped

       volumes:

       - mosquitto_config:/mosquitto/config

       - mosquitto_data:/mosquitto/data

       - mosquitto_log:/mosquitto/log

          

       ports:

       - "1883:1883"   # MQTT

       - "9001:9001"   # WebSocket

volumes:

   mosquitto_config:

   mosquitto_data:

   mosquitto_log:

 

   2-2. לחצו על כפתור [Deploy the stack] (פרוס את המחסנית) להשלמת הפריסה.

 

 

3. הגדרת תצורת Mosquitto

   3-1. עברו לדף [Containers] (מכלים) ב-Portainer ומצאו את mosquitto.

 

   3-2. לחצו על mosquitto כדי להיכנס לדף פרטי ה-container, ולאחר מכן לחצו על לשונית [Console] (מסוף).

 

   3-3. בשדה [Command] (פקודה), הזינו /bin/sh ולחצו על [Connect] (התחבר) כדי לפתוח את ממשק שורת הפקודה של ה-container.

 

   3-4. בשורת הפקודה, הזינו את הפקודה הבאה ליצירת קובץ סיסמה:

mosquitto_passwd -c -b /mosquitto/config/passwd <username> <password>

החליפו את <username> (שם משתמש) ו- <password> (סיסמה) בשם המשתמש והסיסמה הרצויים לכם (השתמשו רק באותיות ומספרים, ואל תתחילו ב-#). לאישור יצירת הקובץ: הריצו ls /mosquitto/config כדי לבדוק שגם mosquitto.conf וגם passwd קיימים.

 

   3-5. ערכו את קובץ התצורה של Mosquitto mosquitto.conf על ידי הזנת:

vi /mosquitto/config/mosquitto.conf

 

   3-6. ב-mosquitto.conf, הוסיפו את ההגדרות הבאות כדי לציין את נתיב קובץ הסיסמה ולהשבית גישה אנונימית: הקישו i כדי להיכנס למצב הכנסה, ולאחר מכן הוסיפו את התוכן הבא להתחלה או לסוף הקובץ: אתם יכולים להשתמש ב-ctrl + shift + v כדי להדביק טקסט בעורך vi.

allow_anonymous false

password_file /mosquitto/config/passwd

listener 1883 0.0.0.0

socket_domain ipv4

 

   3-7. הקישו Esc, הקישו :wq, והקישו Enter כדי לשמור ולצאת מהעורך. (אם אתם רוצים לבטל שינויים, הקישו :q!  והקישו Enter)

 

   3-8. הפעילו מחדש את ה-container של Mosquitto כדי להחיל את ההגדרות:

  • חזרו לדף [Containers] ב-Portainer ומצאו את mosquitto.
  • לחצו על mosquitto כדי להיכנס לדף פרטי ה-container, ולאחר מכן לחצו על כפתור [Restart] (הפעל מחדש).

 

 

 

4. הגדרת אינטגרציית MQTT ב-Home Assistant

   4-1. ב-Home Assistant, עברו אל [Settings] (הגדרות) > [Devices & Services] (התקנים ושירותים) ולחצו על [Add Integration] (הוסף אינטגרציה).

 

   4-2. חפשו ובחרו [MQTT].

 

   4-3. בתיבת הדו-שיח הקופצת, בחרו MQTT והזינו את המידע הבא:

  • Broker (ברוקר): localhost או כתובת ה-IP של לוח ה-AI שלכם
  • Port (יציאה): 1883
  • Username (שם משתמש): שם המשתמש שהגדרתם עבור Mosquitto
  • Password (סיסמה): הסיסמה שהגדרתם עבור Mosquitto

 

   4-4. בסיום, אתם יכולים להשתמש בלקוח MQTT כדי להתחבר ל-Mosquitto.

 

 

 

 

 

 

כיצד להשיג את (כלי העזר / הקושחה)?

אתם יכולים להוריד את מנהלי ההתקן, התוכנות, הקושחה ומדריכי המשתמש העדכניים ביותר ב- מרכז ההורדות של ASUS.

אם אתם זקוקים למידע נוסף על מרכז ההורדות של ASUS, אנא עיינו ב- קישור זה.