NEWS
Bayrol Webportal
-
@syber
Ich habe eine Bayrol automatic ph-Cl, die auch bei www.bayrol-poolaccess.de hinterlegt ist. Ich wollte es mit Parsen probieren, aber weiß nicht, wie der Parser am LogIn vorbeikommt.Auf der PHP/HTML sind im Quelltext die Daten zu finden.
-
Ich habe ebenfalls eine Bayrol AS.
Mich würde ein Adapter, der die Werte auslesen kann, auch brennend interessieren.
Wäre schön, wenn sich jemand dem Thema annehmen könnte -
@psrelax
In jedem Fall mal sinnvoll da zu posten:https://github.com/ioBroker/AdapterRequests
Allerdings will ich dir keine allzu großen Hoffnungen machen. Wünsche gibt es viiiiiiiiiiel mehr als Kapazitäten.
Daher auch hier der Aufruf / das Angebot:
Wenn wer mit entwickeln will / kann - grundlegende Programmierkenntnisse vorausgesetzt - bitte einfach melden. -
Moin!
Mein Nachbar hat auch Bayrol, was wir ganz gerne einbinden würden.
Auf Administrator.de habe ich folgendes gefunden:Gehen tut das ganze eigentlich immer noch mit der Syntax:
http(s)://username:password@server/resource.extDas evtl. mal versuchen.
Eine Adapteranfrage wurde 2021 schon einmal gestellt aber mangels Hardware ist (noch) nichts passiert.
-
@hg6806
Und?
Gibts dazu schon einen Adapter Request ?@mcm57 said in Bayrol Webportal:
@psrelax
In jedem Fall mal sinnvoll da zu posten:https://github.com/ioBroker/AdapterRequests
Allerdings will ich dir keine allzu großen Hoffnungen machen. Wünsche gibt es viiiiiiiiiiel mehr als Kapazitäten.
Daher auch hier der Aufruf / das Angebot:
Wenn wer mit entwickeln will / kann - grundlegende Programmierkenntnisse vorausgesetzt - bitte einfach melden. -
-
@hg6806
Der Bayrol Poolmanager ist ProfiHardware von Bayrol mit lokaler API: Für Adapterentwicklung wird Hardware benötigt.Die Bayrol Automatic ph/salt Geräte haben CloudAnbindung und der Adapter müsste die Daten von o.g. Webseite nach Login parsen.
Für Adapterentwicklung wären nur LoginDaten nötig.Daher sollte der Poolmanager und Webportal Adapter getrennt betrachtet werden.
-
OK, ich wusste nicht dass das 2 paar Schuhe sind.
Wie schon geschrieben hat das ein Nachbar. -
Ich wäre ebenfalls sehr an einem Adapter für den Abruf der Daten der Bayrol Poolaccess Seite interessiert.
Fast alles ist hier automatisiert, nur das Teil steht ganz oben auf der Liste. -
Ich habe die ph, Redox, Temp-Daten von der Bayrol PoolAccess Seite nun auf Umwegen in den iobroker bekommen:
HomeAssistant-MultiScraper liest die Daten von der Seite aus (1)
HomeAssistant-Automation-MQTT-Publish schickt die Daten raus
iobroker-MQTT-Subscriber-Instanz empfängt die Werte -
@qwertz
Das ist doch mal eine Lösung. Ich habe nun extra dafür einen HomeAssistant eingerichtet und eine MQTT Verbindung wird hergestellt. Ich bin nur zu blöd, die Daten an ioBroker zu senden. Wäre es möglich, dass du mir hier die genutzte Konfig sendest?
Vielen Dank -
@kapunkt
Zum Senden im HomeAssistant die Integration "MQTT" installieren.
Dann Einstellungen > Automatisierungen..> Automatisierung erstellen:
Die Entität heißt nur "sensor.bayrol_temp". Es muss aber bei mqtt gesendet werden als "states.sensor.bayrol_temp.state"Im iobroker neue MQTT Instanz einrichten.
BEnutzer und Passwort habe ich aus der HA_MQTT-Konfiguration rüberkopiert. -
@qwertz
Das mit der Homeassistant Automatisierung habe ich irgendwie nicht hinbekommen. Sieht bei mir auch etwas anders aus. Ich muss mich damit mal beschäftigen.
Ich hab das vorerst so lösen können, dass ich in der configuration.yaml folgendes hinzugefügt habe:# Sende Pooldaten an ioBroker mqtt_statestream: base_topic: homeassistant include: entities: - sensor.pool_ph_wert - sensor.pooltemperatur - sensor.redoxwert
-
wenn jemand bereit wäre mir eine Zugangskennung bereitzustellen,
dann kann ich mal schauen, was ich machen kann. -
@oliverio Danke ! Ich schicke dir eine PN.
Im HomeAssistant kann der Scraper übrigens ein Login durchführen, so dass damit Scraping der Daten nach LogIn gelingt. Der iobroker Parser kann das leider nicht.
-
so bayrol bitte zum ausprobieren
- in den einstellungen von javascript muss das zusätzliche npm modul
node-fetch@2
eingetragen sein - den bereich zwischen config start/end pflegen. im minimum reicht user und password
- die datenpunkte müssen vor dem start mit typ number existieren. das skript legt sie nicht an.
- die zeit in der die daten erneut abgerufen werden ist aktuell auf 10 Sekunden eingestellt. der hersteller selbst verwendet so um die 3-5 sekunden
- das skript ist so gestaltet, das der hersteller es nicht merkt, das hier nicht von einem browser aus abgerufen wird (Verwendung eines user-agent-string eines browsers.
bei fehler bitte hier reporten.
da ich es aktuell nur mit genau einem account ausprobieren konnte, benötige ich evtl bei fehler noch die zugangskennung von einem weiteren.da es aufgrund einer bestimmten regex-formulierung hier mit dem forum probleme gibt, ist das funktionierende skript
hier
https://forum.iobroker.net/topic/66973/bayrol-webportal/51?_=1715102271322
als Anhang zu finden - in den einstellungen von javascript muss das zusätzliche npm modul
-
-
so kommt der gleiche Fehler
Hier ist die Ausgabe von npm ls node-fetch
sf@esxubuntu:/opt/iobroker$ npm ls node-fetch [sudo] password for sf: iobroker.inst@3.0.0 /opt/iobroker ├─┬ iobroker.backitup@2.10.6 │ ├─┬ google-auth-library@9.5.0 │ │ └─┬ gaxios@6.1.1 │ │ └── node-fetch@2.6.13 │ └─┬ webdav@5.3.1 │ └─┬ @buttercup/fetch@0.1.2 │ └── node-fetch@3.3.2 ├─┬ iobroker.javascript@7.7.0 │ └── node-fetch@2.7.0 ├─┬ iobroker.mihome-vacuum@4.1.1 │ └─┬ canvas@2.11.2 │ └─┬ @mapbox/node-pre-gyp@1.0.10 │ └── node-fetch@2.6.13 deduped └─┬ iobroker.roborock@0.4.4 └─┬ fetch-github-release@1.0.0 └─┬ @octokit/rest@18.12.0 └─┬ @octokit/core@3.6.0 └─┬ @octokit/request@5.6.3 └── node-fetch@2.6.13 deduped
-
also die fehlermeldung liegt nicht an der bibliothek,
sondern daran, das der login wahrscheinlich nicht geklappt hatde seite enthält nicht den text mit der cid,
welcher normalerweise nach dem login enthalten ist.
prüfe bitte nochmal deine im skript eingetragenen anmeldedaten.Die eckige Klammer hat ohne backslash eine ganz andere Bedeutung in regex wie mit.
-
@oliverio
Die Anmeldedaten passen. Habe ich die Datenpunkte richtig angelegt ? Kann ich die CID in einer bestimmten Zeile vorgeben, um ein CID-Ausleseproblem auszuschließen ? Javascript ist richtig, oder Typescript ?