NEWS
[gelöst] json abfragen - Objekte erstellen
-
@paul53 sagte in json abfragen - Objekte erstellen:
versuche es mal so:
ah, ich denke das verstehe ich und sollt ich hinbekommen
-
-
@homoran
Zuerst dachte ich eh, dass die Antwort von dir kam
Der Dank geht natürlich an @paul53Nein, wie es aktuell aussieht wird sich da nichts ändern. Und wenn dann wird die Anzahl der Channels erhöht. Davon geh ich aber nicht aus. Die Reihenfolge wird sich auch nicht ändern.
Die json sieht schon seit einigen Jahren so aus. -
@rtwl sagte in json abfragen - Objekte erstellen:
Und wenn dann wird die Anzahl der Channels erhöht.
wenn sich diese Anzahl erhöht, und neue Sensoren immer hinten Angehängt werden, musst du nur die anzahl i bis 11 erhöhen
-
@homoran
Jap, das war mir klar aber danke natürlich.Wie ihr euch vorstellen könnt, sind die Channel0-11 jeweils Räume/Orte an denen die Sensoren stehen. Jetzt ist es natürlich möglich sich zu merken welcher Channel zu welchem Raum gehört bzw beim späteren implementieren in der VIS kann man da auch den "Schummelzettel" verwenden.
Aber wenn ich mit meiner MS-Excel Hirnhälfte denke, würde ich mir eine Tabelle anlegen und die Channel0-11 in den Raumnamen umwandeln.
Könnte man das auch machen. So in der Art: Wenn i = 2 dann nimm statt "Channel2" das Wort "Wohnzimmer" - Diese Zuordnung/Liste der Channels/Räume müsste man aber wo speichern/abrufen können.Oder bin ich da schon zu weit und wäre nur nice to have?
-
@rtwl sagte in json abfragen - Objekte erstellen:
Könnte man das auch machen. So in der Art: Wenn i = 2 dann nimm statt "Channel2" das Wort "Wohnzimmer" - Diese Zuordnung/Liste der Channels/Räume müsste man aber wo speichern/abrufen können.
jepp, es geht alles. beliebig komplex
da müsste man mit dem case Befehl Arbeiten.
bin aber schon länger nicht mehr am PC, derxBlock müsste etwas mit Fall heißen. hab ihn aber selber noch nie verwendet. -
@rtwl sagte: sind die Channel0-11 jeweils Räume/Orte
Müssen die Orte in der ID enthalten sein? Den Datenpunktnamen kann man beliebig vergeben. Außerdem gibt es noch die Aufzählung "Räume"(enum.rooms), die man den Datenpunkten zuordnen kann.
-
Ich denke ich hab eine Lösung gefunden. Nach dem Umzug ins Haus soll es dann relativ einfach gehen die Testumgebung jetzt dann anzupassen.
Ich hab es jetzt mal so gelöst.
@paul53
Was genau meinst du mit "Räume"(enum.rooms)
Wo kann ich da was definieren? -
@rtwl sagte: Was genau meinst du mit "Räume"(enum.rooms)
Im Tab "Aufzählungen" gibt es bereits vorgegebene Räume, die man um eigene Räume erweitern kann.
Den Räumen kann man jeweils die zwei Datenpunkte zuweisen. Oder man weist im Tab "Objekte" den Datenpunkten den zugehörigen Ort(Zimmer) zu.
-
@paul53
ah, sehr cool. Hab schonmal auf "Aufzählungen" geklickt. Aber da ist alles leer. Also nix vordefiniertes drinnen. Daher hab ich mich damit noch nicht beschäftigt. wusste nicht was ich da machen kann.
danke, und verzeiht die Anfänger fragen -
@rtwl sagte in json abfragen - Objekte erstellen:
Aber da ist alles leer. Also nix vordefiniertes drinnen
Dann hast du kein Homematic
-
@homoran sagte: Dann hast du kein Homematic
Ich wusste gar nicht, dass die der HM-Rega-Adapter erzeugt. Das auch noch mehrsprachig?
-
@paul53 sagte:
Ich wusste gar nicht, dass die der HM-Rega-Adapter erzeugt. Das auch noch mehrsprachig?
ich gehe mal davon aus, bzw, bin immer davon ausgegangen, dass die Aufzählungen aus der HM kommen.
Ob diese jetzt über ein translate-Modul beim Einlesen direkt mehrsprachig angelegt werden, wäre natürlich möglich.Aber wie ich dich kenne hast du bereits in den Objektdaten nachgesehen und die Übersetzung ist native
-
-
-
-
@paul53 @Homoran
Nein ich hab kein homematic.
vielleicht hab ich da wieder was falsch verstanden. Wenn ich bei Räume auf das Plus klicke, kommen schon ein Haufen Räume die man hinzufügen kann. Aber soweit war ich bis vorhin noch nie.
die Liste der Räume war einfach leer. Jetzt hab ich mir zum Testen mal welche angelegt. -
@Homoran @paul53
Hab noch eine Frage:Wie kann ich in einer Schleife prüfen, ob ein Datenpunkt angelegt ist? Wenn nicht soll das "Schreiben" übersprungen werden.
Ich habe mir manuell die DP 1-5 angelegt, läuft auch wie gewünscht. Die Daten werden korrekt eingetragen. Nur benötige ich nicht alle 64 Marker (anderes Wort für "states" welches beim Lightmanager Air von jbmedia verwendet wird), sondern nur ein paar ausgewählte. Diese ausgewählten Marker würde ich dann als Datenpunkte manuell anlegen um sie befüllen zu lassen.
Es funktioniert ja eh wie gewünscht, nur wird das Protokoll mit Fehlermeldungen befüllt und das möchte ich damit vermeiden.Alternativ dazu könnte ich mir anstelle von "schreibe Objekt" den Block "erstelle Objekt" vorstellen, aber das hab ich nicht hinbekommen. Aber auch mit dieser Variante hätte ich dann alle 64 Datenpunkte angelegt, wovon mehr als die Hälfte nicht benötigt werden.
-
@rtwl
Erstelle eine Javascript-Funktion setExistsState(id, val) mit folgendem Inhalt:if(existsState(id)) setState(id, val, true);
die anstelle von "schreibe" verwendet wird.
-
@paul53
hm, das versteh ich jetzt nicht ganz. Die Javascript-Funktion kann ich ja nicht anstelle des "schreibe" verwenden. Es dockt dort ja nicht an. Außerdem will ich ja schreiben, es soll ja nur das Schreiben nur für die Datenpunkte übersprungen werden, welche nicht existieren.Angenommen es existieren nur die Datenpunkte mit ungeraden Nummern, sollen diese durch die Schleife befüllt werden. Das funktioniert ja alles, aber für die geraden Nummern will ich keine Fehlermeldung im Log haben.