עברתי לopenhab וצריך עזרה

SIRI, CORTANA, ALEXA, ECHO, GOOGLE HOME, HOME PAD, שלטים חכמים, KEY PADS, אפליקציות
razserv2010 (פותח השרשור)
חבר פעיל במיוחד
חבר פעיל במיוחד
הודעות: 806
הצטרף: אוקטובר 2013
נתן תודות: 114 פעמים
קיבל תודות: 66 פעמים

עברתי לopenhab וצריך עזרה

נושא שלא נקרא #1 

התקנתי openhab ואני צריך עזרה במימוש switcher v3 בopenhab
ראיתי שרשורים אבל לא צלחתי להבין מה זה exec ואיך משתמש בזה

razserv2010 (פותח השרשור)
חבר פעיל במיוחד
חבר פעיל במיוחד
הודעות: 806
הצטרף: אוקטובר 2013
נתן תודות: 114 פעמים
קיבל תודות: 66 פעמים

נושא שלא נקרא #2 

אין פה אף אחד שיש לו switcher עם openhab?

jagheadg
חבר ותיק
חבר ותיק
הודעות: 1148
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 52 פעמים
קיבל תודות: 112 פעמים

נושא שלא נקרא #3 

@razserv2010
·
יש אבל רק קריאה של המצב.
עדיין לא מימשתי שליטה.

switcher.items

קוד: בחירת הכל

String Switcher_Command_Output "[%s]" { channel="exec:command:SwitcherAll:output" }

String SwitcherStatus "Switcher [%s]"
Number SwitcherCurrent "Switcher Current [%.1f Amp]"
Number SwitcherPowerConsumption "Switcher Power [%.0f W]"
Switch SwitcherOnline "Switcher [MAP(ping.map):%s]" { channel="network:pingdevice:Switcher:online" }
DateTime Switcher_LastUpdate "Last Update [%1$td.%1$tm.%1$tY, %1$tH:%1$tM]" {channel="exec:command:SwitcherAll:output" [profile="timestamp-change"] }
נערך לאחרונה על ידי jagheadg ב 16/07/2020 19:15, נערך פעם 1 בסך הכל.

jagheadg
חבר ותיק
חבר ותיק
הודעות: 1148
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 52 פעמים
קיבל תודות: 112 פעמים

נושא שלא נקרא #4 

sitemap

קוד: בחירת הכל

Text item=SwitcherStatus label="דוד מים חמים" icon="switcher" {
Frame label="Switcher" {
Text item=SwitcherStatus icon="switcher"
Default item=Switcher_LastUpdate icon="time-on"    
Text item=SwitcherCurrent label="Current [%s A]" icon="ampere"
Text item=SwitcherPowerConsumption label="Power [%s W]" icon="wattpower"
Chart item=SwitcherCurrent label="Current" period=D refresh=600000 legend=true service="influxdb"
}
נערך לאחרונה על ידי jagheadg ב 16/07/2020 19:16, נערך פעם 1 בסך הכל.

jagheadg
חבר ותיק
חבר ותיק
הודעות: 1148
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 52 פעמים
קיבל תודות: 112 פעמים

נושא שלא נקרא #5 

switcher.rules
[left]

קוד: בחירת הכל

rule "Switcher Output"
when
   Item Switcher_Command_Output changed 
then 
// --- Sending Login Packet to Switcher...
// --- Received SessionID: 00000000
// --- Getting Switcher state...
// --- Device Name: Switcher
// --- Device is ON
// --- Electric Current is: 11.5(A)
// --- Power consumption is: 2535(W)
// --- Device is configured to auto shutdown in: 2:00 hour(s)
// --- Auto shutdown device in: 1:59:25
// --- Done!

    val SwitcherVal =   Switcher_Command_Output.state.toString.split('--- ').get(5).trim
    val SwitcherCurrentVal =    Switcher_Command_Output.state.toString.split('--- ').get(6).trim
    val SwitcherPowerConsumptionVal =   Switcher_Command_Output.state.toString.split('--- ').get(7).trim

    //logInfo("Switcher", "---"+ Switcher +"---")   
    var SwitcherStatusVar = transform("REGEX", "Device is (.*)", SwitcherVal.toString)
    SwitcherStatus.postUpdate(SwitcherStatusVar)
    //logInfo("SwitcherStatusVar", "---"+ SwitcherStatusVar +"---")

    //logInfo("SwitcherCurrent","---"+  SwitcherCurrent+"---")
    var SwitcherCurrentVar = transform("REGEX","Electric Current is: (.*)A", SwitcherCurrentVal.toString)
    SwitcherCurrent.postUpdate(SwitcherCurrentVar)
    //logInfo("SwitcherCurrentVar","---"+  SwitcherCurrentVar+"---")


    //logInfo("SwitcherPowerConsumption", "---"+ SwitcherPowerConsumptionVal+  "---")   
    var SwitcherPowerConsumptionVar = transform("REGEX", "Power consumption is: (.*)W", SwitcherPowerConsumptionVal.toString)
    SwitcherPowerConsumption.postUpdate(SwitcherPowerConsumptionVar)
    //logInfo("SwitcherPowerConsumptionVar    ", "---"+ SwitcherPowerConsumptionVar   +"---")

    //Switcher_LastUpdate.postUpdate(new DateTimeType()) // ### Replaced with item profile ###
end
[/left]

jagheadg
חבר ותיק
חבר ותיק
הודעות: 1148
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 52 פעמים
קיבל תודות: 112 פעמים

נושא שלא נקרא #6 

בתיקיית ה scripts
שים קובץ switcher.py המקורי שעבר שינוי קל כדי שיהיה אפשר להוציא פרמטרים בקלות. (החלפה ב שלושה מינוסים ---)

jagheadg
חבר ותיק
חבר ותיק
הודעות: 1148
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 52 פעמים
קיבל תודות: 112 פעמים

נושא שלא נקרא #7 

תגדיר בתיקיית ה things את ה"דבר" שמריץ את הסקריפט:

קוד: בחירת הכל

Thing exec:command:SwitcherAll [ command="/usr/bin/python /etc/openhab2/scripts/switcher.py 2" , interval=60 , timeout=10 , autorun=false]

jagheadg
חבר ותיק
חבר ותיק
הודעות: 1148
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 52 פעמים
קיבל תודות: 112 פעמים

נושא שלא נקרא #8 

כדאי שגם תסתכל פה:

https://community.openhab.org/t/transfo ... t/84319/11

חייב גם להקצות IP קבוע לסוויטצ'ר דרך הראוטר.
ככה הוא לא יתנתק ויקבל כל פעם כתובת חדשה אלא קבועה והסקיפט יוכל "לדבר" איתו כל הזמן.

razserv2010 (פותח השרשור)
חבר פעיל במיוחד
חבר פעיל במיוחד
הודעות: 806
הצטרף: אוקטובר 2013
נתן תודות: 114 פעמים
קיבל תודות: 66 פעמים

נושא שלא נקרא #9 

@jagheadg
·

תודה רבה!
ומה זה exec?

razserv2010 (פותח השרשור)
חבר פעיל במיוחד
חבר פעיל במיוחד
הודעות: 806
הצטרף: אוקטובר 2013
נתן תודות: 114 פעמים
קיבל תודות: 66 פעמים

נושא שלא נקרא #10 

@jagheadg
·

עשיתי כל מה שרשמת לי..
מה הבעיה כאן?

[url=//[imgur-album]kFTmE8V[/imgur-album]][/url]

jagheadg
חבר ותיק
חבר ותיק
הודעות: 1148
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 52 פעמים
קיבל תודות: 112 פעמים

נושא שלא נקרא #11 

@razserv2010

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

https://www.openhab.org/docs/configurat ... emaps.html

https://www.openhab.org/addons/bindings/exec/

כן, יש צורך בקצת סבלנות והרבה ניסוי וטעייה, זה לא עובד מייד.

ולעניין הדוגמה שרשמתי למעלה, זה קטע קוד חתוך מ sitemap גדול וכללי מהמערכת. לכן יש שגיאה כי הפורמט לא נכון ושלם.

שלח תגובה

חזור אל “עוזרות קוליות, שליטה ובקרה”