FHEM Forum

FHEM => Sonstiges => Thema gestartet von: fstefan1960 am 25 Februar 2021, 19:48:34

Titel: Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: fstefan1960 am 25 Februar 2021, 19:48:34
Hallo,

ich möchte gerne Meldungen zu div Events von mehreren FHEM-Raspis über das Internet an einem zentralen Ort sammeln und dann auf einer Website ausgeben.

Wie fängt man das am Geschicktesten an?

EVENT-> sendmail -> wie bekomme ich das am zentralen Server in eine MySQL-Datenbank, aus der ich dann mit PHP die Webdarstellung hole? Automatisiertes  Auslesen von Mails?

EVENT->telegram-> siehe oben

EVENT->MQTT- > Wie kommen MQTT-Meldungen in eine Datenbank?

Als zusätzliche Herausforderung besteht, dass der zentrale MySQL-Server nur localhost-Clients mag. Sonst wäre ja evtl. ein Weg, die EVENTS gleich in die Datenbank zu schrieben, oder?

FHEM krieg ich so ganz passabel hin, PHP, MySQL und HTML auch, aber die Brücke dazwischen .... da hapert es noch. Und bevor ich in die falsche Richtung oder eine Sackgasse renne ...

Danke für entsprechenden Rat.

Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Wernieman am 25 Februar 2021, 20:10:41
Was mir noch einfallen würde:
per ssh ein mysql Befehl auf dem Zielserver senden.

Ansonsten
Mail:
Ist auf dem Zielserver ein Mail-Server installiert
MQTT:
Bist Du Dir sicher, den abgesichert installiert zu bekommen? Ansonsten gibt es auch Shell-Clients dafür (siehe Google)

Und zuletzt: Der Server könnte auch pollen ....

Bzw:
Du kannst natürlich auch einen dauerhaften ssh-Tunnel aufbauen und die mysql-Befehle darüber verschicken ... Stichwort PortForwarding (und eventuell autossh)
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: fstefan1960 am 25 Februar 2021, 20:20:37
Erst einmal vielen Dank.

Ja, ich habe da einen Mailserver, aber wie bekomme ich ankommende Mails dann In die Datenbank?

MQTT - danke, das ist ein wichtiger Hinweis, also eben genau so eine Warnung, die ich mir gewünscht habe ...

Pollen? Ich weiß zwar, was Pollen ist, aber wie könnte das aussehen? Via PHP vom "zentralen" Server aus irgendwelche Aufrufe an die FHEM-Raspis?

Danke
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Wernieman am 25 Februar 2021, 20:40:09
Das der Server die Daten abruft ... oder Deine Quellen sie "hinpushed"

Es kommt darauf an, was für einen mail-Server Du hast.
Wenn Du einen Klassischen Unix-mailserver hast, also einen der ins HomeVerzeichnis der Userr schreibt, kannst Du die Mails auch in ein Programm "pipen".
Hinweis: Wenn eine .forward im Home eines Users eine mail automatisch weiterleitet, kannst Du genau das tun ....
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Frank_Huber am 25 Februar 2021, 20:44:01
Hmmm.
Warum keinen zentralen MySQL und direkt da rein loggen was du benotigst?

Ich mach das ohne Internet so. Alle FHEM Installationen loggen in einen MySQL.
Bei mir halt alles zuhause im Netz, bei Dir wäre es übers Internet.
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Wernieman am 25 Februar 2021, 21:05:56
Wie er schrieb:
Zitatdass der zentrale MySQL-Server nur localhost-Clients mag.

Was ich aus Security-Gründen durchaus verstehen kann ...
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Frank_Huber am 25 Februar 2021, 21:23:59
Localhost ist da glaube ich das falsche Wort. Sonst könnte ja nur der Server selbst drauf.
Da geht es so vermute ich eher um das lokale subnet.
Und da käme man ja per VPN rein.
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: LuckyDay am 25 Februar 2021, 22:57:31
ZitatAls zusätzliche Herausforderung besteht, dass der zentrale MySQL-Server nur localhost-Clients mag. Sonst wäre ja evtl. ein Weg, die EVENTS gleich in die Datenbank zu schrieben, oder?

Wie muss man denn den Satz verstehen?
private Machine? vollzugriff oder geschäftlich?

Zitatdiv Events von mehreren FHEM-Raspis
um wieviele Events handelt es sich denn? 10 stück am Tag? oder Stunde? Minute? pro Fhem....

Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: fstefan1960 am 26 Februar 2021, 09:23:02
Angedacht ist, dass der "zentrale Server" ein bei 1&1 gehosteter Webserver ist. Ob die mich da VPN-mäßig reinlassen ...?

EVENTS sind ca. 10 / Tag / Raspi bei ca. 100 Raspis ...

Es bleibt also überschaubar ...

Wenn jemand einen Provider kennt, der da eine geeignetere Infrastruktur bietet ...
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Frank_Huber am 26 Februar 2021, 09:27:49
Mit einem Root Server von 1&1 sollte sich der MySQL von Außen erreichen lassen.
Beim einfachen Webspace geht da sin der Tat nicht.
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Christoph Morrison am 26 Februar 2021, 09:51:28
Zitat von: fstefan1960 am 26 Februar 2021, 09:23:02
EVENTS sind ca. 10 / Tag / Raspi bei ca. 100 Raspis ...

Interessant. Magst/Kannst du mehr über die Hintergründe erzählen?
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: DS_Starter am 28 Februar 2021, 15:37:16
Ich werfe das Modul Log2Syslog in den Ring. Auf allen Satelliten ein Sender Device definieren.
Auf dem zentralen Raspi den Collector definieren. Die Verbindung dazwischen geht per TLS verschlüsselt. Alle Events erscheinen zentral im Eventmonitor und können natürlich verarbeitet, geloggt usw. werden. Und man sieht woher die Events kommen. Von welchem Satelliten.
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: fstefan1960 am 01 März 2021, 19:57:03
Hallo,
das klingt spannend. Dem werde ich mal nachgehen. Danke.

Bei dem Projekt sollen Menschen mit Behinderung, meist auch Epilepsie, die durch uns betreut werden, ein "Gerät" nach Hause bekommen, mit dem sie mit dem ambulanten Dienst kommunizieren können, "es geht mir gut"-Taste, "Brauche Assistenz"-Taste usw.

Liebe Grüße
Frank
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Wernieman am 01 März 2021, 20:28:48
Dann würde ich Dir etwas anderes Empfehlen:
Auf dem Server eine HTTPS-API, die in FHEM reinschreibt (PW geschützt?)
Und die "Kunden-PIs" rufen einfach nur den Web-Link auf ... also entkoppeln. macht insofern das System sicherer, da FHEM nicht  für "offen im Netz" konzipiert wurde ...

Du schreibst ja, das Du php kannst ....
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: fstefan1960 am 02 März 2021, 10:53:08
Noch eine super Option. Ja, danke. Das ist eine Option, die ich auch schon mal wälze.

Wie kann man denn aus FHEM heraus einen Link aufrufen und dabei $POST-Werte mitgeben? $GET ist klar, aber $POST? Das kenne ich immer nur aus <form> mit "submit" ...

Danke
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Wernieman am 02 März 2021, 13:22:03
PUT .. hatte ich vor kurzem Spaß mit dem http_mod Module ....

Aber soll wirklich bei jedem "Kunden" ein voll funkktionsfähiges FHEM laufen? FHEM macht erst Sinn, wenn Du mehrere Werte verarbeiten und steuern willst. Ich würde hier eher nach dem KISS-Prinzip arbeiten.
Titel: Antw:Messages von mehreren FHEM-Raspis in einer Datenbank sammeln und aktuell halten
Beitrag von: Christoph Morrison am 02 März 2021, 18:45:42
Grundsätzlich würde ich was nehmen, was existiert und funktioniert: Zentraler MQTT-Broker, der über TLS/SSL erreicht werden kann. Zentral kannst du die Ergebnisse dann wieder in ein FHEM spielen oder direkt in eine DB schreiben (gibt einige Anleitungen da draußen).

Von MQTT bekommst du dann auch gleich sowas wie Retaining, LWT und so mit.