NEWS
Wie eigene Datenpunkte bzw. Objekte anlegen?
-
Hier mal gelesen?
http://www.iobroker.net/docu/?page_id=5 … inzufuegen
Gruß Rainer `
Ja danach habe ich es versucht. Nur es werden immer nur neue Datenpunkte untereinander erstellt.
Die Beschreibung gilt scheinbar auch für die vorherige Version.
Habe auch schon gelesen, dass man das in einem javascipt machen kann, habe damit aber leider noch nicht gearbeitet und kein Beispiel gefunden.
-
Du musst zum einen den typ korrekt wählen, gerät, kanal, state
Zum anderen musst du den datenpunkt des Geräts anwählen, dann auf (+) klicken, dann wird auch die Struktur erweiter.
Gruß Rainer
-
Eine Ordnerstruktur erzeugt man mit Punkt im Namen "Ordnername.Datenpunktname". Vorher das Objekt (Instanz) selektieren, unter der die Struktur erstellt werden soll. Bitte keine eigenen Datenpunkte unter fremden Instanzen (außer javascript.N) erstellen, da dort die Objekte vom Adapter verwaltet werden, also auch gelöscht werden können !
-
Hi zusammen,
Eine Ordnerstruktur erzeugt man mit Punkt im Namen "Ordnername.Datenpunktname". Vorher das Objekt (Instanz) selektieren, unter der die Struktur erstellt werden soll. Bitte keine eigenen Datenpunkte unter fremden Instanzen (außer javascript.N) erstellen, da dort die Objekte vom Adapter verwaltet werden, also auch gelöscht werden können ! `
Ich wollte mich mal einem Thema anschließen. Ich wollte mich auch mal an eigene Datenpunkte trauen. Ich habe natürlich auch den "Admin – Reiter Objekte" beitrag durchgelesen. Leider finde ich im Netzt keine wirkliche Anleitung was die einzelnen Möglichkeiten "Datenpunkt" "Kanal" "Gerät" sehen. Zudem würde ich gerne verstehen wenn man einen Datenpunkt z.B. anlegt was dann die "Speziellen Einstellung" hier ROlle / Typ und auch der TAB Nativ bedeutet?Ich habe mal ein Beispiel. "Paul53" scheibt ja das man am besten nur Datenpunkte unter javascript.N anlegen sollte. Oder selber Ordner anlegen soll die mit keine Instanz etwas zu tuen haben? Jetzt habe ich zum Beispiel den Fall das ich ein Datenpunkt unter einem mqtt Adapter anlegen möchte. Da ich einen Gerät habe was mir auch schon Datenpunkte angelegt hat aber das sind nur Daten die ich zurück bekomme ich möchte aber auch Daten senden. Sollte ich diese jetzt auch wirklich in einem eigen Obejekt- Ordner anlegen oder doch unter MQTT.0?
-
die einzelnen Möglichkeiten "Datenpunkt" "Kanal" "Gerät" sehen. Zudem würde ich gerne verstehen wenn man einen Datenpunkt z.B. anlegt was dann die "Speziellen Einstellung" hier ROlle / Typ … bedeutet? `
Siehe https://github.com/ioBroker/ioBroker/blob/master/doc/SCHEMA.md.
@xxxspxxx:auch der TAB Nativ `
Nativ ist Adapter-spezifisch.
@xxxspxxx:ich möchte aber auch Daten senden. Sollte ich diese jetzt auch wirklich in einem eigen Obejekt- Ordner anlegen oder doch unter MQTT.0? `
Dann muss es auf Seite des Gerätes auch Empfänger geben und die müssen dem Adapter bekannt sein, ansonsten wird ins Leere gesendet. Ein manuell erstellter Datenpunkt bringt also nichts. -
Hallo Paul,
ok das Core Conzept schaue ich mir an. Das ist doch der weg über Javascript die Datenpunkte / Ordner anzulegen.
Jetzt weiß ich nicht ob ich das hier Thematisieren soll aber im Notfall mache ich auch dafür ein eigenes Thema auf
Also bei mir geht es um eine nodeMCU ESP8266 12E welches über MQTT gesteuert und auch Daten zurückliefert.
im SPoiler ne kurze Erklärung:
! MQTT topic structure
! This version uses MQTT topics with the following parts, combined by "/" characters:
! command type prefix: one of "cmd", "tele", "stat".
! identifying device name - can be configured. default: "jarolift".
! fix part: "shutter"
! the numeric channel number
! The MQTT payload for the "cmd" commands are: "UP", "DOWN", "STOP", "SHADE", "SETSHADE" and "LEARN". All MQTT topics and commands are case sensitive, use them exactly as described here.
! example MQTT topics to send commands to the Wifi Dongle:
! cmd/jarolift/shutter/0 UP
! cmd/jarolift/shutter/4 DOWN
! cmd/jarolift/shutter/2 STOP
! cmd/jarolift/shutter/6 SHADE
! cmd/jarolift/shutter/12 SETSHADE
! cmd/jarolift/shutter/12 LEARN
! MQTT topics send back with the updated status of a shutter:
! The status of a shutter is:
! 0 - open
! 90 - shade position
! 100 - close
! stat/jarolift/shutter/0 100
! Integration into Home Assistant
! Here is a configuration example for Home Assistant:
! cover:
! - platform: mqtt
! name: "Wohnzimmer links"
! command_topic: "cmd/jarolift/shutter/1"
! availability_topic: "tele/jarolift/LWT"
! payload_open: "UP"
! payload_close: "DOWN"
! payload_stop: "STOP"
! payload_available: "Online"
! payload_not_available: "Offline"Das bedeutet ich sehe aktuell im MQTT.0 Adapter auch schon Daten (das Board (MQTT) hat sich also verbunden).
Jetzt muss ich wie oben im "Spoiler" beschrieben noch die Datenpunkte anlegen. z.B. cmd/jarolift/shutter/1
Ich würde jetzt über Objekt hingehen und einen "Kanal" cmd, einen "Kanal" jarolift, einen Kanal "shutter anlegen und als letztes mehrere "Datensätze" mit dem namen 0,1,2,3, usw.
Die Frage ist wie meinen die das da die ja nur von HomeAssistant reden wie wird so etwas am besten im ioBroker umgesetzt?
Gruß
SP
-
Jetzt muss ich wie oben im "Spoiler" beschrieben noch die Datenpunkte anlegen. z.B. cmd/jarolift/shutter/1 `
Ich würde erwarten, dass dies der Adapter selbst macht.
@xxxspxxx:Ich würde jetzt über Objekt hingehen und einen "Kanal" cmd, einen "Kanal" jarolift, einen Kanal "shutter anlegen und als letztes mehrere "Datensätze" mit dem namen 0,1,2,3, usw. `
Wie man an den Datenpunkten stat/… sieht, werden keine Kanäle verwendet, sondern nur eine Ordnerstruktur. Du musst also die Datenpunkte vom Typ "Zahl" direkt unter mqtt.0 anlegen. Name zum Erzeugen der ID erst einmal cmd.jarolift.shutter.0 und dann Name ändern in cmd/jarolift/shutter/0.
Ob diese Datenpunkte dann zum Senden geeignet sind ??? -
Hi,
danke dir habe es mal so getestet.
ja ok das habe ich mal gemacht. Mit "Zahl" und "Level" Passt ja auch nicht da er ja die 0,1,2,3 usw mit "UP" "DOWN" "STOP" usw. steuert. Ich würde jetzt mal sagen das ich den TYP auf "Objekt" oder "Feld" stellen muss? Was bei rolle dann sinnvoll ist weiß ich auch nicht…
-
Ich vermutete, dass die Eigenschaften die gleichen wie bei den stat-Datenpunkten sind.
@xxxspxxx:mit "UP" "DOWN" "STOP" usw. steuert. `
Dann muss die Art in "Zeichenkette" (string) geändert werden. min, max und unit löschen.
-
Danke dir ich nutze das jetzt mal so. Gibt es eine Möglichkeit dem Datenpunkt automatisch sofort nachdem man dem per script z.B. ein DOWN gibt den Wert wieder auf "leer" also kein Wert zurücksetzt? Klar per script geht das aber ich meine hier ähnlich eines Triggers. Also kurz bekommt der den Trigger "DOWN" und dann wieder clean?
-
-
Hi Ja die Befehle werden übergeben. Die werden aber auch übergeben wenn ich nicht "String" verwende also z.B. Objekt oder Feld benutze.
Ich dachte mir das der dann immer wieder clean ist denn ich weiß nicht ob der Datenpunkt sich dann plötzlich nochmal neu setzt. AKtuell steht er durch mein Script z.B. auf DOWN in rot aber ich kann am NodeMCU auch sehen das er es nicht nochmal gemacht hat. Ich glaube aber wenn ich das NodeMCU neu starte dann setzt den nochmal alles wenn ich das richtig im LOG sehe. Aber wenn es nicht geht dann lasse ich es mal so und beobachte.
Danke dir jetzt fehlen mir noch Datenpunkte die ich aus VIS steuern kann. Denke das ich diese dann unter VIS.0 anlege? Oder in Javascript.0? Oder eigene Ordner wie ist da die Empfehlung?
-
Die werden aber auch übergeben wenn ich nicht "String" verwende also z.B. Objekt oder Feld benutze. `
Ja, aber bei Setzen in einen Datenpunkttyp != "string" aus einem Skript erfolgt eine Warnung.
@xxxspxxx:Aber wenn es nicht geht dann lasse ich es mal so und beobachte. `
Es geht schon, aber ich sehe keinen Sinn darin.
@xxxspxxx:Denke das ich diese dann unter VIS.0 anlege? Oder in Javascript.0? Oder eigene Ordner wie ist da die Empfehlung? `
Meine Empfehlung: Unter javascript.0 mit Ordnerstruktur (Punkte in der ID). -
Hi,
ich habe nochmal ein Thema mit den Datenpunkten. Wenn ich das jetzt alles bei mir aufbaue will ich das richtig machen so wie Erfinder sich das vorgestellt haben.
Ich habe jetzt folgendes gemacht.
und danach
jetzt ist die Frage ob man den Namen noch auf z.B. Kind2 danach ändert oder so lässt?
Ist das so wie du das beschrieben hast?