Ring Video Doorbell

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

Vorheriges Thema - Nächstes Thema

Manos

#435
Zitat von: dominik am 11 Dezember 2020, 20:11:12
Was hast du für update Werte in den Attributen? Sieht so aus als wären die zu niedrig.
requests.exceptions.HTTPError: 503 Server Error: Service Unavailable: Back-end server is at capacity for url: https://api.ring.com/clients_api/dings/active?api_version=9
Da wurdest du schon blockiert.

Danach sieht es wieder gut aus.

PS: Bitte code Block verwenden, wenn die Nachricht zu lang wird, dann bitte kürzen damit sich das Ende vom code Block ausgeht. Ist sonst sehr unübersichtlich hier. Danke.

meinst du

deviceUpdateInterval 2
dingPollInterval 2

vieleicht? Sollte ich die Verzoegerung laenger machen? (ich dachte 2 Sek waere sowieso Default)

sorry fuer den vorherigen Post, [/code] wurde truncated



Was ist der Unterschied zwischen 'pybinding' und 'Pythonbinding_15733' ?
Mein 'pybinding' ist "disconnected". Es ist aber 'Pythonbinding_15733' dass ich neustarten muss.


Internals:
   BindingType Python
   CFGFN     
   DEF        Python
   DeviceName ws:127.0.0.1:15733
   FUUID      xxxxxxxxxxxxxxx
   IP         127.0.0.1
   NAME       pybinding
   NEXT_OPEN  1607742462.9765
   NR         409
   NTFY_ORDER 50-pybinding
   PARTIAL   
   PORT       15733
   STATE      disconnected
   TYPE       BindingsIo
   localBinding 1
   nextOpenDelay 10
   Helper:
     DBLOG:
       state:
         Logdb:
           TIME       1607680773.88663
           VALUE      DISCONNECTED
       version:
         Logdb:
           TIME       1607650885.17643
           VALUE      0.1.6
   READINGS:
     2020-12-12 04:07:32   state           disconnected
     2020-12-11 02:41:25   version         0.1.6
   args:
     pybinding
     BindingsIo
     Python
   argsh:
Attributes:

   devStateIcon opened:rc_GREEN@green
   group      _connector
   room       hidden
   verbose    5



Internals:
   CFGFN     
   DEF        0
   FD         35
   FUUID      xxxxxxxxxxxxxxxxxxxxxxxxx
   LAST_START 2020-12-11 02:41:14
   LAST_STOP  2020-12-11 02:41:14
   NAME       Pythonbinding_15733
   NR         410
   NTFY_ORDER 50-Pythonbinding_15733
   PID        454628
   STARTS     4
   STATE      active
   TYPE       PythonBinding
   currentlogfile ./log/PythonBinding-2020-12-11.log
   logfile    ./log/PythonBinding-%Y-%m-%d.log
   CoProcess:
     cmdFn      PythonBinding_getCmd
     name       PythonBinding
     state      running FHEM/bindings/python/bin/fhempy
   Helper:
     DBLOG:
       PythonBinding:
         Logdb:
           TIME       1607650874.45893
           VALUE      running FHEM/bindings/python/bin/fhempy
       state:
         Logdb:
           TIME       1607553548.87302
           VALUE      active
   READINGS:
     2020-12-11 02:41:14   PythonBinding   running FHEM/bindings/python/bin/fhempy
     2020-12-09 23:39:08   state           active
Attributes:
   logfile    ./log/PythonBinding-%Y-%m-%d.log
   nrarchive  10
   room       hidden



HP Microserver GEN8 XEON, Ubuntu 22.04, FHEM, ConBee II, CCU2, CUL433, Tradfri, Luxtronik2, Volkszaehler (und wenig Ahnung...)

dominik

deviceUpdateInterval 2 ist viel zu kurz. Default ist 300, wobei das auch schon bei manchen Probleme machte. Ich würde daher 600 empfehlen.
devicePollInterval kann auf 2 bleiben.

pybinding = BindingsIo Type, dieses Device stellt die Verbindung zum Python Prozess über Websockets her
Pythonbinding_15733 = PythonBinding, dieses Device macht nichts anderes als den Python Prozess zu starten und zu überwachen.
Details findest du auch hier:
https://github.com/dominikkarall/fhempy#call-flow
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

leachim200

Guten Morgen
Leider wieder ein Fehler :(. Langsam glaub ich ich bin der einzige der Probleme hat :/

Traceback (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/utils.py", line 29, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/ring/ring.py", line 238, in poll_dings
    self._ring.update_dings()
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/__init__.py", line 89, in update_dings
    self.dings_data = self.query(DINGS_ENDPOINT).json()
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/__init__.py", line 101, in query
    timeout=timeout,
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/auth.py", line 89, in query
    req.raise_for_status()
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/models.py", line 940, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 401 Client Error: Unauthorized for url: https://api.ring.com/clients_api/dings/active?api_version=9
2020-12-12 01:15:34,131 - ERROR    - rrring: Failed to poll dings...


Traceback (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/ring/ring.py", line 109, in update_loop
    await utils.run_blocking(functools.partial(self.poll_device))
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/utils.py", line 29, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/ring/ring.py", line 241, in poll_device
    self._rdevice.update_health_data()
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/doorbot.py", line 57, in update_health_data
    self._ring.query(HEALTH_DOORBELL_ENDPOINT.format(self.id))
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/__init__.py", line 101, in query
    timeout=timeout,
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/auth.py", line 84, in query
    req = getattr(self._oauth, method.lower())(url, **kwargs)
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/sessions.py", line 546, in get
    return self.request('GET', url, **kwargs)
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests_oauthlib/oauth2_session.py", line 516, in request
    method, url, headers=headers, data=data, **kwargs
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/sessions.py", line 533, in request
    resp = self.send(prep, **send_kwargs)
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/sessions.py", line 646, in send
    r = adapter.send(request, **kwargs)
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)

Manos

#438
Hi Dominik,

Zitat von: dominik am 12 Dezember 2020, 12:48:25
pybinding = BindingsIo Type, dieses Device stellt die Verbindung zum Python Prozess über Websockets her
Pythonbinding_15733 = PythonBinding, dieses Device macht nichts anderes als den Python Prozess zu starten und zu überwachen.
Details findest du auch hier:
https://github.com/dominikkarall/fhempy#call-flow
Ich weiss, dass es fuer dich "selbstverstaendlich" klingt, ich verstehe trotzdem "Bahnhof"  :P
Nee, eigentlich was mich verwirrt ist, dass  'Pythonbinding_15733' scheint OK zu sein und 'pybinding' hat das Problem. Trotzdem, muss ich an 'Pythonbinding_15733' ran (zum neu starten) und nicht an 'pybinding' (siehe Bild).

Zitat von: dominik am 12 Dezember 2020, 12:48:25
deviceUpdateInterval 2 ist viel zu kurz. Default ist 300, wobei das auch schon bei manchen Probleme machte. Ich würde daher 600 empfehlen.
devicePollInterval kann auf 2 bleiben.

Mit deviceUpdateInterval 300 hat deutlich laenger gehalten: Erst heute (13.12.2020 13:56) ist das Python Binding Offline gegangen.

Am Ende ist es gar nicht so dramatisch, ich kann ein Script bauen, um das "Pythonbinding_15733" neu zu starten wenn es offline geht (mache ich bereits fuer mein CONBEE II ).

Was ist eigentlich devicePollInterval und was ist deviceUpdateInterval ?? (oder, wo gibt es eine Erklaerung fuer diese zwei Werte denn ich habe erfolglos gesucht...)

Schoene Gruesse
Manos 


HP Microserver GEN8 XEON, Ubuntu 22.04, FHEM, ConBee II, CCU2, CUL433, Tradfri, Luxtronik2, Volkszaehler (und wenig Ahnung...)

Tiffytaffy

#439
Hallo Zusammen,

Ich bin neu in FHEM und kenne mich nicht mit Python aus, kann aber andere Programmiersprachen.
Ich möchte gerne erreichen, das mein FritzPhone klingelt oder sogar ein Bild anzeigt, wenn an der Doorbell jemand klingelt.
Vorweg: Ich nutze Windows.
Ich bin den Anweisungen von https://github.com/markuzzi/ring-fhem-1 gefolgt.
Python und GIT laufen und die Libs habe ich auch installiert. Wenn ich ring.ph starte und über die Ring App ein live video aufzeichne landet dieses nun auf meiner Festplatte.
So weit so gut.
1. Mir ist aufgefallen, dass ich die Meldung fhem_ring - INFO - Snapshot: False erhalten habe. Ist das wichtig für mein Vorhaben?
2. Kann mir jemand erklären was ich nun in FHEM und auf der FritzBox machen muss?
In Fhem habe ich bereits
define Ring_Haustuer dummy
attr Ring_Haustuer setList none motion ring
attr Ring_Haustuer devStateIcon none:it_camera@green motion:secur_alarm@red ring:secur_alarm@orange
gemacht.

Wie geht es weiter? State ist bei mir immer ???

Danke

dominik

Zitat von: leachim200 am 14 Dezember 2020, 08:21:50
Guten Morgen
Leider wieder ein Fehler :(. Langsam glaub ich ich bin der einzige der Probleme hat :/

Traceback (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/utils.py", line 29, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/ring/ring.py", line 238, in poll_dings
    self._ring.update_dings()
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/__init__.py", line 89, in update_dings
    self.dings_data = self.query(DINGS_ENDPOINT).json()
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/__init__.py", line 101, in query
    timeout=timeout,
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/auth.py", line 89, in query
    req.raise_for_status()
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/models.py", line 940, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 401 Client Error: Unauthorized for url: https://api.ring.com/clients_api/dings/active?api_version=9
2020-12-12 01:15:34,131 - ERROR    - rrring: Failed to poll dings...


Traceback (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/ring/ring.py", line 109, in update_loop
    await utils.run_blocking(functools.partial(self.poll_device))
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/utils.py", line 29, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/FHEM/bindings/python/fhempy/lib/ring/ring.py", line 241, in poll_device
    self._rdevice.update_health_data()
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/doorbot.py", line 57, in update_health_data
    self._ring.query(HEALTH_DOORBELL_ENDPOINT.format(self.id))
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/__init__.py", line 101, in query
    timeout=timeout,
  File "/opt/fhem/.local/lib/python3.7/site-packages/ring_doorbell/auth.py", line 84, in query
    req = getattr(self._oauth, method.lower())(url, **kwargs)
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/sessions.py", line 546, in get
    return self.request('GET', url, **kwargs)
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests_oauthlib/oauth2_session.py", line 516, in request
    method, url, headers=headers, data=data, **kwargs
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/sessions.py", line 533, in request
    resp = self.send(prep, **send_kwargs)
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/sessions.py", line 646, in send
    r = adapter.send(request, **kwargs)
  File "/opt/fhem/.local/lib/python3.7/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)


Bitte deviceUpdaterInterval und dingUpdateInterval prüfen. Probier mal 600 (device) und 2 (ding).
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

dominik

Zitat von: Manos am 14 Dezember 2020, 23:28:13
Hi Dominik,
Ich weiss, dass es fuer dich "selbstverstaendlich" klingt, ich verstehe trotzdem "Bahnhof"  :P
Nee, eigentlich was mich verwirrt ist, dass  'Pythonbinding_15733' scheint OK zu sein und 'pybinding' hat das Problem. Trotzdem, muss ich an 'Pythonbinding_15733' ran (zum neu starten) und nicht an 'pybinding' (siehe Bild).

Mit deviceUpdateInterval 300 hat deutlich laenger gehalten: Erst heute (13.12.2020 13:56) ist das Python Binding Offline gegangen.

Am Ende ist es gar nicht so dramatisch, ich kann ein Script bauen, um das "Pythonbinding_15733" neu zu starten wenn es offline geht (mache ich bereits fuer mein CONBEE II ).

Was ist eigentlich devicePollInterval und was ist deviceUpdateInterval ?? (oder, wo gibt es eine Erklaerung fuer diese zwei Werte denn ich habe erfolglos gesucht...)

Schoene Gruesse
Manos
Schau dir bitte die Grafik unten auf der Seite an:
https://github.com/dominikkarall/fhempy
Dann sollte einiges klarer sein.
Warum du PythonBinding und nicht BindingsIo neu starten musst, ist einfach erklärt:
Stell dir vor PythonBinding ist eine HueBridge.
BindingsIo ist das Modul, welches die Verbindung zu HueBridge aufbaut.
Wenn nun BindingsIo disconnected anzeigt, startest du im Normalfall die HueBridge neu falls ein reconnect nicht funktioniert.

Gleiches ist hier der Fall, du startest PythonBinding neu, damit BindingsIo wieder zum Device connected kann. Dass PythonBinding weiterhin active anzeigt liegt daran, dass PythonBinding nur prüft ob der Prozess läuft und diese im Fehlerfall (crash) neu startet.

updateDeviceInterval: Aktualisiert alle Werte außer Alarme - also im Normalfall uninteressant, außer du prüfst regelmäßig wie hoch der WLAN Empfang des Devices ist oder Batterie. Das reicht aber garantiert alle 10min oder wahrscheinlich sogar jede Stunde.
updateDingInterval: Dies prüft auf einen Alarm (motion, ...). Daher ist dieses Intervall sehr kurz gesetzt. Leider gibt es keine andere Möglichkeit außer alle x Sekunden einen Request beim ring Server zu machen. Und es gibt keine Garantie dafür, dass dieser Service auch zukünftig zur Verfügung steht.

Bitte kein Script für den Neustart bauen. Ich will Fehler beheben und nicht Fehler verstecken.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

dominik

Zitat von: Tiffytaffy am 15 Dezember 2020, 20:04:45
Hallo Zusammen,

Ich bin neu in FHEM und kenne mich nicht mit Python aus, kann aber andere Programmiersprachen.
Ich möchte gerne erreichen, das mein FritzPhone klingelt oder sogar ein Bild anzeigt, wenn an der Doorbell jemand klingelt.
Vorweg: Ich nutze Windows.
Ich bin den Anweisungen von https://github.com/markuzzi/ring-fhem-1 gefolgt.
Python und GIT laufen und die Libs habe ich auch installiert. Wenn ich ring.ph starte und über die Ring App ein live video aufzeichne landet dieses nun auf meiner Festplatte.
So weit so gut.
1. Mir ist aufgefallen, dass ich die Meldung fhem_ring - INFO - Snapshot: False erhalten habe. Ist das wichtig für mein Vorhaben?
2. Kann mir jemand erklären was ich nun in FHEM und auf der FritzBox machen muss?
In Fhem habe ich bereits
define Ring_Haustuer dummy
attr Ring_Haustuer setList none motion ring
attr Ring_Haustuer devStateIcon none:it_camera@green motion:secur_alarm@red ring:secur_alarm@orange
gemacht.

Wie geht es weiter? State ist bei mir immer ???

Danke

Nutz doch einfach fhempy für Ring:
https://github.com/dominikkarall/fhempy

Installation auf der Seite befolgen und dann das Module definieren
https://github.com/dominikkarall/fhempy/blob/master/FHEM/bindings/python/fhempy/lib/ring/README.md
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

pflock_y

Guten Morgen dominik,
ich wollte heute morgen fhempy auf meinem produktiven system zum laufen bringen.
Leider hab ich folgendes im log:

PythonBinding-2020-12-16.log:


SyntaxError: invalid syntax
  File "FHEM/bindings/python/bin/fhempy", line 88
    logging.getLogger(__name__).info(f"Successfully installed {package}")
                                                                       ^
SyntaxError: invalid syntax
  File "FHEM/bindings/python/bin/fhempy", line 88
    logging.getLogger(__name__).info(f"Successfully installed {package}")
                                                                       ^
SyntaxError: invalid syntax
  File "FHEM/bindings/python/bin/fhempy", line 88
    logging.getLogger(__name__).info(f"Successfully installed {package}")
                                                                       ^
SyntaxError: invalid syntax
  File "FHEM/bindings/python/bin/fhempy", line 88
    logging.getLogger(__name__).info(f"Successfully installed {package}")
                                                                       ^
SyntaxError: invalid syntax
  File "FHEM/bindings/python/bin/fhempy", line 88
    logging.getLogger(__name__).info(f"Successfully installed {package}")
                                                                       ^
SyntaxError: invalid syntax
  File "FHEM/bindings/python/bin/fhempy", line 88
    logging.getLogger(__name__).info(f"Successfully installed {package}")
                                                                       ^
SyntaxError: invalid syntax


und natürlich auch das im fhem.log


2020.12.16 09:05:57 1: BindingsIo: ERROR local_pybinding - error while connecting: 127.0.0.1: Verbindungsaufbau abgelehnt (111)
2020.12.16 09:06:08 1: BindingsIo: ERROR local_pybinding - error while connecting: 127.0.0.1: Verbindungsaufbau abgelehnt (111)
2020.12.16 09:06:08 1: BindingsIo: ERROR local_pybinding - error while connecting: 127.0.0.1: Verbindungsaufbau abgelehnt (111)
2020.12.16 09:06:18 1: BindingsIo: ERROR local_pybinding - error while connecting: 127.0.0.1: Verbindungsaufbau abgelehnt (111)
2020.12.16 09:06:18 1: BindingsIo: ERROR local_pybinding - error while connecting: 127.0.0.1: Verbindungsaufbau abgelehnt (111)



vg
pflock_y

pflock_y

ok, den ersten Fehler hab ich weg bekommen.

aus
File "FHEM/bindings/python/bin/fhempy", line 88
    logging.getLogger(__name__).info(f"Successfully installed {package}")


hab ich
File "FHEM/bindings/python/bin/fhempy", line 88
    logging.getLogger(__name__).info("Successfully installed {package}")

gemacht
(f"Successfully installed {package}")

nun leider ein weiterer

Traceback (most recent call last):
  File "FHEM/bindings/python/bin/fhempy", line 22, in <module>
    + MIN_PYTHON_VERSION[2]
TypeError: Can't convert 'int' object to str implicitly
Traceback (most recent call last):
  File "FHEM/bindings/python/bin/fhempy", line 22, in <module>
    + MIN_PYTHON_VERSION[2]
TypeError: Can't convert 'int' object to str implicitly

pflock_y

OK, ich hab meinen Fehler gefunden.  :(

Ich installiere nach dieser Anleitung,
https://www.ramoonus.nl/2018/06/30/installing-python-3-7-on-raspberry-pi/
python-3-7.

python -V bringt mir die Ausgabe
Python 3.7.0

nach einem reboot des Systems kommt bei python -V das hier:
Python 2.7.13
und bei python3 -V
Python 3.5.3
das hier.

So, ich weis nicht weiter. Vielleicht kann mir jemand auf die Sprünge helfen.  :o


vg
pflock_y

leachim200

#446
Hi
Ja du musst im bashrc für den User (ich nehme an fhem) eintragen das er auf die python V3 zugreifen soll.

Bei mir sehen die Einträge so aus ich verwende aber Version 3.8
alias python=/usr/local/bin/python3.8
alias pip3=pip3.8



pflock_y

@ leachim200
super Tipp, so wusste ich wo ich suchen kann.

Leider  :-\
kommt immer noch folgendes:


+ MIN_PYTHON_VERSION[2]
TypeError: Can't convert 'int' object to str implicitly
Traceback (most recent call last):
  File "FHEM/bindings/python/bin/fhempy", line 22, in <module>
    + MIN_PYTHON_VERSION[2]
TypeError: Can't convert 'int' object to str implicitly
Traceback (most recent call last):
  File "FHEM/bindings/python/bin/fhempy", line 22, in <module>
    + MIN_PYTHON_VERSION[2]
TypeError: Can't convert 'int' object to str implicitly


...:~ $ python3 -V
Python 3.8.4
...:~ $ python -V
Python 3.8.4
...:~ $

Tiffytaffy

Zitat von: dominik am 15 Dezember 2020, 20:18:34
Nutz doch einfach fhempy für Ring:
https://github.com/dominikkarall/fhempy

Installation auf der Seite befolgen und dann das Module definieren
https://github.com/dominikkarall/fhempy/blob/master/FHEM/bindings/python/fhempy/lib/ring/README.md

Habe nun Fhem  + Python + Git auf windows neu installiert.

Die Befehle:
sudo apt install python3 python3-pip libssl-dev libffi-dev
sudo cpan Protocol::WebSocket
brauche ich in Windows ja nicht.

Kann ich nun gleich mit
update add https://raw.githubusercontent.com/dominikkarall/fhempy/master/controls_pythonbinding.txt
update
define local_pybinding BindingsIo Python

in Fhem weitermachen?

Danke und Gruß

dominik

@pflock_y, warum installierst du nicht per apt python3? Ansonsten empfehle ich python3 systemweit auf 3.7 zu setzen.
https://linuxconfig.org/how-to-change-from-default-to-alternative-python-version-on-debian-linux#h2-change-python-version-system-wide

@Tiffytaffy
Naja, python3 und Protocol::WebSocket musst du trotzdem installieren. Dann eben nicht per apt und cpan sondern mit entsprechenden Windows Commands - die kenne ich jedoch nicht, da ich alles auf Linux laufen lasse.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik