Ring Video Doorbell

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

Vorheriges Thema - Nächstes Thema

budy

Aktuell regt sich da wieder was auf Github in der Python lib. So wie ich das gesehen habe, sollte es zumindest mal möglich sein einen Snapshot von der Ring zu bekommen, aber darum kümmere ich mich erst nach meinem Urlaub. ;)

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

freakadings

Super, danke dir schon mal und schönen Urlaub :D

freakadings

Einen schönen Sonntag euch :)

Ich kann nun die doorbell2 mein eigen nennen und habe auch versucht sie nach dieser Anleitung von budy einzubinden https://github.com/budachst/ring-fhem

Allerdings haut das ganze nicht wirklich hin; Auch habe ich den Teil:
ZitatIn fhem habe ich einen Dummy angelegt mit dem Namen "Ring_[RingDeviceName]" (Achtung, wenn der Name nicht passt, muss die ring.py angepasst werden). [RingDeviceName] wird durch den Namen des Ring Devices ersetzt, wobei Leerzeichen entfernt werden. Bsp: Ring Device heißt "Front Door", in FHEM wird "Ring_FrontDoor" geschrieben. Der entsprechende Dummy wird wie folgt angelegt:

nicht so ganz verstanden. Woher kommt der Name, mit dem ich "RingDeviceName" ersetzen soll? Ist das der, den ich der Klingel in der App gegeben habe? Und falls ja, wo in der ring.py soll ich diesen anpassen?

was ich getan habe:


//===================Terminal (raspberry pi)===================

pip install git+https://github.com/tchellomello/python-ring-doorbell

pip install fhem

mkdir /opt/fhem/bin

wget https://raw.githubusercontent.com/budachst/ring-fhem/master/ring.py

wget https://raw.githubusercontent.com/budachst/ring-fhem/master/run_ring

sudo chown -R fhem:dialout /opt/fhem/bin/

sudo chmod 777 ring.py

sudo chmod 777 run_ring

nano ring.py  // attribute anpassen (nur "ring_user" und "ring_pass" geändert)

sudo su -u fhem crontab -e // @reboot /opt/fhem/bin/run_ring            und          @hourly /opt/fhem/bin/run_ring                eintragen

mkdir /opt/fhem/www/ring/

sudo chown -R fhem:dialout /opt/fhem/www/ring/

./run_ring




//===================IN FHEM===================

//Doorbell heißt in der App "Eingang"


defmod Ring_Eingang dummy
attr Ring_Eingang devStateIcon none:it_camera@green motion:secur_alarm@red ring:secur_alarm@orange
attr Ring_Eingang room Draußen
attr Ring_Eingang event-on-change-reading .*
attr Ring_Eingang setList none motion ring



Wenn ich jetzt versuche die Skripte zu starten passiert folgendes:

pi@raspberrypi:/opt/fhem/bin $ ./ring.py
from: can't read /var/mail/ring_doorbell
./ring.py: Zeile 2: import: Kommando nicht gefunden.
./ring.py: Zeile 3: import: Kommando nicht gefunden.
./ring.py: Zeile 4: import: Kommando nicht gefunden.
./ring.py: Zeile 5: import: Kommando nicht gefunden.
./ring.py: Zeile 6: import: Kommando nicht gefunden.
./ring.py: Zeile 7: import: Kommando nicht gefunden.
./ring.py: Zeile 8: Syntaxfehler beim unerwarteten Wort `sys'
./ring.py: Zeile 8: `reload(sys)'


bzw.:

pi@raspberrypi:/opt/fhem/bin $ ./run_ring
Process python /opt/fhem/bin/ring.py started.


In fhem tut sich nichts, ich schätze weil ich den Teil mit dem Namen nicht verstanden habe.

Ich hoffe man kann mir helfen :) Telnet geht übrigens.

BG,
Merlin

Otto123

#123
Hallo Merlin,

der grundlegende Fehler ist MMn das ring.py direkt zu starten.
Das geht nicht, in dem Script ist nicht mal ein Shebang. Da weiß gar keiner das es python ist. ;)
Nochmal der Link zu dem was ich getan habe:
https://forum.fhem.de/index.php/topic,75754.msg937804/topicseen.html#msg937804

Besser ist es, zum Testen erstmal so zu starten und schauen was er an Informationen wirft.
python ring.py

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

freakadings

Ah perfekt, danke :D

Er wollte erst noch die log-Datei, dann aber lief es:

sudo touch /opt/fhem/bin/ring.log

sudo chown fhem:dialout /opt/fhem/bin/ring.log

sudo chmod 777 /opt/fhem/bin/ring.log

python ring.py




Jetzt komme ich mit " sudo su -u fhem crontab -e " nicht mehr an die crontab datei von fhem...
Wie stelle ich denn sicher, dass er die Befehle in der crontab auch wirklich ausführt?





Otto123

ich finde das unnötig kompliziert, das Ganze in der Art als user fhem auszuführen.
Ich habe alles als Pi gemacht und es dann einfach so laufen lassen. Ja das ist auch nicht optimal.  ;)
Wenn es schon innerhalb von FHEM laufen soll, dann würde ich mir für die Zukunft noch überlegen es einfach anstatt mit crontab direkt in FHEM zu starten.
Dann kann man sich den Krampf mit dem Anlegen der Logdatei sparen :)

Viel wichtiger ist, dass es überhaupt läuft und dass man den Logginglevel im Script runterschraubt. Sonst ist am Ende des Monats die Platte voll.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

freakadings

Alles klar, das mit dem Loglevel ist ne gute Idee, wo stehen denn die möglichen?
Ich tippe auf INFO ERROR und DEBUG?

Ich habe kein glück mit Cronjobs, bei mir wird das Skript nicht automatisch gestartet.

Otto123

https://docs.python.org/3/library/logging.html#logging-levels
ich habe es auf CRITICAL gesetzt, damit wird bisher gar nichts mehr geloggt. Es stand glaub ich auf DEBUG  :o

Naja das Du kein Glück hast würde mich nicht wundern. Du hast das von der Lage und den Zugriffsmöglichkeiten erstmal ziemlich verwurschtelt. Kopiere das Ganze zum Test ins Homedir von deinem Standard User und Du wirst erstmal Erfolg haben. Das Script braucht keinerlei spezielle Rechte. Nur die Python Umgebung muss natürlich auch irgendwie passen.

Bei mir ging alles unter dem User Pi ohne erhöhte Rechte  ganz easy... Und crontab geht auch als normaler User. ;)

Aber so wo Du alles nach /opt/fhem verbuddelt hast, hast Du mal versucht es direkt unter FHEM auf zurufen?
"bash ./bin/run-ring"
Wenn das funktioniert, kannst Du es doch einfach mit FHEM starten.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

freakadings

#128
Hallo Otto, sorry, deine Antwort ist irgendwie durchgerutscht.
direkt aus fhem geht nicht, ist aber auch nicht so wild einmal die run_ring gestartet läuft es doch ganz gut durch.

Jetzt habe ich aber scheinbar seit dem 10.7. das Problem, dass die Events in FHEM nicht mehr aktualisiert werden alle Readings aktualisiert er fleißig, aber nicht den "status".
Im log (steht auf DEBUG) pollt er fleißig, aber wenn ich klingle oder die Hand vor der Kamera bewege ändert sich nichts.

"2019-08-02 22:43:13,331 - fhem_ring - DEBUG - Polling for events with 'Eingang'."

Die Ring-App selbst benachrichtigt mich aber und dort funktioniert alles.
Geht das vielleicht noch jemandem so?

BG,
Merlin

Nachtrag:
Um die Videos speichern zu können (was bisher bei mir aufgrund mangelnder Rechte nicht ging und jetzt nicht geht, weil das Skript die Events nicht erkennt), wird das "Ring protect" Feature (3€ oder 10€ pro Monat) benötigt um die Videos herunterladen zu können? Danach liegt das letzte Video ja lokal, aber ich schätze die Kamera wirft ihr Video ja erst Mal in die Cloud.

onkel-tobi

Hallo zusammen,

gibt es eigtl in Sachen Snapshot was neues?

Gruß,
Tobi

TimoD

Zitat von: onkel-tobi am 05 Oktober 2019, 08:16:37
Hallo zusammen,

gibt es eigtl in Sachen Snapshot was neues?

Gruß,
Tobi

? In Homebridge tut die Snapshot Variante klasse, ich hätte es aber lieber auf meinem FTUI iPad! Any News?

onkel-tobi

Zitat von: TimoD am 11 Oktober 2019, 23:05:21
? In Homebridge tut die Snapshot Variante klasse, ich hätte es aber lieber auf meinem FTUI iPad! Any News?

Welche Homebridge Lösung nutzt Du?
Bei mir hat er zwar immer einen gesendet, aber da war mega delay drin.

Danke & Gruß,
Tobi

bluemevo

Ich bekomme beim Start der ring.py immer wieder folgende Fehlermeldung:


root@osboxes:/home/pi#     from ring_doorbell import Ring
from: can't read /var/mail/ring_doorbell
root@osboxes:/home/pi# ImportError: No module named ring_doorbell
bash: ImportError:: Kommando nicht gefunden.



Zitat von: freakadings am 07 Juli 2019, 16:22:42

//===================Terminal (raspberry pi)===================

pip install git+https://github.com/tchellomello/python-ring-doorbell

pip install fhem

mkdir /opt/fhem/bin

wget https://raw.githubusercontent.com/budachst/ring-fhem/master/ring.py

wget https://raw.githubusercontent.com/budachst/ring-fhem/master/run_ring

sudo chown -R fhem:dialout /opt/fhem/bin/

sudo chmod 777 ring.py

sudo chmod 777 run_ring

nano ring.py  // attribute anpassen (nur "ring_user" und "ring_pass" geändert)

sudo su -u fhem crontab -e // @reboot /opt/fhem/bin/run_ring            und          @hourly /opt/fhem/bin/run_ring                eintragen

mkdir /opt/fhem/www/ring/

sudo chown -R fhem:dialout /opt/fhem/www/ring/

./run_ring




//===================IN FHEM===================

//Doorbell heißt in der App "Eingang"


defmod Ring_Eingang dummy
attr Ring_Eingang devStateIcon none:it_camera@green motion:secur_alarm@red ring:secur_alarm@orange
attr Ring_Eingang room Draußen
attr Ring_Eingang event-on-change-reading .*
attr Ring_Eingang setList none motion ring





Ich hab auch die Abhängigkeiten überprüft

Zitat von: Otto123 am 12 März 2019, 21:16:53
Die Voraussetzung hast Du geschaffen? Meine Notiz dazu:
###Ring Video Doorbell
# Quelle https://forum.fhem.de/index.php/topic,75754.0.html
# Voraussetzungen im System schaffen
apt-get update
# Ich bin nicht sicher ob man git braucht
apt-get python-pip git

pip install git+https://github.com/tchellomello/python-ring-doorbell
# python fhem API https://github.com/domschl/python-fhem
pip install fhem
pip list # installed Packages


Gruß Otto

Außerdem:


root@osboxes:/home/pi# pip list # installed Packages
Package       Version
------------- ---------
certifi       2019.9.11
chardet       3.0.4
fhem          0.6.3
idna          2.8
pip           19.2.3
pyserial      3.4
pytz          2019.3
requests      2.22.0
ring          0.7.2
ring-doorbell 0.2.4
setuptools    40.6.2
six           1.12.0
urllib3       1.25.6
wirerope      0.2.1


Ich versuche die Ring erst mal auf einer VM zum laufen zu bekommen. Bei Erfolg übertrage ich alles auf den produkten RPi.
Bin für jeden Tipp dankbar.

TimoD

Zitat von: onkel-tobi am 12 Oktober 2019, 11:02:03
Welche Homebridge Lösung nutzt Du?
Bei mir hat er zwar immer einen gesendet, aber da war mega delay drin.

Danke & Gruß,
Tobi

homebridge-ring die funktioniert echt klasse, inkl. Motion-Alerts und Live Video (unter ios13 sind die Push Benachrichtigungen im Moment noch buggy)

onkel-tobi

Zitat von: TimoD am 14 Oktober 2019, 07:27:26
homebridge-ring die funktioniert echt klasse, inkl. Motion-Alerts und Live Video (unter ios13 sind die Push Benachrichtigungen im Moment noch buggy)
Muss man da bezüglich snapshots noch was beachten? Scheint zumindest bei mir aktuell noch nicht zu funktionieren, aber evtl. dann wg. ios13?

Danke & Gruß,
Tobi