NEWS
HM-RPC Level Kanal 3&4 nicht synchron
-
@paul53 sagte in HM-RPC Level Kanal 3&4 nicht synchron:
Auch in Shuttercontrol?
wie meinst du das?
Ich hab den Alias in Shuttercontroll verwendet.
Seh es dann um ca. 20:45 obs funktioniert.
Aber ich glaube nicht dass es funktioniert. Als Wert steht ja 0 dort. Somit wird Shuttercontroll nicht schalten. -
@negalein sagte in HM-RPC Level Kanal 3&4 nicht synchron:
Bingo, wieder falsch
Ich habe es fast vermutet. Aber wenigstens bin ich dann nicht alleine damit.
Warte aber trotzdem noch das Ergebnis heute Abend mit Shuttercontrol ab. Ich nutze den Adapter nicht, kann man da zum testen für das eine Rollo nicht die Zeiten einstellen ? -
@negalein sagte: Als Wert steht ja 0 dort.
Sicher? Prüfe es mal in einem kleinen Test-Skript:
log('Rollo Wohnzimmer: ' + getState('alias.0.Rollos.Rollo_Wohnzimmer').val);
-
@paul53
Damit kam bei mir immer der richtige Wert (aber im admin stand trotzdem der falsche Wert und war dann auch in iQontrol falsch.)
@Negalein
Es wäre interessant welchen Wert denn Shuttercontrol nimmt, den sichtbaren aus dem admin oder den "wirklichen", wenn es denn in Deinem Log auch so ist wie bei mir. -
@dslraser sagte in HM-RPC Level Kanal 3&4 nicht synchron:
Warte aber trotzdem noch das Ergebnis heute Abend mit Shuttercontrol ab. Ich nutze den Adapter nicht, kann man da zum testen für das eine Rollo nicht die Zeiten einstellen ?
So, ich hab jetzt wieder das Blockly deaktiviert, Alias-Script aktiviert und gerade geschalten.
Derzeit ist der Alias noch gleich wie .3.LEVELHab jetzt noch History dafür aktiviert.
@paul53 sagte in HM-RPC Level Kanal 3&4 nicht synchron:
Sicher? Prüfe es mal in einem kleinen Test-Skript:
Ok, wenns wieder auftritt.
-
@paul53 sagte in HM-RPC Level Kanal 3&4 nicht synchron:
Sicher? Prüfe es mal in einem kleinen Test-Skript:
javascript.0 2021-04-09 18:00:52.697 info (814) script.js.Fenster.Test-Alias: Rollo Wohnzimmer: 93
Im Log stehts richtig.
Bin dann gespannt. -
-
@negalein sagte in HM-RPC Level Kanal 3&4 nicht synchron:
Funktioniert mit dem Alias.
Shuttercontroll hat soeben brav geschlossen!
beobachte es mal noch einen Tag. Wie war das Log und history zu der Zeit als Shuttercontrol geschlossen hat ?
-
@negalein sagte in HM-RPC Level Kanal 3&4 nicht synchron:
Im Log stehts richtig.
Bin dann gespannt.ist das Log und der Screenshot zur gleichen Zeit gemacht ?
Edit: weil das Log von 18:00 Uhr ist ?
-
@dslraser sagte in HM-RPC Level Kanal 3&4 nicht synchron:
ist das Log und der Screenshot zur gleichen Zeit gemacht ?
Ja, war der Zeitpunkt, wo ich den Schalter betätigt habe.
Schalter betätigt --> im Wert wird 0 angezeigt, im Log aber die richtigen 93
-
Kann ich in diesem Script auch die anderen Rollos einfügen, oder je Rollo 1 Script?
// Original-Datenpunkt const idOrigin = 'hm-rpc.0.00115A49A5B2BE.4.LEVEL'/*Rollo Wohnzimmer :4 LEVEL*/ // Optional: Status-Datenpunkt, wenn Kommando und Status getrennt. // Bei Nicht-Verwendung Leerstring '' zuweisen const idRead = 'hm-rpc.0.00115A49A5B2BE.3.LEVEL'/*Rollo Wohnzimmer :4 LEVEL*/ // Alias-Datenpunkt const idAlias = 'Rollos.Rollo_Wohnzimmer'; var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom, raum, gewerk; // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich nameAlias = 'Rollo Wohnzimmer'; desc = 'per Script erstellt'; // typeAlias = 'boolean'; // oder 'number' // read = "val < 0 ? -val : 0"; // Erkennung "Aus" --> false erfolgt automatisch // write = "val ? String(1) : String(0)"; // role = 'value'; // min = 0; // nur Zahlen // max = 100; // nur Zahlen // unit = '%'; // nur für Zahlen // states = {0: 'Aus', 1: 'Auto', 2: 'Ein'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein) custom = {}; // verhindert doppelte Ausführung von history, ... // raum = 'EG_Flur'; // Groß-/Kleinschreibung in der ID beachten ! // gewerk = 'Licht'; // Groß-/Kleinschreibung in der ID beachten ! // Ab hier nichts ändern !! function createAlias(idDst, idSrc, idRd) { if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn'); else { var obj = {}; obj.type = 'state'; obj.common = getObject(idSrc).common; obj.common.alias = {}; if(idRd) { obj.common.alias.id = {}; obj.common.alias.id.read = idRd; obj.common.alias.id.write = idSrc; obj.common.read = true; } else obj.common.alias.id = idSrc; if(typeAlias) obj.common.type = typeAlias; if(obj.common.read !== false && read) obj.common.alias.read = read; if(obj.common.write !== false && write) obj.common.alias.write = write; if(nameAlias) obj.common.name = nameAlias; if(role) obj.common.role = role; if(desc) obj.common.desc = desc; if(obj.common.type == 'number') { if(min !== undefined) obj.common.min = min; if(max !== undefined) obj.common.max = max; if(unit) obj.common.unit = unit; } else { if(obj.common.min !== undefined) delete obj.common.min; if(obj.common.max !== undefined) delete obj.common.max; if(obj.common.unit) delete obj.common.unit; } if(states) obj.common.states = states; if(custom && obj.common.custom) obj.common.custom = custom; obj.native = {}; setObject(idDst, obj, function() { if(idRd) setState(idRd, getState(idRd).val, true); else setState(idSrc, getState(idSrc).val, true); }); if(raum && existsObject('enum.rooms.' + raum)) { let obj = getObject('enum.rooms.' + raum) obj.common.members.push(idDst); setObject('enum.rooms.' + raum, obj); } if(gewerk && existsObject('enum.functions.' + gewerk)) { let obj = getObject('enum.functions.' + gewerk) obj.common.members.push(idDst); setObject('enum.functions.' + gewerk, obj); } } } createAlias('alias.0.' + idAlias, idOrigin, idRead);
-
@negalein sagte in HM-RPC Level Kanal 3&4 nicht synchron:
je Rollo 1 Script?
entweder je Rollo eins, oder Du überschreibst nur die oberen beiden id und erstellst damit neu usw.
-
@dslraser sagte in HM-RPC Level Kanal 3&4 nicht synchron:
Wie war das Log und history zu der Zeit als Shuttercontrol geschlossen hat ?
History hatte ich vergessen zu aktivieren.
2021-04-09 19:53:00.027 - [32minfo[39m: shuttercontrol.0 (22669) #12 Set ID: alias.0.Rollos.Rollo_Wohnzimmer Rollo Wohnzimmer value: 0%
-
@dslraser sagte in HM-RPC Level Kanal 3&4 nicht synchron:
oder Du überschreibst nur die oberen beiden id und erstellst damit neu usw.
Ok, also das Script muss nur 1x laufen um den Alias anzulegen. Danach kann es pausiert werden?
-
@negalein sagte in HM-RPC Level Kanal 3&4 nicht synchron:
Danach kann es pausiert werden?
ja, das brauchst Du nur jeweils 1x zum erstellen, danach kannst Du es ausschalten.
-