NEWS
$ Selector für rpc.0 und .LOWBAT
-
Hi Ihr Cracks,
ich möchte gerne einen Selector basteln, wo NUR Geräte aus hm-rpc.0 enthalten sind und .LOWBAT abgefragt wird.
Das ist mein erfolgloser Versuch. s werden keine subscriptions angelegt.
var selector_rpc0_LOWBAT = $('channel[id=hm-rpc.0.][state.id=*.LOWBAT]');
Mache ich nur .LOWBAT,
var selector_rpc0_LOWBAT = $('channel[state.id=*.LOWBAT]');
werden 410 Subscriptions angelegt.
Hab's versucht aus https://github.com/iobroker/ioBroker.javascript/blob/master/README.md abzuleiten. Unter $ -Selektor gibt es ja ein Beispiel:
! $('channel[role=switch]state.id=*.STATE').on(function (obj) {
! log('New state ' + obj.id + ' = ' + obj.state.val);
! }2. Frage: Wie kann ich verstehen, was in [] oder in {} oder in () muss?
Danke im Voraus,
Fitti
-
Probiere es so:
$('state[id=hm-rpc.0.][state.id=*.LOWBAT]').on(function (obj) { log('New state ' + obj.id + ' = ' + obj.state.val); });
Zum Test kannst du LOWBAT durch STATE oder LEVEL ersetzen.
Gruß
Pix
-
Das läuft prima. Super und Danke!!
! Hat denn keiner mal Lust mit das zu erklären? Das JS ist ja kein Problem - ich komme nur nicht dahinter, was Bluefox da geschaffen hat.
! Das ist total frustierend!
! Genau dieses Beispiel: Ich habe Stunden verbracht die Doku zu lesen und zu testen. Ich habe hierfür http://forum.iobroker.net/viewtopic.php?f=20&t=2329&p=30842&hilit=Servicemeldungen#p20332 dazu genommen.
! Dann stelle ich fest, dass meine CuxD Geräte Probleme machen - Also einen weiteren Filter. Dann sehe ich diese Beispiele auf der JS Adapter Seite und nichts funktioniert.
! Dann stellt man die Frage hier im Forum und bekommt eine ganz andere Lösung. Oft dann noch der Hinweis, das steht doch da so. :shock: :shock: :shock:
! Ich finde aber wirklich nirgends einen Hinweis, wann wie welcher Selektor welcher ist. Beispiel: bei "enum Name" soll ich von alleine darauf kommen, dass ich hier z.B. nur "function" eintrage. Habe ich sogar geschafft. Was ist aber ein commonAttr? Welche Dinger passen da rein, welche nicht?
! Wann nehme ich channel (so wie im genannten Servicemeldungen Skript) und wann nehme ich nun state (so wie jetzt total überraschend von pix in meinem Beispiel)?
! Ist ja nun nicht so, dass ich im Skripteprogrammieren neu bin. Das mache ich schon etliche Jahre mit Perl, Bash, Bat, SQL usw.
! Achso - warum will ich überhaupt diese Anpassungen… na weil bei mir meistens die Skripte, die es hier so funktionierend von anderen gibt, bei mir nicht laufen. Auch nicht auf einer nagelneuen Installation. Keine Ahnung, ob es an der Masse meiner Aktoren liegt oder nicht. Immer wieder nur rote Zeilen im loggging.
! Ich hatte schon mehrfach Leuten sogar Geld für eine 30-60 Minuten Schulung geboten. Aber nix, hat keiner Interesse. :evil: Muss ich halt blöd bleiben.
Danke dennoch nochmal pix.