שוחרר: ספריית פייתון ל Switcher 2

בית חכם, עוזרות חכמות, חשמל חכם, מערכות שליטה ובקרה, Amazon Echo, Alexa, Google home, Control4, RTI, מנעולים חכמים ועוד.
BuSHari
חבר פעיל מאוד
חבר פעיל מאוד
תגובות: 143
הצטרף: מאי 2007

שליחה

תודה רבה, הכל עובד מעולה, אני אעדכן את הוויקי לדוקר

moti_r
עורך ראשי HTCafe
עורך ראשי HTCafe
תגובות: 9712
הצטרף: נובמבר 2004
מיקום: ישראל

שליחה

@SagiLow

לקח לי קצת זמן להבין למה זה לא עובד ומה צריך לעשות.
אתה צריך להזיז את שורה 30:

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

from pyswitcherv2 import switcher as switcherv2
אל שורה 49, כך שתהיה השורה הראשונה בתוך setup_platform

אני לא יודע איך זה עובד ב-home assistant "רגיל", אבל בהתקנה עם hass.io קיבלתי הודעות שהמודול pyswitcherv2 לא נמצא, למרות שהוא ב-REQUIREMENTS שלך באופן תקין. כנראה שב-hass.io ה-import של ה-requirements נעשה אסינכרוני או אחרי שהוא מנסה לטעון את המודול או משהו כזה. ברגע שהעברתי את ה-import אל תוך הקריאה עצמה, הכל הסתדר ואני שולט על הסוויצ'ר באופן תקין.

בדוק את זה גם ב-ha בהתקנה "רגילה", ואם זה עובד אז זה שינוי הכרחי.


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

SagiLow פותח השרשור
חבר פעיל מאוד
חבר פעיל מאוד
תגובות: 116
הצטרף: דצמבר 2009

שליחה

moti_r כתב:@SagiLow

לקח לי קצת זמן להבין למה זה לא עובד ומה צריך לעשות.
אתה צריך להזיז את שורה 30:
from pyswitcherv2 import switcher as switcherv2

אל שורה 49, כך שתהיה השורה הראשונה בתוך setup_platform

אני לא יודע איך זה עובד ב-home assistant "רגיל", אבל בהתקנה עם hass.io קיבלתי הודעות שהמודול pyswitcherv2 לא נמצא, למרות שהוא ב-REQUIREMENTS שלך באופן תקין. כנראה שב-hass.io ה-import של ה-requirements נעשה אסינכרוני או אחרי שהוא מנסה לטעון את המודול או משהו כזה. ברגע שהעברתי את ה-import אל תוך הקריאה עצמה, הכל הסתדר ואני שולט על הסוויצ'ר באופן תקין.

בדוק את זה גם ב-ha בהתקנה "רגילה", ואם זה עובד אז זה שינוי הכרחי.


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

בכללי, אתה יכול לראות שיש issue פתוח על סגירה של השרת
יש להם איזו הגנה מוזרה של כמות sessions פתוחים וזה עובד בצורה דבילית
יש בספרייה גם מנגנון retry שמנסה להתמודד עם זה אבל לא תמיד מצליח

תודה רבה על העזרה!

jjj
חבר שרק התחיל
חבר שרק התחיל
תגובות: 17
הצטרף: יולי 2006
שם מלא: יעקב

שליחה

תודה רבה! אני כבר זמן מה מחפש דוד מים חכם שאוכל לשלוט עליו דרך home assistant.
שמתי לב כי המודול מדבר עם הכתובת IP הפנימית של המכשיר, אך האם מישהו ניסה לבדוק אם שליטה עדיין פועלת גם כאשר למכשיר אין גישה לאינטרנט?
אני מתכנן לחסום למכשיר את הגישה לאינטרנט באופן קבוע.

SagiLow פותח השרשור
חבר פעיל מאוד
חבר פעיל מאוד
תגובות: 116
הצטרף: דצמבר 2009

שליחה

jjj כתב:תודה רבה! אני כבר זמן מה מחפש דוד מים חכם שאוכל לשלוט עליו דרך home assistant.
שמתי לב כי המודול מדבר עם הכתובת IP הפנימית של המכשיר, אך האם מישהו ניסה לבדוק אם שליטה עדיין פועלת גם כאשר למכשיר אין גישה לאינטרנט?
אני מתכנן לחסום למכשיר את הגישה לאינטרנט באופן קבוע.
...
לא ניסיתי, אבל ממה שהצלחתי להבין, המכשיר לא צריך גישה לאינטרנט בשביל שזה יעבוד
נסה לחסום לו את כל הפורטים (הפורטים בתוך הרשת נשארים פתוחים) ולהפעיל את הספרייה

חזור אל “בית חכם ובקרה”