התקנתי openhab ואני צריך עזרה במימוש switcher v3 בopenhab
ראיתי שרשורים אבל לא צלחתי להבין מה זה exec ואיך משתמש בזה
עברתי לopenhab וצריך עזרה
- razserv2010 (פותח השרשור)
-
- חבר פעיל במיוחד
- הודעות: 806
- הצטרף: אוקטובר 2013
- נתן תודות: 114 פעמים
- קיבל תודות: 66 פעמים
- razserv2010 (פותח השרשור)
-
- חבר פעיל במיוחד
- הודעות: 806
- הצטרף: אוקטובר 2013
- נתן תודות: 114 פעמים
- קיבל תודות: 66 פעמים
- jagheadg
-
- חבר ותיק
- הודעות: 1148
- הצטרף: דצמבר 2010
- מיקום: כפר הדרדסים
- נתן תודות: 52 פעמים
- קיבל תודות: 112 פעמים
@razserv2010
·
יש אבל רק קריאה של המצב.
עדיין לא מימשתי שליטה.
switcher.items
·
יש אבל רק קריאה של המצב.
עדיין לא מימשתי שליטה.
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 פעמים
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 פעמים
switcher.rules
[left][/left]
[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
- jagheadg
-
- חבר ותיק
- הודעות: 1148
- הצטרף: דצמבר 2010
- מיקום: כפר הדרדסים
- נתן תודות: 52 פעמים
- קיבל תודות: 112 פעמים
תגדיר בתיקיית ה 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 פעמים
כדאי שגם תסתכל פה:
https://community.openhab.org/t/transfo ... t/84319/11
חייב גם להקצות IP קבוע לסוויטצ'ר דרך הראוטר.
ככה הוא לא יתנתק ויקבל כל פעם כתובת חדשה אלא קבועה והסקיפט יוכל "לדבר" איתו כל הזמן.
https://community.openhab.org/t/transfo ... t/84319/11
חייב גם להקצות IP קבוע לסוויטצ'ר דרך הראוטר.
ככה הוא לא יתנתק ויקבל כל פעם כתובת חדשה אלא קבועה והסקיפט יוכל "לדבר" איתו כל הזמן.
- razserv2010 (פותח השרשור)
-
- חבר פעיל במיוחד
- הודעות: 806
- הצטרף: אוקטובר 2013
- נתן תודות: 114 פעמים
- קיבל תודות: 66 פעמים
- razserv2010 (פותח השרשור)
-
- חבר פעיל במיוחד
- הודעות: 806
- הצטרף: אוקטובר 2013
- נתן תודות: 114 פעמים
- קיבל תודות: 66 פעמים
- jagheadg
-
- חבר ותיק
- הודעות: 1148
- הצטרף: דצמבר 2010
- מיקום: כפר הדרדסים
- נתן תודות: 52 פעמים
- קיבל תודות: 112 פעמים
@razserv2010
מצטער מראש אבל אי אפשר לעזור ככה על רגל אחת כאן. זה יהיה מאוד מבלבל ומתסכל לשני הצדדים.
יש מסלול למידה של הנושא כמו בכל דבר.
לכן אני מציע שתקרא קצת קודם על הדרך לכתוב קוד תקין והאפשרויות השונות במערכת. זה דורש לימוד.
המקור הטוב ביותר הוא האתר הרשמי עם דוגמאות בסיסיות שמהן אפשר להתחיל לקבל ידע בסיסי:
https://www.openhab.org/docs/configurat ... emaps.html
https://www.openhab.org/addons/bindings/exec/
כן, יש צורך בקצת סבלנות והרבה ניסוי וטעייה, זה לא עובד מייד.
ולעניין הדוגמה שרשמתי למעלה, זה קטע קוד חתוך מ sitemap גדול וכללי מהמערכת. לכן יש שגיאה כי הפורמט לא נכון ושלם.
מצטער מראש אבל אי אפשר לעזור ככה על רגל אחת כאן. זה יהיה מאוד מבלבל ומתסכל לשני הצדדים.
יש מסלול למידה של הנושא כמו בכל דבר.
לכן אני מציע שתקרא קצת קודם על הדרך לכתוב קוד תקין והאפשרויות השונות במערכת. זה דורש לימוד.
המקור הטוב ביותר הוא האתר הרשמי עם דוגמאות בסיסיות שמהן אפשר להתחיל לקבל ידע בסיסי:
https://www.openhab.org/docs/configurat ... emaps.html
https://www.openhab.org/addons/bindings/exec/
כן, יש צורך בקצת סבלנות והרבה ניסוי וטעייה, זה לא עובד מייד.
ולעניין הדוגמה שרשמתי למעלה, זה קטע קוד חתוך מ sitemap גדול וכללי מהמערכת. לכן יש שגיאה כי הפורמט לא נכון ושלם.