Mqtt Control – Control your pc from Home-Assistant

Mqtt Control - techblog.co.il

לאחר לא מעט חיפושים שבצעתי מתוך נסיון למצןא דרך יעילה ופשוטה לתקשר עם המחשב הביתי דרך מערכת ה Home-Assistant החלטתי לבסוף לכתובת אחת. Mqtt Control מאפשרת תקשורת דו-צדדית עם המחשב על גבי פרוטוקול MQTT ובעצם מאפשרת לי לקבל מידע מהמחשב וכן לבצע פעולות על המחשב עצמו.

הנתונים שנשלחים מהמחשב ל Home-Assistant (או כל מערכת חכמה שיודעת לעבוד עם MQTT) הם:

  1. ניצולת מעבד.
  2. טמפרטורת מעבד.
  3. זכרון פנוי/בשימוש.
  4. נפחי דיסקים (כללי, פנוי, בשימוש).
  5. Screenshot של שולחן העבודה.

הפעולות אותן ניתן לבצע על המחשב:

  1. כיבוי / אתחול המחשב.
  2. נעילת שולחן העבודה.
  3. שליחת התראות והודעות שיוצגו על שולחן העבודה.
  4. לבקש צילום מסך.

את התוכנה ניתן להוריד מהכתובת הבאה: https://sourceforge.net/projects/mqtt-control/

לאחר ההתקנה תוכלו לראות שמבנה התיקיה של התוכנה נראה כך:

Mqtt Control - Folder - תומר קליין

כאשר תיקיית Sample Configuration Files מכילה קבצי yaml לדוגמה עבור ההגדרות למערכת Home-Assistant.

בנוסף תוכלו לראות כי ישנו קובץ נוסף שנקרא MqttControl.exe.config, זהו קובץ ההגדרות הראשי של התוכנה ובו יש גם את הגדרות החיבור ל Home-Assistant

<?xml version="1.0" encoding="utf-8"?>
<configuration>
   <appSettings>
    <!--Mqtt Server Address (IP or Domain)-->
    <add key="mqttserver" value=""/>
    <!--Mqtt Username-->
    <add key="mqttuser" value=""/>
    <!--Mqtt Password-->
    <add key ="mqttpass" value="" />
    <!--This Device Name (Used as part of the topic)-->
    <add key ="devicename" value="homepc"/>
    <!--Update interval in Seconds-->
    <add key ="updateinterval" value="60"/>
    <!--Take Autosnapshot by interval (if flase screenhot will be taken only by request)-->
    <add key ="autoSnapshot" value="false"/>
    <!--Include Drive info (free space, used space etc)-->
    <add key ="publishDriveInfo" value="true"/>
    <!--Debug mode will create json files called debug.json that includes the publishd data-->
    <add key ="debugMode" value="true"/>
  </appSettings>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1"/>
  </startup>
</configuration>

כאשר:

  • mqttserver – כתובת שרת ה MQTT.
  • mqttuser – שם המשתמש להתחברות ל MQTT.
  • mqttpass – סיסמת ההתחברות ל MQTT.
  • devicename – שם המחשב (מהווה חלק מה Topic, לדוגמה /homepc/restart/ יבצע אתחול למחשב).
  • updateinterval – אינטרוול (בשניות) לעדכון אוטומטי – כל כמה זמן התוכנה תשלח נתונים.
  • autoSnapshot – מציין האם לשלוח צילום מסך באופן אוטומטי (בהתאם לאינטרוול שנקבע).
  • publishDriveInfo – האם לשלוח גם את המידע לגבי הכוננים כחלק מהטלמטריה שנשלחת.
  • debugMode – במצב זה ישמר בתיקיה של התוכנה קובץ בפורמט json אשר יכיל את המידע שנשלח לצורך בדיקות.

כעת, שמרו את הקובץ והפעילו את התוכנה. תוכלו לראות icon קטן שיופעי בשורת המשימות:

*** הערה חשובה: על מנת שהמערכת תוכל לנטר את נתוני המעבד יש להפעיל אותה כ administrator) ***

Mqtt Control icon

לחיצה עם הלחצן הימני של העכבר על גבי האייקון תפתח תפריט:

Mqtt Control tray manue

כאשר:

  • Exit MqttControl – תסגור את השרות.
  • Run MqttControl at startup – יפעיל את התוכנה עם עליית המחשב (ולאחר שמשתמש יבצע Login).
  • Diasble running MqttControl at startup – יבטל את הפעלת התוכנה עם עליית המחשב.

 

2 Comments

  1. מדריך מעולה. תודה!
    אם אפשר איזו מילה על ההגדרות והחיבור בצד ה ha.

Leave a Reply

כתובת האימייל שלך לא תפורסם


*