NEWS
Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)
-
@sigi234 mit welchem script? Das aus dem Forum. Was der dslraser weiter oben gepostet hatte?
@kilasat sagte in [Neuer Adapter] Visualisierung iQontrol:
@sigi234 mit welchem script? Das aus dem Forum. Was der dslraser weiter oben gepostet hatte?
// ######## SKRIPT EINSTELLUNGEN ######## var debug = true; // ######### STATES ANLEGEN ######### createState('offene_Fenster.Gesamt.offeneFenster', 0); createState('offene_Fenster.Gesamt.Fenster', 0); createState('offene_Fenster.Gesamt.Text'); var cacheSelectorFenster = $('channel[state.id=*.STATE](functions=Verschluss)'); function countFenster(obj) { // Setzt die Zähler vor dem Durchlauf aller Elemente auf 0 var anzahlFenster = 0; var anzahlFensterauf = 0; var textFensterauf = []; cacheSelectorFenster.each(function (id, i) { // Schleife für jedes gefundenen Element *.STATE im Gewerk Verschluss var status = getState(id).val; // Zustand *.STATE abfragen (jedes Element) if(debug) log("Status ist: "+status); var obj = getObject(id); if (status == 1 || status === true) { // wenn Zustand true (HM norm) oder "1" (bei HmIP), dann wird die Anzahl der Fenster hochgezählt ++anzahlFensterauf; textFensterauf.push(obj.common.name); // Zu Array hinzufügen } if(debug) log("Fenster Nr. " + i + ": " + getObject(id).common.name + ": " + status); ++anzahlFenster; // Zählt die Anzahl der vorhandenen Fenster unabhängig vom Status }); setState("offene_Fenster.Gesamt.offeneFenster", anzahlFensterauf); // Schreibt die aktuelle Anzahl setState("offene_Fenster.Gesamt.Fenster", anzahlFenster); // Schreibt die aktuelle Anzahl der vorhandene Elemente setState("offene_Fenster.Gesamt.Text", textFensterauf.join(',<br>')); // Schreibt die aktuelle Namen } cacheSelectorFenster.on(function(obj) { // bei Zustandänderung *. STATE im Gewerk Fenster countFenster(obj); }); // START countFenster(); -
@kilasat
nein, ich meine sowas in der Art (ist etwas länger und schickt das Ergebnis an Telegram. Die Ergebnisse könnte man ja auch in eigene Datenpunkte schreiben und die dann für iQontrol benutzen.
Ergebnis z.B.:

Oder das bekannte Fenster zählen Script aus dem Forum. (sollte in der Suche zu finden sein)
-
@kilasat sagte in [Neuer Adapter] Visualisierung iQontrol:
@sigi234 mit welchem script? Das aus dem Forum. Was der dslraser weiter oben gepostet hatte?
// ######## SKRIPT EINSTELLUNGEN ######## var debug = true; // ######### STATES ANLEGEN ######### createState('offene_Fenster.Gesamt.offeneFenster', 0); createState('offene_Fenster.Gesamt.Fenster', 0); createState('offene_Fenster.Gesamt.Text'); var cacheSelectorFenster = $('channel[state.id=*.STATE](functions=Verschluss)'); function countFenster(obj) { // Setzt die Zähler vor dem Durchlauf aller Elemente auf 0 var anzahlFenster = 0; var anzahlFensterauf = 0; var textFensterauf = []; cacheSelectorFenster.each(function (id, i) { // Schleife für jedes gefundenen Element *.STATE im Gewerk Verschluss var status = getState(id).val; // Zustand *.STATE abfragen (jedes Element) if(debug) log("Status ist: "+status); var obj = getObject(id); if (status == 1 || status === true) { // wenn Zustand true (HM norm) oder "1" (bei HmIP), dann wird die Anzahl der Fenster hochgezählt ++anzahlFensterauf; textFensterauf.push(obj.common.name); // Zu Array hinzufügen } if(debug) log("Fenster Nr. " + i + ": " + getObject(id).common.name + ": " + status); ++anzahlFenster; // Zählt die Anzahl der vorhandenen Fenster unabhängig vom Status }); setState("offene_Fenster.Gesamt.offeneFenster", anzahlFensterauf); // Schreibt die aktuelle Anzahl setState("offene_Fenster.Gesamt.Fenster", anzahlFenster); // Schreibt die aktuelle Anzahl der vorhandene Elemente setState("offene_Fenster.Gesamt.Text", textFensterauf.join(',<br>')); // Schreibt die aktuelle Namen } cacheSelectorFenster.on(function(obj) { // bei Zustandänderung *. STATE im Gewerk Fenster countFenster(obj); }); // START countFenster(); -
Besten Dank. Was muss ich hier noch anpassen damit es läuft? Habe Xiaomi Kontakte.
ich habe mal eben was zusammengesteckt...
(ist für meine HMIP Fensterkontakte ohne Unterscheidung ob kipp/auf. Ich schaue hier nur nach offenen Fenstern und der Gesamtanzahl der Fenster) HMIP hat STATE (Großschreibung) und meine Aufzählung (functions) heißt Fenster.Javascript Adapter ist 4.1.14
iQontrol ist 0.0.45
Diese beiden Datenpunkte werden bei mir angelegt.

in iQontrol habe ich es dann so eingefügt



Sieht dann so aus


Ein weiterer Klick öffnet die Seite mit allen Fenstern

-
ich habe mal eben was zusammengesteckt...
(ist für meine HMIP Fensterkontakte ohne Unterscheidung ob kipp/auf. Ich schaue hier nur nach offenen Fenstern und der Gesamtanzahl der Fenster) HMIP hat STATE (Großschreibung) und meine Aufzählung (functions) heißt Fenster.Javascript Adapter ist 4.1.14
iQontrol ist 0.0.45
Diese beiden Datenpunkte werden bei mir angelegt.

in iQontrol habe ich es dann so eingefügt



Sieht dann so aus


Ein weiterer Klick öffnet die Seite mit allen Fenstern

-
ich habe mal eben was zusammengesteckt...
(ist für meine HMIP Fensterkontakte ohne Unterscheidung ob kipp/auf. Ich schaue hier nur nach offenen Fenstern und der Gesamtanzahl der Fenster) HMIP hat STATE (Großschreibung) und meine Aufzählung (functions) heißt Fenster.Javascript Adapter ist 4.1.14
iQontrol ist 0.0.45
Diese beiden Datenpunkte werden bei mir angelegt.

in iQontrol habe ich es dann so eingefügt



Sieht dann so aus


Ein weiterer Klick öffnet die Seite mit allen Fenstern

-

Ich weiss nicht warum es die Anzahl der Fenster nicht zählt. Habe eigentlich alles angepasst.



JS Adapter neu gestartet.
-
@kilasat hast Du im Blockly bei den unteren beiden Einträgen auch noch einmal "Fenster_Anzahl_gesamt" und "Fenster_Anzahl_offen" aus den Objektübersicht manuelle rausgesucht?
Dort ist auch ein anderer Pfad hinterlegt -
@kilasat
bei Dir ist Fenster = fenster, oder ? (klein geschrieben--hinten)bei mir groß

-
@kilasat
zeig mal ein RAW von einem Fensterhier HMIP
{ "type": "state", "common": { "def": "CLOSED", "type": "number", "read": true, "write": false, "min": "CLOSED", "max": "OPEN", "states": { "0": "CLOSED", "1": "OPEN" }, "unit": "\"\"", "role": "value.window", "name": "Wohnzimmerfenster links.STATE" }, "native": { "MIN": "CLOSED", "UNIT": "\"\"", "OPERATIONS": 5, "MAX": "OPEN", "FLAGS": 1, "ID": "STATE", "TAB_ORDER": 0, "TYPE": "ENUM", "DEFAULT": "CLOSED", "VALUE_LIST": [ "CLOSED", "OPEN" ], "CONTROL": "DOOR_SENSOR.STATE" }, "from": "system.adapter.hm-rega.0", "user": "system.user.admin", "ts": 1559315348552, "_id": "hm-rpc.0.xxx.1.STATE", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } } -
@kilasat
zeig mal ein RAW von einem Fensterhier HMIP
{ "type": "state", "common": { "def": "CLOSED", "type": "number", "read": true, "write": false, "min": "CLOSED", "max": "OPEN", "states": { "0": "CLOSED", "1": "OPEN" }, "unit": "\"\"", "role": "value.window", "name": "Wohnzimmerfenster links.STATE" }, "native": { "MIN": "CLOSED", "UNIT": "\"\"", "OPERATIONS": 5, "MAX": "OPEN", "FLAGS": 1, "ID": "STATE", "TAB_ORDER": 0, "TYPE": "ENUM", "DEFAULT": "CLOSED", "VALUE_LIST": [ "CLOSED", "OPEN" ], "CONTROL": "DOOR_SENSOR.STATE" }, "from": "system.adapter.hm-rega.0", "user": "system.user.admin", "ts": 1559315348552, "_id": "hm-rpc.0.xxx.1.STATE", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }{
"_id": "mihome.0.devices.magnet_158d000315c1a9.state",
"common": {
"name": "Is opened",
"role": "state",
"write": false,
"read": true,
"type": "boolean"
},
"type": "state",
"native": {},
"from": "system.adapter.mihome.0",
"user": "system.user.admin",
"ts": 1562618691659,
"acl": {
"object": 1636,
"state": 1636,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator"
}
} -
{
"_id": "mihome.0.devices.magnet_158d000315c1a9.state",
"common": {
"name": "Is opened",
"role": "state",
"write": false,
"read": true,
"type": "boolean"
},
"type": "state",
"native": {},
"from": "system.adapter.mihome.0",
"user": "system.user.admin",
"ts": 1562618691659,
"acl": {
"object": 1636,
"state": 1636,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator"
}
}@kilasat
ich habe mal im Forum gesucht...
geht das ?$('state[id=*.opened](functions="Fenster")'); -
Besten Dank. Was muss ich hier noch anpassen damit es läuft? Habe Xiaomi Kontakte.
@kilasat sagte in [Neuer Adapter] Visualisierung iQontrol:
Besten Dank. Was muss ich hier noch anpassen damit es läuft? Habe Xiaomi Kontakte.
Habe leider keine Xiaomi..............
-
@kilasat
ich habe mal im Forum gesucht...
geht das ?$('state[id=*.opened](functions="Fenster")');@dslraser sagte in [Neuer Adapter] Visualisierung iQontrol:
$('state[id=*.opened]
leider nicht - das habe ich auch schon probiert ;-((((
channelstate.id=*.isopen
-
Hallo Zusammen,
erst mal ein Lob an den Entwickler des Adapter.
Finde ihn prima und bei mir läuft er auch tadellos.Eine Anregung hätte ich allerdings. Es wäre schön wenn man
invertieren könnte, also aus Ein wird dann Aus.Könnte man das umsetzen?
@Paulchen67 sagte in [Neuer Adapter] Visualisierung iQontrol:
Hallo Zusammen,
erst mal ein Lob an den Entwickler des Adapter.
Finde ihn prima und bei mir läuft er auch tadellos.Eine Anregung hätte ich allerdings. Es wäre schön wenn man
invertieren könnte, also aus Ein wird dann Aus.Könnte man das umsetzen?
Danke!
Steht auf der ToDo-Liste
VG -
ich habe mal eben was zusammengesteckt...
(ist für meine HMIP Fensterkontakte ohne Unterscheidung ob kipp/auf. Ich schaue hier nur nach offenen Fenstern und der Gesamtanzahl der Fenster) HMIP hat STATE (Großschreibung) und meine Aufzählung (functions) heißt Fenster.Javascript Adapter ist 4.1.14
iQontrol ist 0.0.45
Diese beiden Datenpunkte werden bei mir angelegt.

in iQontrol habe ich es dann so eingefügt



Sieht dann so aus


Ein weiterer Klick öffnet die Seite mit allen Fenstern

-

mit dieser Einstellung sehe ich zumindest etwas im Log aber die Variablen bleiben leer. Noch eine Idee?


