NEWS
Per Alexa vis views steuern
-
Hi Dutchman,
also die Instanzen ändere ich nicht weil es ja die gleiche ist.
Data = main/Cam
und dann
command = changeView
dann müsste es ja eigentlich gehen oder muss der Wert von der Instanz neu gesetzt werden?
Gruß,
Thorsten
PS: das teste ich gleich mal. Kannst du mir eventuell deinen Code geben?
-
Hey there,
Ich hatte kein script dazu hab mir aber mal schnel eins gebastelt das alle 10 sekunden eine andere view aufruft:
var timeout, timeout2, timeout3; // Alle 10 sekunden schedule("*/10 * * * * *", function () { // Abfrage welche view aktief ist if (getState("vis.0.control.data").val == 'Temperature_Control/Verwarming') { // View welche dargestellt werden soll setState("vis.0.control.data"/*Data for control vis*/, 'Temperature_Control/Verwarming_Woonkamer'); // Mit 2 sekunden verzoegerung zur view schalten timeout = setTimeout(function () { setState("vis.0.control.command"/*Command for vis*/, 'changeView'); }, 2000); } else if (getState("vis.0.control.data").val == 'Temperature_Control/Verwarming_Woonkamer') { // View welche dargestellt werden soll setState("vis.0.control.data"/*Data for control vis*/, 'Temperature_Control/Verwarming_Keuken'); // Mit 2 sekunden verzoegerung zur view schalten timeout2 = setTimeout(function () { setState("vis.0.control.command"/*Command for vis*/, 'changeView'); }, 2000); } else { // View welche dargestellt werden soll setState("vis.0.control.data"/*Data for control vis*/, 'Temperature_Control/Verwarming_Luca'); // Mit 2 sekunden verzoegerung zur view schalten timeout3 = setTimeout(function () { setState("vis.0.control.command"/*Command for vis*/, 'changeView'); }, 2000); } });
amit sollte es klappen, ich sehe aber ein par probleme wen man mehrere projecte benutzt. Hast du ein oder mehr projecten in VIS ?
-
Hi Dutchman,
Sorry das ich mich jetzt erst melde aber gestern musste ich etwas länger arbeiten.
So habe gerade mal dein Script angepasst und siehe da so funktioniert es auch.
Nein mehrere Projekte habe ich nicht. Wüsste jetzt auch noch nicht was es für einen Vorteil hätte.
Bis dato habe ich auch nur zwei Views da ich mich gerade wieder mal etwas mehr damit beschäftige. Ob es hier am gerät mehr werden weiß ich auch noch nicht weil auf meinem 36" TV ziemlich viel Platz ist. Der erste View ist ne Übersicht über eigentlich alle meine Sensoren und Aktoren (Fenster, Heizung, Licht, Wetter, Uhr, deutscher Wetterdienst und sogar die Überwachungskameras. Der zweite View soll nur die Kameras zeigen in Großformat.
Überlege auch einen View auf nem (Smart/Magic Mirror) ähnlichen System zu realisieren wo dann per Sprache der Vis aufgerufen werden soll. Da ich bis dato kein vernünftiges System gefunden habe.
Werde jetzt mal etwas mit deinem Script rum spielen und testen. Und werde dann auch gerne bericht erstatten :-).
Gruß,
Thorsten
-
Werde jetzt mal etwas mit deinem Script rum spielen und testen. Und werde dann auch gerne bericht erstatten :-). `
gerne gut das es klappt wo lag den der fehler bei dir ?
-
Hi Dutchman,
habe selber kein Script gemacht weil mir dazu der Hirnschmalz noch fehlt. Habe es ja nur mit den Objekten im ioBroker versucht was ja schon nicht geklappt hat.
Gruß,
Thorsten
-
hallo,
ich wollte auch mit einem changeView script etwas ausprobieren. mein problem ist, dass
vis.0.control.data
vis.0.control.command
vis.0.control.instance
es gibt nur: vis.0.command vis.0.control… fehlt unter objekte.
weiß jemand warum das bei mir fehlen könnte?
vis version 1.1.1
-
Hi, sorry habe ein par Tage auf Dienstreise und wenig Zeit die Forum gehabt
Habt ihr eine Lösung gefunden?
Wenn nein schikt bitte ne PN um mich aufmerksam zu machen auf diesen thread und dann machen wir die Lösung zusammen!
–-----------------------
Send from mobile device
Das schöne ios hat Auto Korrektur zum k****
Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community
-
hallo,
ich wollte auch mit einem changeView script etwas ausprobieren. mein problem ist, dass
vis.0.control.data
vis.0.control.command
vis.0.control.instance
es gibt nur: vis.0.command vis.0.control… fehlt unter objekte.
weiß jemand warum das bei mir fehlen könnte?
vis version 1.1.1 `
Hallo,das ist wirklich seltsam Eigentlich sollten die Objekte so aussehen:
Früher konnte man mal die drei Eigenschaften in einem Objekt zusammen festlegen. Heute sind aber die drei Objekte notwendig.Nein mehrere Projekte habe ich nicht. Wüsste jetzt auch noch nicht was es für einen Vorteil hätte.
Bis dato habe ich auch nur zwei Views da ich mich gerade wieder mal etwas mehr damit beschäftige. Ob es hier am gerät mehr werden weiß ich auch noch nicht weil auf meinem 36" TV ziemlich viel Platz ist. Der erste View ist ne Übersicht über eigentlich alle meine Sensoren und Aktoren (Fenster, Heizung, Licht, Wetter, Uhr, deutscher Wetterdienst und sogar die Überwachungskameras. Der zweite View soll nur die Kameras zeigen in Großformat.
Überlege auch einen View auf nem (Smart/Magic Mirror) ähnlichen System zu realisieren wo dann per Sprache der Vis aufgerufen werden soll. Da ich bis dato kein vernünftiges System gefunden habe.
Werde jetzt mal etwas mit deinem Script rum spielen und testen. Und werde dann auch gerne bericht erstatten :-).
Gruß,
Thorsten `
Hallo Thorsten,beim Aufruf eines Projektes werden alle Views in dem Projekt geladen. Du schreibst von zwei Views, die auf dem großen TV gezeigt werden. Eine weitere View soll evtl. auf einen Magic Mirror (ich denke mal, der ist wesentlich kleiner als der Fernseher). Ich spekuliere, dass der Rechner, der VIS lädt und der am TV hängt genug Kapazitäten hat. Eine View mehr oder weniger macht ihm nix aus. Aners kann das beim Rechner im MagicMirror aussehen. Für den ist es überflüssig, die ersten beiden großen Views mitzuladen. Da bietet sich ein eigenes Projekt an.
Für den Aufruf per Sprache (Alexa/Google Home) würde ich die drei Datenpunkte im Szenen-Adapter befüllen und dann die Szene in der Alexa App als Routine einschalten und für den Google Home als eigenen Webhook in IFTTT.
Gruß
Pix
-
hi pix,
ich mache gerade sehr viel mit vis - habe keine fehler im log - alles läuft - meine obekte sehen so aus:
ich habe den fehler noch in einem anderen forum gesehen - da hat leider niemand darauf geantwortet.
fehler bekomme ich nur bei
setState("vis.0.control.instance", "FFFFFFFF"); setState("vis.0.control.data", "7galaxyalarm"); setState("vis.0.control.command", 'changeView');
dies datenpunkte sind nicht da - state not found
kann ich da etwas machen - ich würde auch gerne über alexa meine views ändern
bei mir sieht es so aus:
4447_vis-obj.png -
hat sich erledigt - musste vis adapter de- und neuinstallieren - jetzt sind datenpunkte da
-
Hallo zusammen
Habe gerade gelesen,das man Views auch mit Alexa umschalten kann.Nur leider bin ich noch Newbie und habe die Vorgehensweise noch nicht ganz verstanden. Das erste Problem was ich habe ,in meinen Views finde ich keine Namen obwohl sie Status und Info heißen. Alexa Anbindung läuft bei mir über Node.red. Funktioniert auch mit Licht usw. prima.
Aber wie kann ich da ein View einbinden um die beiden Views zu wechseln.
StandartView ist Info. Von dort würde ich gern auf View Status über Alexa umschalten und natürlich auch wideer zurück.
Wie bekomme ich das hin?
Volker
1400_vis.jpg -
hier ein beispiel script - funktioniert bei mir
on({id: "controll-own.0.HANDY.FlurAnwesenheit"/*HANDYKLINGELT*/, val:true}, function (obj) { var value = obj.state.val; /*if (getState("controll-own.0.WHATSAPP").val === true */ setTimeout(function () { setState("vis.0.control.instance", "f799e7b9"); setTimeout(function () { setState("vis.0.control.data", "3galaxy"); }, 1000); setTimeout(function () { setState("vis.0.control.command", 'changeView'); }, 2000); }, 15000);
die control.instance-id habe ich aus der vis app auf dem handy ausgelesen
hoffe das hilft weiter
achja: die 15000 sind eine zeitverzögerung bis die vis-app auf dem handy geladen ist
-
Hallo
Danke für die schnelle Antwort.
Leider verstehe ich da nur Bahnhof. Ich bin noch Newbie.
Das ist mir echt zu hoch. Wie hast du die ID aus der Vis-APP ausgelesen. Ich nutze die App auch, allerdings auf einem Tablet.
Wie hast du die Anbindung zu Alexa gemacht?? Fragen über Fragen?
Volker
-
das auslesen ist einfach
öffne vis-app (vom googleplay store installiert)
drücke auf die 3 punkte oben links
jetzt bist du in der configuration - darin kann man die view (das project )auswählen und etwas weiter unten steht die instanz. diese instanz musst du in das script einfügen. wenn die app ersteinmal geöffnet ist und du die das zu öffnende project geladen hast(also die view, die du anzeigen willst), kannst du die instanz auch unter objecte.vis.0 … instanz auslesen (im iobroker admin).
das script kopierst du und legst im javascript-adapter ein neues script an und benennst es. dann kopierst du meinen code hinein und änderst die instanz (bei mir ist die "f799e7b9").
jetzt must du noch bestimmen, wann du die view eigentlich ändern willst. bei mir ist das in der ersten zeile des scripts definiert.
on({id: "controll-own.0.HANDY.FlurAnwesenheit"/*HANDYKLINGELT*/, val:true}, function (obj) {
wenn also HANDY.FlurAnwesenheit auf true geschaltet wird - wird das script gestartet und die die view nach 15 secunden auf dem tablet (mit der instanz "f799e7b9") geändert.
das object HANDY.FlurAnwesenheit wird bei mir durch tasker geschaltet (eine app zum programmieren für android) tasker erkennt, das ich im flur bin und schickt HANDY.FlurAnwesenheit = true. wie du dies schaltest liegt natürlich an deiner anwendung und situation. ich bin auch ein javascript anfänger - habe mir das alles aus den forum zusammen kopiert. du könntest auch das oben beschriebene object abfragen - also wenn die instanz unter objecte. vis.0 … sich aktualisiert (anmeldet) und eine bestimmte instanz hat :schalte die view um.
öffne mal die vis-app und logge dich in ein project ein - beobachte dabei die objekte unter vis.0. dann siehst du was passiert
fast vergessen. für alexa einfach einen neuen schaltpunkt definieren - wie für alle anderen lampen usw. auch. "Alexa, schalte ansicht ein" wäre dann z.b. der sprachbefehl. jetzt kannst du in der ersten zeile des script diesen punkt eingeben. geht der auf true wird view geändert. Alexa, schalte ansicht aus - kannst du erstmal leer lassen oder einfach das script kopieren und mit false steuern und eine andere view wählen)
-
Hallo
Danke für die ausführliche Erklärung. Die ID habe ich gefunden,das war kein Problem.
Dein Script habe ich auch übenommen,allerdings kommt da eine Fehlermeldung in meinem Adapter.Ich habe auch schon meine ID und die Viewname eingetragen.
Ich hoffe es ist richtig.
Nur den Rest mit der Alexa-anbindung habe ich noch nicht verstanden.
Ich muß doch erstmal irgenwo ein Gerät anlegen , welches ich dann mit Alexa local verknüpfen kann. Aber wo lege ich das Gerät an??
Volker
1400_script.jpg -
controll.own.HANDY…. existiert bei dir nicht
lege mal einen neuen Datenpunkt an - diesen kannst du dann erstmal von hand schalten, damit du siehst, was passiert.
man kann dann den datenpunkt auf false oder true setzen (im admin von iobroker).
im webbrowser (iobroker) öffne Objekte - am besten schau mal in youtube ein paar videos an - als beispiel https://www.youtube.com/watch?v=TOxKS3MdrgU - ZEIT bei 3:12 ich habe auch viel über youtube gelernt
es gibt einige anfänger videos.
anschliessend kannst du den neuen Datenpunkt in das script eintragen - das ist ein wenig zuviel um alles schriftlich zu erklären.
auch zu empfehlen: https://www.youtube.com/watch?v=BkJRS9Z … qKmupMxWKx
eine ganze reihe zum einstieg
-
hallo
Erstaml vielen Dank für deine Mühe.Mit den videos war eine gute Idee.
Leider habe ich es nicht hingekommen. Den Datenpunkt, bzw ich habe zwei Geräte erstellt . Das hat funktioniert.
Wenn ich dieses Gerät jetzt mit Node-Red verknüpfen will ,finde ich es nicht. Ich habe Iobroker schon neu gestartet aber die beiden Geräte tauchen nicht auf.
Was habe ich falsch gemacht???
Volker
1400_auswahl.jpg
1400_objekte.jpg -
hi volker,
ich dachte du benutzt den cloudadapter für die alexa anbindung - node-red steht zwar bei mir auf der "lern-liste" habe ich aber noch nichts damit gemacht. habe nur irgendwo gelesen, dass manche alexa mit node-red verbinden. als anfänger habe ich den cloudadapter gewählt - da gibt es auch videos mit der einrichtung.
mir persönlich reicht das iobroker system mit allen adaptern und javascript vollkommen aus um mich an meine wissensgrenze zu bringen.
vielleicht hier: http://forum.iobroker.net/viewtopic.php?t=11302
-
Hallo
naja ich hatte mit dem Cloudadapter immer wieder Probleme,seit ich die Anbindung über Node-Red gemacht habe, sind die Probleme weg.
Ich habe Dir mal ein Bild mit angehängt. Auf der linken Seite steht das Gerät was unter Alexa zu finden ist,rechts dann das Gerät aus Iobroker was gesteuert werden soll.
Und genau da finde ich das neu erstellte Objekt nicht.
Dies Objekt würde ich dann auch in Dein Script eintragen. Nur wie??
Meine Idee war folgende.Ich erstelle unter den Objekten ein neues "Viruelles" Gerät,was ich schalten kann. Geschaltet wird es über Alexa.
Den Zustand true oder False überwache ich mit einem Script.
function seitenwechsel(){ setState('vis.0.control.instance', 'FFFFFFFF'); setState('vis.0.control.data', 'Info'); // view2 steht für den Namen der View die du anzeigen willst wenn was passiert setState('vis.0.control.command', 'changeView'); } // Abfragen des gewünschen Sensors bspw. Fensterkontakt // wenn der Status auf true wechselt wird die view2 angezeigt on("hm-rpc.0.NEQ0530536.2.STATE", function(dp) { if(dp.state.val) seitenwechsel();});
und statt dem Fensterkontakt wollte ich das Virtuelle Gerät eintragen. Funktioniert das so überhaupt oder bin ich da auf dem Holzweg???
Volker
1400_node-red.jpg -
bin mir nicht sicher aber füge mal switch als role in deine objecte ein - du kannst das im admin direct anklicken (siehe mein bild - an der stelle an der switch steht mit der maus drauf klicken und auswählen)
4447_image_3.png