NEWS
[gelöst] TV an/aus script stoppt immer wieder
-
@BBTown
Boah bin grad völlig vernagelt.....wo leg ich denn diesen Datenpunkt an ?! -
@zyklop
ich nutze zwar auch oft http Befehle für meine VU's, aber schau Dir doch am Besten auch mal den enigma2 Adapter an. Läuft bei mir schon lange und stabil. Kann auch alles was Du machen möchtest und Du musst keine Datenpunkte anlegen, das macht der Adapter für Dich.
Einfach über die Katze installieren. -
Datenpunkt anlegen (wobei Du den Pfad selbst bestimmen kannst. Das hinter Create State in der Klammer bestimmt die "Ordnerstruktur". = Ordner.Unterordner.eigentlicher_Datenpunkt)
Einfach ein neues leeres Javascript nehmen und den Code da rein kopieren und einmal das Script starten. Hier wird ein Switch (Schalter) angelegt und ein SmartGeräte für den iot oder cloud Adapter mit dem Namen Dreambox und als Smartname Dreambox. Damit kannst Du Alexa z.B. sagen : Alexa, Dreambox an (oder aus), dann wird dieser Datenpunkt geschalten. Das kannst Du ja in Blockly dann benutzen...//Datenpunkt Akexa erstellen createState("Eigene_Datenpunkte.Dreambox.an_aus","true", { name: 'Dreambox', role: 'switch', type: 'boolean', read: true, write: true, "smartName": { "de": "Dreambox", "smartType": "SWITCH" } });
-
@dslraser sagte in TV an/aus script stoppt immer wieder:
wobei Du den Pfad selbst bestimmen kannst
...jedoch nicht in einem bestehnden Ordner eines Adapters
-
@Homoran sagte in TV an/aus script stoppt immer wieder:
...jedoch nicht in einem bestehnden Ordner eines Adapters
okay, ich meinte die Struktur der eigenen Datenpunkte, nicht die der Adapter (war für mich selbstverständlich, sorry...)
-
@dslraser sagte in TV an/aus script stoppt immer wieder:
war für mich selbstverständlich
Weiß ich doch!
deswegen die Ergänzung für die, für die es nicht selbstverständlich ist. -
@zyklop
Datenpunkt anlegen mit "Hilfsblockly"<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="" id="IXz~K#YUIctwF3U+jmc9">Name</variable> <variable type="" id="[FB;17/z0UcP)$EBMig!">Initialisierung</variable> <variable type="" id="R!!D7e3u8I~wDQS~TwL8">Beschreibung</variable> <variable type="" id="7q~+hs5u{Q0dn$oM{@t-">Type</variable> <variable type="" id="_F3NI18eUQsGs2*qt.T]">Rolle</variable> <variable type="" id="J=uVGW;P^k@A!vhBphUm">smartName</variable> </variables> <block type="procedures_defcustomnoreturn" id="49kvg:%69IF}@lKJq@(J" x="-338" y="13"> <mutation statements="false"> <arg name="Name" varid="IXz~K#YUIctwF3U+jmc9"></arg> <arg name="Initialisierung" varid="[FB;17/z0UcP)$EBMig!"></arg> <arg name="Beschreibung" varid="R!!D7e3u8I~wDQS~TwL8"></arg> <arg name="Type" varid="7q~+hs5u{Q0dn$oM{@t-"></arg> <arg name="Rolle" varid="_F3NI18eUQsGs2*qt.T]"></arg> <arg name="smartName" varid="J=uVGW;P^k@A!vhBphUm"></arg> </mutation> <field name="NAME">Variablen anlegen</field> <field name="SCRIPT">Y3JlYXRlU3RhdGUoTmFtZSwgSW5pdGlhbGlzaWVydW5nLCB7DQogIG5hbWU6IEJlc2NocmVpYnVuZywNCiAgcmVhZDogdHJ1ZSwgDQogIHdyaXRlOiB0cnVlLCANCiAgdHlwZTogVHlwZSwgDQogIGRlZjogZmFsc2UsDQogIHJvbGU6IFJvbGxlLA0KICBzbWFydE5hbWU6IHNtYXJ0TmFtZQ0KfSk7DQo=</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_callcustomnoreturn" id="O45R/5Gw(j@)2M*_xdcB" x="-337" y="62"> <mutation name="Variablen anlegen"> <arg name="Name"></arg> <arg name="Initialisierung"></arg> <arg name="Beschreibung"></arg> <arg name="Type"></arg> <arg name="Rolle"></arg> <arg name="smartName"></arg> </mutation> <value name="ARG0"> <block type="text" id="nSr7Hq~;DUU2#lB+Yj:}"> <field name="TEXT">Eigene_Datenpunkte.Dreambox.an_aus</field> </block> </value> <value name="ARG1"> <block type="text" id="xlqa55O11o`@{+#@Yj;%"> <field name="TEXT">true</field> </block> </value> <value name="ARG2"> <block type="text" id="yEhqZqxh*}Ip8?yzOW7I"> <field name="TEXT">Dreambox</field> </block> </value> <value name="ARG3"> <block type="text" id="sYAGk@@-Fz^fIDONX!/i"> <field name="TEXT">boolean</field> </block> </value> <value name="ARG4"> <block type="text" id="/t]#6;-K%9u+eD1jG09@"> <field name="TEXT">switch</field> </block> </value> <value name="ARG5"> <block type="text" id="f?//#sV0P}x+|S.8nzy`"> <field name="TEXT">Dreambox</field> </block> </value> </block> </xml>
-
@zyklop
Datenpunkt anlegen Javascript Adapter Version 4.1.13
(neuer Baustein in Blockly)
Nun kannst Du Dir was aussuchen (manuell anlegen geht natürlich auch)<xml xmlns="http://www.w3.org/1999/xhtml"> <block type="create" id="pasaNmv:5XhMV+wcv[A!" x="62" y="162"> <field name="NAME">Eigene_Datenpunkte.Dreambox.an_aus</field> <value name="VALUE"> <block type="text" id="*pUzd%0R+aK~^:V-TD37"> <field name="TEXT">true</field> </block> </value> <value name="COMMON"> <block type="text" id="~Qwfr!~|^MyQ(^*#KL8T"> <field name="TEXT">{ "role" : "switch" , "name" : "Dreambox" , "type": "boolean" , "read" : "true" , "write" : "true" ,"smartName": {"de": " Dreambox", "smartType": "SWITCH"}}</field> </block> </value> </block> </xml>
-
@zyklop und nun noch die "oldSchool" Vorgehensweise
In der Objekte Übersicht klickst Du auf das + Symbol
Wenn Du eine neues Verzeichnis anlegen willst ( bei mir zum Beispiel "MultiMedia.0" ) dann ist es hierbei egal wo Du gerade in der Objekteübersicht bist. Ansonsten klickst Du natürlich gleich auf den Ordner in den Du das neue Objekt haben willst.
Da ich für die Dreambox mehrere Datenpunkte angelegt habe, habe ich unter MultiMedia.0 nicht nur einen "Datenpunkt" mit dem Namen "Dreambox" angelegt sondern ein "Gerät" (Device). Darunter kannst Du dann mehrere Datenpunkte sammeln um die Übersicht zu bewahren - musst Du aber nicht
Ein Gerät (Device) selbst kann nicht gesteuert werden - das ist nur eine "Hülle" für Datenpunkte (und ggf. Kanäle).Dialogfeld nachdem Du auf das + Symbol geklickt hast
Nachdem Du auf "Hinzufügen" geklickt hast, öffnen sich die Einstellungen und dort gehst Du auf das Register "RAW (Nur Experten)"
Hier gibst Du bei "_id:" nun den endgültigen Pfad an.
In meinem Fall also "MultiMedia.0.Dreambox.Test"
Achte hierbei auf die "0" (Null) zwischen dem Hauptknoten und dem ersten Unterpunkt (Gerät oder Datenpunkt).
Wenn es das erste Gerät (oder Datenpunkt) für den jeweiligen Pfad ist, dann wird der Pfad automatisch angelegt und steht dir für weitere Datenpunkte ab sofort direkt zur Verfügung.Das war eigentlich schon alles
-
WOW !!!
Spitze, hat prima geklappt !!! Jetzt kennt er auch den Status der Box......Jungs Ihr seid spitze !!
Vielen Dank für Eure Erklärungen !!
Hab jetzt aber noch ein Problem, wenn ich folgenden Blockly verwende, liest er den Status vom Parser nicht aus, ich muss dafür den VU Trigger nehmen damit es funktioniert. Der Parser liest aber richtig aus und zeigt auch richtig an !! Was kann denn das sein ?!
Danke und Grüße
zyklop
PS: im jeweils zweiten URL Request schalte ich nur mein LED Backlight an/aus über einen ESP mit Relais und Tasmota)
-
@zyklop sagte in TV an/aus script stoppt immer wieder:
Hab jetzt aber noch ein Problem, wenn ich folgenden Blockly verwende, liest er den Status vom Parser nicht aus, ich muss dafür den VU Trigger nehmen damit es funktioniert. Der Parser liest aber richtig aus und zeigt auch richtig an !!
Ich verstehe nicht was Du uns damit sagen willst ...
-
@zyklop
ich verstehe auch nicht was Du meinst...?
Und was versteckt sich da noch für ein loser Baustein ? -
Ach und noch eine Frage, wie muss der Parser für diesen String aussehen ?!
(Drag and Drop kopiert von meiner edision mini.)<e2powerstate><e2instandby>
true </e2instandby></e2powerstate>Grüße
zyklop
-
@zyklop
ach, und noch eine Frage...
wäre schön wenn Du erstmal selbst die Fragen die Dir gestellt wurden beantwortest.
Ich kann Dir gerade nicht mehr folgen was Du eigentlich machen willst. -
@dslraser
oje den hatte ich gar nicht gesehen, hat aber keinen Fehler verursacht, hab ihn gelöscht !! -
@BBTown
also ich habe im Parser für die edision Box diesen Test Text, wenn ich per drag and drop aus dem Browser kopiere mit http://192.168.0.115/web/powerstate...<e2powerstate><e2instandby>
true </e2instandby></e2powerstate>jedoch bei der VU sieht das so aus:
<e2powerstate>
<e2instandby>false</e2instandby>
</e2powerstate>Ergo läuft bei der edision der parser nicht richtig.
Wie muss bei geänderten Zeilensprüngen der Parser aussehen ?und warum geht mein Blocky bei der VU nicht obwohl der Trigger funktioniert und der Parser richtig ausliest ?!
Grüße
zyklop -
oh mist, hatte ganz vergessen daß das Dream Webinterface auf der Edision auf Port 81 liegt, hab das korrigiert, nun ist das ok
Das erklärt immer noch nicht, warum der ganze Blockly nicht geht obwohl der Parser (Test) ok ist.
Muss ich da noch was bei sagen, damit der richtig ausgelesen wird ?! -
@zyklop sagte in TV an/aus script stoppt immer wieder:
Das erklärt immer noch nicht, warum der ganze Blockly nicht geht obwohl der Parser (Test) ok ist.
Muss ich da noch was bei sagen, damit der richtig ausgelesen wird ?!ich glaube Du hast einen "Dreher" in deinem Blockly:
mach mal aus deinem ersten "falsch" ein "wahr" und entsprechend aus dem zweiten "wahr" ein "falsch"true/wahr = ich bin im Standby (und NICHT ich bin "eingeschaltet")
[Nachtrag]
Du kannst anstelle des "sonst falls" auch einfach ein "sonst" angeben.
Wenn Option1 NICHT erfüllt ist, muss ja Option2 erfüllt sein ... Du braucht also nicht erneut zu fragen ob Option2 auch tatsächlich erfüllt ist -
@BBTown said in TV an/aus script stoppt immer wieder:
@zyklop sagte in TV an/aus script stoppt immer wieder:
Das erklärt immer noch nicht, warum der ganze Blockly nicht geht obwohl der Parser (Test) ok ist.
Muss ich da noch was bei sagen, damit der richtig ausgelesen wird ?!ich glaube Du hast einen "Dreher" in deinem Blockly:
mach mal aus deinem ersten "falsch" ein "wahr" und entsprechend aus dem zweiten "wahr" ein "falsch"true/wahr = ich bin im Standby (und NICHT ich bin "eingeschaltet")
[Nachtrag]
Du kannst anstelle des "sonst falls" auch einfach ein "sonst" angeben.
Wenn Option1 NICHT erfüllt ist, muss ja Option2 erfüllt sein ... Du braucht also nicht erneut zu fragen ob Option2 auch tatsächlich erfüllt istJa, hab ich nur für die Sicherheit gemacht die "sonst falls" abfrage.
Dreher usw hab ich schon getestet, klappt alles nicht....gibt es einen kurzen "Test" Blockly, der mir ausgibt, ob er wirklich den powerstate mit true oder false ausgelesen hat ?! -
@zyklop setze mal debug Punkte zum Protokollieren der Schritte ein