NEWS
MQTT Server Fragen
-
@hot-air-balloon sagte in MQTT Server Fragen:
Jeder Shelly oder Sonoff Adapter - oder auch owntracks - emulieren oder stellen einen mqtt-Broker zur Verfügung. Entweder lässt Du alles über unterschiedliche Ports laufen, oder Du nimmst ein mqtt-Broker (extern oder Adapter).
Muss ich daraus schließen, dass ich für jeden Hersteller auch einen eigenen Adapter installieren muss ? Ich kann nicht einfach die Shellys über den Sonoff Adapter laufen lassen, oder fehlt mir dann was ?
Ja - der SONOFF Adapter ist KEIN mqtt-Adapter. Ich sag das hier an Board mehrfach. Er kann für Tasmota geflashte Devices (von mir aus auch geflashte Shellies) verwendet werden, interpretiert aber teilweise auch Datenpunkte. Und das was er nicht kennt, da schaust halt aus der Röhre. Er wird nicht alles was mit Tasmota möglich ist, wiedergeben. Ich hab hier Probleme schon mehrfach gepostet, schau mal in die FAQ zum MQTT - da ist vielleicht was drin.
Muss ich daraus schließen, dass ich für jeden Hersteller auch einen eigenen Adapter installieren muss ? Ich kann nicht einfach die Shellys über den Sonoff Adapter laufen lassen, oder fehlt mir dann was ?
Ja Du kannst keine Shellies (wenn nicht mit Tasmota betrieben) über den Sonoff Adapter laufen lassen. Du solltest Dir den mqtt- Adapter installieren, mit dem kannst Du beides betreiben und noch viel mehr. Auch andere Geräte die keine Shellies sind oder kein Tasmota als Firmware benutzen kannst Du weder mit dem Sonoff, noch mit dem Shelly Adapter benutzen, sondern Du nimmst entweder den mqtt-Adapter - oder einen spezifischen Adapter, der Dir einen weiteren Broker aufmacht.
Und wie gesagt, wenn Du mein Vorposting durchliest und Du keine Probleme feststellst, ist der mqtt-Adapter als Broker betrieben, eine einfache Lösung. Da stimme ich @Marty56 durchaus zu!
-
@hot-air-balloon sagte in MQTT Server Fragen:
@mickym said in MQTT Server Fragen:
Der Vorteil der originären mqtt-Kommunikation
Hier meinst du den Mosquitto adapter ? Nur der Sammelt alle Informationen und gibt die unverfälscht an ioBroker weiter ?
Es gibt keinen mosquitto Adapter.
Man kann den mqtt-Adapter (Client/Server) als Client oder als Broker betrieben. Als Broker brauchst Du kein mosquitto - nichts. Als Client brauchst Du halt einen Broker - in meinem Fall halt mosquitto.
Und JA nur der mqtt-Adapter gibt Dir die mqtt Nachrichten unverfälscht weiter. Alle anderen Adapter interpretieren die mqtt-Nachrichten, so gut oder so schlecht sie eben können.
-
@hot-air-balloon sagte in MQTT Server Fragen:
@marty56 said in MQTT Server Fragen:
Der Nachteil von dem mosquitto server ist, dass man wieder einen separaten Server mit der Konsole konfigurieren muss
Das wollte ich halt vermeiden, bekomme ich sicher hin, muss aber nicht sein. Auf der anderen Seite, wäre es schon schön nur ein MQTT Broker zu haben und nicht auf jeden Port einen
Wie gesagt den mqtt-(Client/Server) Adapter als Broker betreiben. Mosquitto ist aber sehr einfach und unkompliziert zu betreiben. Das kostet Dich keine 5 Minuten. Das kann man aber auch dann relativ leicht umstellen, wenn Du Probleme mit dem mqtt-Adapter feststellst, die sich nicht so einfach lösen lassen. Das bleibt dann immer noch eine Option.
Jedenfalls ist das in meinen Augen allemal besser, als x Adapter zu installieren, die alle mqtt-sprechen, nur um nicht mit JSON Strings umgehen zu müssen, alles in separaten Datenpunkten zu haben.
Der Vorteil der gerätespezifischen Adapter ist zwar die Aufbereitung, der Nachteil ist halt das alles gepflegt werden muss und wenn was nicht interpretiert werden kann, dann schaut man halt in die Röhre. Originäre mqtt-Nachrichten sind das jedenfalls nicht, die Du mit ShellyAdapter, Sonoff und co. erhälst.Der Shelly Adapter kann sicher noch mehr, für das die Shellies zum Beispiel keine mqtt-Befehle anbieten. Da wird dann auch die HTTP API bemüht. Ggf. muss man das halt noch implementieren, das ist aber auch kein Hexenwerk.
Insgesamt gibt es viele Wege nach Rom und Du musst halt rausfinden, was Dir am Besten gefällt.
-
@hot-air-balloon sagte in MQTT Server Fragen:
Habe ich gesehen, dass mosquitto auf dem Port lauscht:
Dann hast Du aber doch bereits einen mosquitto Broker auf deinem System laufen.
Dann brauchst Du nur einen mqtt Adapter als Client an Deinen mosquitto dran hängen und mit # alle topics subscriben, so wie ich das tue. Dann kannst Du alle Deine Geräte über den bestehenden mosquitto laufen lassen.
-
@mickym
Ok danke, ich installiere mal den mqtt client/server adapter dann und habe gerade erstmal mosqutto deinstalliert.
Soll ich an den standard Einstellungen etwas ändern ? -
@hot-air-balloon OK wollte gerade die Einstellungen posten mit mosquitto - so wie ich es habe. Aber wenn Du den nun gelöscht hast. ...
Nee lass Standardeinstellungen - bzw. Passwort und User musst Du halt wissen.
Alle Haken sollten nicht gesetzt sein:
-
@mickym
Danke, kannst du, wenn ich später dann doch wechseln solle, trotzdem deine config posten -
@hot-air-balloon sagte in MQTT Server Fragen:
@mickym
Danke, kannst du, wenn ich später dann doch wechseln solle, trotzdem deine config postenNun bei der Verbindung steht halt Client/Subscriber und UserID und Passwort muss halt im mosquitto definiert sein, weil Du Dich ja dort anmeldest. (Ansonsten siehst Du ja die Verbindungseinstellungen - ist auch localhost, da mosquitto auf der gleichen Maschine, wie der iob installiert ist.
Die mqtt-Einstellungen sind auch mehr oder weniger Standard:
Bei Dir ist das halt alles mqtt.0.* - da Du sehr wahrscheinlich 0 als Instanznummer hast.
-
@mickym Ok danke, ich arbeite mich da noch mal weiter rein.
-
@hot-air-balloon sagte in MQTT Server Fragen:
@mickym Ok danke, ich arbeite mich da noch mal weiter rein.
Ja und wie gesagt - alles hast Du dann unter EINER mqtt Instanz (Shellies, Tasmota (Sonoff), ...)