חיבור מד-המים הדירתי ל-HA
-
ma0r
-
- חבר שרק התחיל

- תגובות: 41
- הצטרף: דצמבר 2019
אם אתם משלמים את חשבון המים שלכם לאחד מתאגידי המים שבתמונה, אז יש סיכוי טוב שאתם יכולים לחבר את המונה מים למערכת הבית החכם שלכם.
כתבתי אינטגרציה פשוטה עבור Home Assistant עם השרות קריאת מונים של חברת ארד טכנולוגיות, שמספקת את המונים לתאגידי המים האלה.
אפשר להתקין בקלות באמצעות HACS. כל הפרטים כאן:
https://github.com/maorcc/citymind_water_meter
אשמח לשמוע כל פידבק.
כתבתי אינטגרציה פשוטה עבור Home Assistant עם השרות קריאת מונים של חברת ארד טכנולוגיות, שמספקת את המונים לתאגידי המים האלה.
אפשר להתקין בקלות באמצעות HACS. כל הפרטים כאן:
https://github.com/maorcc/citymind_water_meter
אשמח לשמוע כל פידבק.
נא להרשם/להכנס לחשבון בפורום על מנת לצפות בקבצים או בתמונות המצורפים לשרשור
- hsafra
-
- חבר פעיל מאוד

- תגובות: 419
- הצטרף: מאי 2011
התקנתי עכשיו, חיכיתי בסבלנות 30 דקות
ואז קיבלתי את השגיאה הזאת בלוג:
2020-07-23 11:55:30 WARNING (SyncWorker_3) [custom_components.citymind_water_meter.sensor] response status code 500
לא השתמשתי ב- !secret אם זה משנה
עריכה: גם עם secret מקבל 500. היוזר עובד באתר שלהם כמובן. תודה!
2020-07-23 11:55:30 WARNING (SyncWorker_3) [custom_components.citymind_water_meter.sensor] response status code 500
לא השתמשתי ב- !secret אם זה משנה
עריכה: גם עם secret מקבל 500. היוזר עובד באתר שלהם כמובן. תודה!
- DudeShemesh
-
- חבר פעיל במיוחד

- תגובות: 916
- הצטרף: מאי 2016
נראה מגניב, אני מתכוון לנסות.
מהסתכלות על הקוד, אני לא בטוח שאני מבין את המשמעות של הסנסור של הצריכה בלי יחידת זמן. בכל מקרה, אתה גם לא חייב לממש בעצמך - ל HA יש תמיכה בנגזרת (https://www.home-assistant.io/integrations/derivative/).
עוד משהו (שוב, מהסתכלות על הקוד, עוד אין לי חשבון בארד) - נראה שאתה עושה scraping, אבל בסוף יש שם JSON. אם ה JSON הזה נטען דינמית, יכול להיות שאפשר למצוא את הקריאה הישירה אליו, ואז לא צריך קוד בכלל - אפשר להשתמש ב restful sensor.
מהסתכלות על הקוד, אני לא בטוח שאני מבין את המשמעות של הסנסור של הצריכה בלי יחידת זמן. בכל מקרה, אתה גם לא חייב לממש בעצמך - ל HA יש תמיכה בנגזרת (https://www.home-assistant.io/integrations/derivative/).
עוד משהו (שוב, מהסתכלות על הקוד, עוד אין לי חשבון בארד) - נראה שאתה עושה scraping, אבל בסוף יש שם JSON. אם ה JSON הזה נטען דינמית, יכול להיות שאפשר למצוא את הקריאה הישירה אליו, ואז לא צריך קוד בכלל - אפשר להשתמש ב restful sensor.
-
ma0r
-
- חבר שרק התחיל

- תגובות: 41
- הצטרף: דצמבר 2019
·וואו, מוזר. אני צריך לחשוב איך אני יכול לשחזר את זה... אולי ננסה מתישהו ביחד בזום.hsafra כתב:התקנתי עכשיו, חיכיתי בסבלנות 30 דקותואז קיבלתי את השגיאה הזאת בלוג:
2020-07-23 11:55:30 WARNING (SyncWorker_3) [custom_components.citymind_water_meter.sensor] response status code 500
לא השתמשתי ב- !secret אם זה משנה
עריכה: גם עם secret מקבל 500. היוזר עובד באתר שלהם כמובן. תודה!...
-
ma0r
-
- חבר שרק התחיל

- תגובות: 41
- הצטרף: דצמבר 2019
·מה שהקוד עושה זה פעולת POST ללוג-אין רגיל. התשובה שמתקבלת זה HTML שמכיל בתוכו טאג עם נתונים במבנה JSON. זה משהו די מוזר שמבוסס על טכנולוגיות ASP עתיקות. אין כרגע API שאפשר לקבל דרכו ישר את ה-JSONDudeShemesh כתב:נראה מגניב, אני מתכוון לנסות.
מהסתכלות על הקוד, אני לא בטוח שאני מבין את המשמעות של הסנסור של הצריכה בלי יחידת זמן. בכל מקרה, אתה גם לא חייב לממש בעצמך - ל HA יש תמיכה בנגזרת (https://www.home-assistant.io/integrations/derivative/).
עוד משהו (שוב, מהסתכלות על הקוד, עוד אין לי חשבון בארד) - נראה שאתה עושה scraping, אבל בסוף יש שם JSON. אם ה JSON הזה נטען דינמית, יכול להיות שאפשר למצוא את הקריאה הישירה אליו, ואז לא צריך קוד בכלל - אפשר להשתמש ב restful sensor....
- DudeShemesh
-
- חבר פעיל במיוחד

- תגובות: 916
- הצטרף: מאי 2016
מה שאתה מתאר - HTML סטטי שמכיל JSON, מאוד לא נפוץ. בד"כ ה JSON מגיע בקריאה דינמית (אחרת השרת כבר היה יכול להחזיר HTML "מעובד").
אתה בטוח שאין שום קריאה מאחורי הקלעים לקבל את ה JSON? נשמע שבדקת לעומק, אבל זה ממש מפתיע.
אתה בטוח שאין שום קריאה מאחורי הקלעים לקבל את ה JSON? נשמע שבדקת לעומק, אבל זה ממש מפתיע.
-
ma0r
-
- חבר שרק התחיל

- תגובות: 41
- הצטרף: דצמבר 2019
כן, אני אכן בטוח שיש שם JSON בתוך טאג של HTML.DudeShemesh כתב:מה שאתה מתאר - HTML סטטי שמכיל JSON, מאוד לא נפוץ. בד"כ ה JSON מגיע בקריאה דינמית (אחרת השרת כבר היה יכול להחזיר HTML "מעובד").
אתה בטוח שאין שום קריאה מאחורי הקלעים לקבל את ה JSON? נשמע שבדקת לעומק, אבל זה ממש מפתיע....
יותר מזה, יש באתר תערובת חסרת הגיון של נתונים שמשולבים בתוך ה-HTML, נתונים שמשולבים ב-JSON בתוך הHTML וקריאות נוספות דרך API לנתונים הסטוריים. ממש תערובת חסרת הגיון. אבל זה מה יש, ולשימחתי, לא היה קשה להוציא את הנתון של "קריאת מונה" משם בקריאת http post יחידה.
- theone
-
- חבר ותיק

- תגובות: 1579
- הצטרף: אוקטובר 2005
·גם אני מקבל את אותה השגיאה ולא מקבל נתונים. Unknown.ma0r כתב:·וואו, מוזר. אני צריך לחשוב איך אני יכול לשחזר את זה... אולי ננסה מתישהו ביחד בזום..........
-
ma0r
-
- חבר שרק התחיל

- תגובות: 41
- הצטרף: דצמבר 2019
תוקן הבאג. עכשיו זה עובד
@theone, @hsafra :
תיקנתי את התקלה. תוכלו בבקשה לאשר כאן שעכשיו זה עובד אצלכם?
תודה!
תיקנתי את התקלה. תוכלו בבקשה לאשר כאן שעכשיו זה עובד אצלכם?
תודה!
- hsafra
-
- חבר פעיל מאוד

- תגובות: 419
- הצטרף: מאי 2011
עובד תקין אצלי. תודה רבה
- theone
-
- חבר ותיק

- תגובות: 1579
- הצטרף: אוקטובר 2005
עובד אצלי גם.
כרגע אני רואה רק נתונים ב- sensor.water_meter_reading
כל כמה זמן אמור sensor.water_consumption להתעדכן כי זה הרי צריכה ולא קריאה רגעית? (עדיין מראה UNKNOWN) אבל אין שגיאה בלוגים.
כרגע אני רואה רק נתונים ב- sensor.water_meter_reading
כל כמה זמן אמור sensor.water_consumption להתעדכן כי זה הרי צריכה ולא קריאה רגעית? (עדיין מראה UNKNOWN) אבל אין שגיאה בלוגים.
- hsafra
-
- חבר פעיל מאוד

- תגובות: 419
- הצטרף: מאי 2011
@theone
·
אמור להתרענן כל חצי שעה (1800 שניות). אצלי עובד בפעם הראשונה ואז מקבל בלוג.
מופיע גם אצלך?
·
אמור להתרענן כל חצי שעה (1800 שניות). אצלי עובד בפעם הראשונה ואז מקבל בלוג.
קוד: בחירת הכל
2020-07-27 16:28:53 ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.water_meter_reading fails
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 272, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 465, in async_device_update
await self.hass.async_add_executor_job(
File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/citymind_water_meter/sensor.py", line 131, in update
self._data_provider.refresh_data()
File "/config/custom_components/citymind_water_meter/sensor.py", line 96, in refresh_data
json_str = soup.select_one("#cphMain_div_properties").text # The data is hidden as json text inside the html
AttributeError: 'NoneType' object has no attribute 'text'
- theone
-
- חבר ותיק

- תגובות: 1579
- הצטרף: אוקטובר 2005
אכן
קוד: בחירת הכל
2020-07-27 14:19:19 ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.water_meter_reading fails
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 272, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 465, in async_device_update
await self.hass.async_add_executor_job(
File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/citymind_water_meter/sensor.py", line 131, in update
self._data_provider.refresh_data()
File "/config/custom_components/citymind_water_meter/sensor.py", line 96, in refresh_data
json_str = soup.select_one("#cphMain_div_properties").text # The data is hidden as json text inside the html
AttributeError: 'NoneType' object has no attribute 'text'
- zula
-
- חבר פעיל

- תגובות: 57
- הצטרף: ינואר 2006
- מיקום: רמת גן
אתם יודעים אם ניתן גם במי-אונו (קריית אונו)?
- hsafra
-
- חבר פעיל מאוד

- תגובות: 419
- הצטרף: מאי 2011
-
ma0r
-
- חבר שרק התחיל

- תגובות: 41
- הצטרף: דצמבר 2019
·לא כל התאגידי מים שהם לקוחות של ארד טכנולוגיות מוכנים לשלם את התוספת (היחסית קטנה) כדי שהצרכנים שלהם יוכלו לקבל גישה למונה באינטנט.zula כתב:אתם יודעים אם ניתן גם במי-אונו (קריית אונו)?...
בכל מקרה, פשוט תנסה להרשם כמשתמש חדש באתר: https://cp.city-mind.com/
אם זה יעבוד, אחלה.
-
ma0r
-
- חבר שרק התחיל

- תגובות: 41
- הצטרף: דצמבר 2019
·אופסhsafra כתב:@theone
·
אמור להתרענן כל חצי שעה (1800 שניות). אצלי עובד בפעם הראשונה ואז מקבל בלוג.
2020-07-27 16:28:53 ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.water_meter_reading fails
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 272, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 465, in async_device_update
await self.hass.async_add_executor_job(
File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/citymind_water_meter/sensor.py", line 131, in update
self._data_provider.refresh_data()
File "/config/custom_components/citymind_water_meter/sensor.py", line 96, in refresh_data
json_str = soup.select_one("#cphMain_div_properties").text # The data is hidden as json text inside the html
AttributeError: 'NoneType' object has no attribute 'text'
מופיע גם אצלך?...
מבטיח לתקן עוד היום.
- theone
-
- חבר ותיק

- תגובות: 1579
- הצטרף: אוקטובר 2005
עכשיו אני מקבל כל חצי שעה:
לא יודע אם זה באמת בעיה, אבל נראה לי שיש TIMEOUT על ה- SESSION שאתה פותח מול השרת.
קוד: בחירת הכל
2020-07-27 19:22:06 ERROR (SyncWorker_2) [custom_components.citymind_water_meter.sensor] Redirected to https://cp.city-mind.com/ , probably because session expired.- hsafra
-
- חבר פעיל מאוד

- תגובות: 419
- הצטרף: מאי 2011
גם אצלי מופיעה ההודעה על ה- timeout עם גרסה 0.1.2 אבל נראה שהנתונים מתעדכנים למרות זאת.
-
ma0r
-
- חבר שרק התחיל

- תגובות: 41
- הצטרף: דצמבר 2019
·נראה שהשרת לפעמים תקוע ומגיעים ל-timeout. הוספתי הגבלת timeout כדי לא לזבל יותר מדי את הלוגים.hsafra כתב:גם אצלי מופיעה ההודעה על ה- timeout עם גרסה 0.1.2 אבל נראה שהנתונים מתעדכנים למרות זאת....
·שיניתי גם את הניהול של ה-session כך שיהיה יותר יציב. נקווה שעכשיו זה יעבוד חלק יותר.
אצל כל אחד מאיתנו ההגדרות קצת שונות והשרות מתנהג קצת אחרת, אז מקבלים התנהגות שונה.
בבקשה תדווחו מה אתם רואים. תודה.