Ring Video Doorbell

Begonnen von blueberry63, 23 August 2017, 11:06:28

Vorheriges Thema - Nächstes Thema

speed

Hallo,
habe jetzt die neue ring.py mir installiert, und was muss ich jetzt genau machen das es wieder geht ?
Also Name und Passwort eintragen reicht wohl nicht .
Ich bekomme dann das hier :
Traceback (most recent call last):
  File "./ring.py", line 74, in <module>
    auth = Auth("MyProject/1.0", None, token_updated)
TypeError: __init__() takes from 1 to 3 positional arguments but 4 were given

Kann jemand helfen ?
Danke
speed

budy

Deine Python-Version ist zu alt. Du brauchst 3.7!

Gruß,
budy
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

budy

Zitat von: bluemevo am 01 März 2020, 21:15:35
Ich glaub, ich wäre nicht der einzige, der dir dafür dankbar ist ;)
Ich nutze derzeit die Motion Events als Bewegungsmelder in meiner Haussteuerung. Das hatte bisher ganz gut geklappt.
Die Stickup-Cam macht das Licht vorm Haus an und der Motion Event der Doorbell soll dann die Beleuchtung des CodePads am Hauseingang einschalten.

Ich glaube, das müsste auch weiterhin gehen, denn wenn ich das richtig gesehen habe, werden alle Events über das Dings-Objekt ausgegeben, das auslösende Device steht dann da drin. Das könntest du einfach mal checken, ob bei einem Event der Stickup-Cam das Skript nicht auch auslöst.
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

budy

Ich habe vorhin die Version 1.0.9 eingecheckt, welche u.a. die Verbindung zur Ring API mit einem Exception-Wrapper versieht, da ich ab und zu mal Verbindungs-Probleme zur Ring API habe und sich dann immer gleich das ganze Skript verabschiedet. Das war ja auch der Grund dafür, dass ursprünglich immer dafür gesorgt werden musste, dass das Skript periodisch neu gestartet wird. Aktuell weiß ich noch nicht, ob bei so einem Problem ein ganz neuer Login fällig ist, oder ob das nur Transienten sind... aber das sehe ich dann.

Außerdem ist in dieser Version auf alle Fälle schon mal das Holen der letzten CaptureURL enthalten. Was das angeht, musste ich leider feststellen, dass es immer noch nötig ist die History zu pollen, wenn man ein Video herunterladen will - obwohl es meiner Meinung nach in der Lib anders drin steht und die Lib eigentlich selber warten soll. Das muss ich mir nochmal genauer ansehen.
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

bluemevo

Zitat von: budy am 02 März 2020, 19:03:16
Ich glaube, das müsste auch weiterhin gehen, denn wenn ich das richtig gesehen habe, werden alle Events über das Dings-Objekt ausgegeben, das auslösende Device steht dann da drin. Das könntest du einfach mal checken, ob bei einem Event der Stickup-Cam das Skript nicht auch auslöst.
Deine Version 1.0.7 hast du nur für die Doorbell geschrieben -> doorbot
Ich habe dann doorbot durch Stickup_cam ersetzt. Damit habe ich die Attribute der Stickup-Cam bekommen. Als ich beides in ein Script gepackt habe, habe ich immer nur die  Attribute der Stickup-Cam an FHEM gesendet bekommen. Laut Log hat das Script aber beide Geräte belauscht - ich war jedoch nicht draußen (Schande über mich  :o)
Hab das erst getestet als ich beide Scripte getrennt laufen hatte.

Ich werd deine Version 1.0.9 mal testen. Ich geb spätestens morgen weder Bescheid :)

budy

Zitat von: bluemevo am 02 März 2020, 22:05:25
Deine Version 1.0.7 hast du nur für die Doorbell geschrieben -> doorbot
Ich habe dann doorbot durch Stickup_cam ersetzt. Damit habe ich die Attribute der Stickup-Cam bekommen. Als ich beides in ein Script gepackt habe, habe ich immer nur die  Attribute der Stickup-Cam an FHEM gesendet bekommen. Laut Log hat das Script aber beide Geräte belauscht - ich war jedoch nicht draußen (Schande über mich  :o)
Hab das erst getestet als ich beide Scripte getrennt laufen hatte.

Ich werd deine Version 1.0.9 mal testen. Ich geb spätestens morgen weder Bescheid :)

Na ja, nicht für den Dootbot geschrieben... du kannst bei der Initialisierung des Ring-Objekts wählen, welche Ring-Typen du gemedlet bekommen willst. Ich hatte das nur auf den Doorbot begrenzt, aber du kannst da auch alle Typen eintragen. So, wie ich das mit den freigegebenen Doorbots gemacht habe:

tmp = list(devs['doorbots']+devs['authorized_doorbots'])

Wenn du da noch ['stickup_cams'] hinzufügst, dann werden die auch zurückgemeldet. Wenn du das tust, dann sollten eigentlich auch die Events der Cams gemeldet werden, das war es, was ich meinte. Wenn dem so ist, dann kann ich sicherlich die Readings "aufbohren" und immer auch den Ring-Device-Namen voranstellen...

Je mehr Ring-Devices man hat, desto mehr Readings werden das dann aber natürlich...

Gruß,
budy
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

budy

Ich habe gerade mal die komplette Liste abgerufen, welche mein FHEM-Nachbar sehen kann, da taucht meine Chime nicht auf, weil ich sie gar nicht freigeben kann - ich kann also kaum testen, ob meine Annahmen richtig sind... ;)

Gruß,
budy
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

bluemevo

Ich hab vorhin mal getestet.
Mit V1.0.9 bekomm ich von beiden Cams Trigger, aber beide Motion Events kommen bei der Doorbell an.
Die Attribute werden nur noch der Stickup Cam aktualisiert. Ich hab die Stickup Cam in

tmp = list(devs['doorbots']+devs['authorized_doorbots']+devs['stickup_cams'])

ergänz.

Irgendwie kommt da im Moment irgendwas durcheinander, oder mach ich was falsch  :o

marko67

Guten Abend,

ich habe auf Python 3.7 "upgedatet" und

Zur installation müssen zwei Python3.7 libs installiert werden:
pip3.7 install git+https://github.com/tchellomello/python-ring-doorbell
pip3.7 install fhem


geladen.

Die ring.py und run_ring neu geladen aus dem Git und in den /home/pi/ Ordner verschoben.

Wenn ich nun die ring.py starten möchte bekomme ich folgenden Fehler: pi@FHEMPi:~ $ sudo python3 ring.py
Traceback (most recent call last):
  File "ring.py", line 8, in <module>
    import fhem
ImportError: No module named 'fhem'


Was sagt der Fehler aus?
Was ich auch noch nicht verstanden habe, den 6 Stelligen Code der mir zugesendet wird... wo muss ich den eintragen?

budy

Zitat von: bluemevo am 03 März 2020, 22:42:47
Ich hab vorhin mal getestet.
Mit V1.0.9 bekomm ich von beiden Cams Trigger, aber beide Motion Events kommen bei der Doorbell an.
Die Attribute werden nur noch der Stickup Cam aktualisiert. Ich hab die Stickup Cam in

tmp = list(devs['doorbots']+devs['authorized_doorbots']+devs['stickup_cams'])

ergänz.

Irgendwie kommt da im Moment irgendwas durcheinander, oder mach ich was falsch  :o

Nein, du machst nichts falsch. Das "Dings-Objekt" scheint, wie ich mir das schon gedacht habe, alle Events auszuliefern. Du musst mal in die Ausgabe des Logs schauen, da müsste drin stehen, welches Ring-Device den Alarm ausgelöst hat. So sieht so eine Ausgabe bei mir aus:

2020-03-03 18:54:19,732 - fhem_ring - DEBUG - Dings: [{'id': 6800041580263352262, 'id_str': '6800041580263352262', 'state': 'ringing', 'protocol': 'sip', 'doorbot_id': 24881094, 'doorbot_description': 'Haustuer', 'device_kind': 'lpd_v2', 'motion': True, 'snapshot_url': '', 'kind': 'motion', 'sip_server_ip': '3.121.121.27', 'sip_server_port': 15063, 'sip_server_tls': True, 'sip_session_id': '5snkpp80nn9u6-2061ss6gm7v17m-1s02', 'sip_from': 'sip:99796778@ring.com', 'sip_to': 'sip:5snkpp80nn9u6-2061ss6gm7v17m-1s02@3.121.121.27:15064;transport=tls', 'audio_jitter_buffer_ms': 300, 'video_jitter_buffer_ms': 300, 'sip_endpoints': None, 'expires_in': 179, 'now': 1583258059.66932, 'optimization_level': 1, 'sip_token': '', 'sip_ding_id': '6800041580263352262', 'detection_type': ''}]

Schau mal nach doorbot_description/_id, das müsste sich, je nach Ring-Device unterscheiden.

Gruß,
budy
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

budy

Zitat von: marko67 am 03 März 2020, 23:10:03
Wenn ich nun die ring.py starten möchte bekomme ich folgenden Fehler: pi@FHEMPi:~ $ sudo python3 ring.py
Traceback (most recent call last):
  File "ring.py", line 8, in <module>
    import fhem
ImportError: No module named 'fhem'


Was sagt der Fehler aus?
Was ich auch noch nicht verstanden habe, den 6 Stelligen Code der mir zugesendet wird... wo muss ich den eintragen?

Du musst für das Python3.7 noch die fhemlib installieren... wie das geht, steht gleich am Anfang im Readme.md...
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

marko67

Hallo

Du meinst pip3.7 install fhem ??

Das hatte ich auch schon in Verdacht aber es ist doch installiert??

Habe nach dem update von Python

1. sudo pip3.7 install git+https://github.com/tchellomello/python-ring-doorbell
2. sudo pip3.7 install fhem

Danach die beiden Dateien geholt und in den /home/pi/ Ordner geschoben.
Dann ein sudo reboot.

Beim Starten kommt dann der Fehler.

bluemevo

Zitat von: budy am 03 März 2020, 23:24:22
Nein, du machst nichts falsch. Das "Dings-Objekt" scheint, wie ich mir das schon gedacht habe, alle Events auszuliefern. Du musst mal in die Ausgabe des Logs schauen, da müsste drin stehen, welches Ring-Device den Alarm ausgelöst hat. So sieht so eine Ausgabe bei mir aus:

2020-03-03 18:54:19,732 - fhem_ring - DEBUG - Dings: [{'id': 6800041580263352262, 'id_str': '6800041580263352262', 'state': 'ringing', 'protocol': 'sip', 'doorbot_id': 24881094, 'doorbot_description': 'Haustuer', 'device_kind': 'lpd_v2', 'motion': True, 'snapshot_url': '', 'kind': 'motion', 'sip_server_ip': '3.121.121.27', 'sip_server_port': 15063, 'sip_server_tls': True, 'sip_session_id': '5snkpp80nn9u6-2061ss6gm7v17m-1s02', 'sip_from': 'sip:99796778@ring.com', 'sip_to': 'sip:5snkpp80nn9u6-2061ss6gm7v17m-1s02@3.121.121.27:15064;transport=tls', 'audio_jitter_buffer_ms': 300, 'video_jitter_buffer_ms': 300, 'sip_endpoints': None, 'expires_in': 179, 'now': 1583258059.66932, 'optimization_level': 1, 'sip_token': '', 'sip_ding_id': '6800041580263352262', 'detection_type': ''}]

Schau mal nach doorbot_description/_id, das müsste sich, je nach Ring-Device unterscheiden.

Gruß,
budy

Ich lass es mal durchlaufen den Tag über morgen.
Dann schau ich in die Logs mal rein.

budy

Zitat von: marko67 am 03 März 2020, 23:41:16
Hallo

Du meinst pip3.7 install fhem ??

Das hatte ich auch schon in Verdacht aber es ist doch installiert??

Habe nach dem update von Python

1. sudo pip3.7 install git+https://github.com/tchellomello/python-ring-doorbell
2. sudo pip3.7 install fhem

Danach die beiden Dateien geholt und in den /home/pi/ Ordner geschoben.
Dann ein sudo reboot.

Beim Starten kommt dann der Fehler.

Du musst das richtige Python aufrufen...

sudo python3.7 ring.py

Gruß,
budy
Debian stretch, FHEM 5.9.
HM-CC-RT-DN, HM-ES-PMSw1-Pl, HM-LC-Dim1TPBU-FM, HMUARTLGW, HMLAN, HM-SEC-KEY, HM-SEC-RHS, HM-SEC-SC-2, HM-SEC-SCo, HM-SEC-SD-2, HM-OU-CFM-TW, div. HUEs, Wifilight, Ring Video Pro

marko67

Zitat von: budy am 04 März 2020, 08:53:57
Du musst das richtige Python aufrufen...

sudo python3.7 ring.py

Gruß,
budy

:-\ Du liebe Güte wie peinlich.

Es gibt Uhrzeiten da sollte man ins Bett und nicht vor den PC.

Danke für Deine Hilfe!!

Marko