NEWS
Temperaturen über Node RED und Alexa abfragen!
-
@apropo okay da muss ich mal gucken. Daher dachte ich wenn ich das über node red mache das es einfacher ist.
-
@mickym So hier
In der mitte ist die Temperatur
-
@basti97 Ja das ist es doch schon fast - oder weist Du nicht, wie Du den Text erstellst den Du in die textCommand schicken willst?
Falls es das ist - dann nimm eine Template Node, schreibe den Text da rein, den Du ausgeben willst und für die geholte Temperatur gibtst {{payload}} an der entsprechenden Stelle ein. Das wars.
-
@mickym Was wäre das für ein Symbol/ Baustein was ich nehmen müsste? Die Alexa hat das "Gerät Temperatur Aquarium" auch schon erkannt. Aber das wird in der App als Lampe angezeigt ist das richtig? Ich dachte in der Alexa App wird das auch als Temperatur angezeigt oderso.
Bis jetzt habe ich nur digitale Befehle von meiner Alexa entgegen genommen. Aber noch nie Analoge, deshalb stelle ich die Fragen -
@basti97 Ich kann Dir leider was Alexa und deren Nodes betrifft nicht weiterhelfen, weil ich weder die Nodes noch die Alexa benutze.
Wenn ich mir das anschaue werden alle Geräte von Alexa nur als Licht erkannt und deshalb auch nur diese Befehle kennt.
Alexa, turn on/off {device}
Alexa, switch on/off {device}
Alexa, set {device} to 50%
Alexa, turn my {device} light green
Alexa, set the {device} light to orange
Alexa, make the {device} warmer
Alexa, brighten {device} to 60 percent
Alexa, dim the {device} lightsWas Du dann aber im NodeRed Flow machst kann ja dann was ganz anderes sein, das bekommt Alexa nicht mit.
Wenn Du also sagst: Mache Aquarium Info ein - und Du dann Text in Deine Speach Node schickt - dann wird Alexa trotzdem denken, dass Du Licht einschaltest.
Aber wie gesagt, dass ist nur eine Vermutung wie das funktioniert.
Ansonsten muss man wahrscheinliche ganz anderen Anbindungen suchen - aber ich bin was Alexa betrifft raus. Ich kann Dir innerhalb eines Flows helfen - aber nicht was die Alexa Nodes betrifft.
-
@mickym Ok Danke für den Tipp bisher habe ich mit nodered noch nicht so viel am Hut gehabt. Was kann man eigentlich alles damit machen.
Naja das ist mein erster Versuch mit Alexa. Eigentlich müsste ich ja nur das virtuelle Gerät in Alexa bringen. Und danach müsste sie eigentlich selbst auslesen was dort steht und mir das sagen. So die Theorie
Andere Variante die ich hatte war über ein Blockly oder so das ganze auszuwerten. Da über den Alexa Adapter das was man gesprochen hat abgespeichert wird. Mit Hilfe diesen könnte man auf den Text reagieren und zb die Aquarium Infos wieder zurück geben. Aber das funktioniert nicht da Alexa sagt "das sie das Gerät nicht kennt". -
@basti97 NodeRed ist im Prinzip genauso eine Logikmaschine wie Blockly und wenn Du lieber mit Blockly arbeitest ist das ja in Ordnung, dann musst Du Dich auch nicht groß mit NodeRed beschäftigen.
Nun gibts in NodeRed einige Nodes - für die es im iobroker keine Adapter gibt oder nicht mehr so gepflegt werden (ich persönlich wollte erst kürzlich den SNMP Adapter nutzen - bin dann aber sehr schnell davon abgekommen. ). So willst Du nun halt im Node Red die Alexa Nodes nutzen.
Du kannst doch einfach einen Datenpunkt im iobroker erstellen und darin speicherst Du 1:1 was aus Deine Temperatur Aquarium Alexa Node rauskommt.
Dann brauchst Dich nicht mehr mit NodeRed nicht weiter zu beschäftigen, sondern verarbeitest den Output direkt mit Blockly weiter.Das ist doch das Schöne am ioBroker das man alles miteinander kombinieren kann. Nutze einfach NodeREd als Adapter und verarbeite den Output mit Blockly weiter.
Das in Deinem Fall die Alexa Nodes weder die Fähigkeiten noch die Zustände Deiner Geräte selbst kennen, da kann ich wenig dazu sagen. Genauso wenig warum die Geräte aus dem iobroker Adapter das der Alexa nicht begreiflich machen können.
Deshalb geht diese Herangehensweise halt davon aus, das man für Alexa eine Sprachausgabe nutzt und dieser mitteilt, was sie zum Beispiel zum Aquarium sagen soll. Das kannst Du aber mit Blockly genauso realisieren.
-
@basti97 Hi, die Alexa Node in Node Red können nur eine Lampe oder einen Schalter simulieren. Temperaturanzeige oder Thermosthate gehen damit nicht.
Apropo hatte dir ein paar Beiträge vorher schon nen Tipp gegeben mit Routinen.
Du erstellst dir eine Routine in der ALexa App mit z.B. "Wenn fogendes passiert" darin dann das was du Fragen willst z.B. "Wie ist die Temperatur im Aqaurium" als Aktion dann "Warten", dadurch meckert sie schon mal nicht bei der Frage.
Über summery kannst du dir ja auslesen was sie verstanden hat und dann mit Blockly deine Sprachausgabe mit dem Temperturwert realisieren. Dann brauchst du dafür gar kein Node Red.
Allerdings könnte man das ganze auch mit Node Red umsetzen. -
@frankyboy73 Routinen habe ich bis jetzt noch gar nicht benutzt. Da muss ich mal gucken wo ich das in der App finde bzw Einstellen mus.
-
@mickym Trotzdem Danke aber irgendwie ist Node red trotzdem interessant. Es ist gut wenn man sich überall bisschen auskennt. Also Javascript und node red stehen bei mir jetzt ganz oben wo ich mich noch einlesen muss.
-
@basti97 Nichts gegen Node red und Blockly...
Damit kann man sehr gut so einiges lösen.
Ich weiss zwar nicht, von welchem Gerät die Temperatur kommt, aber hier scheint mir der IOT-Adapter die beste Wahl zu sein.
Der zeigt zwar keine Werte in der App an, aber die Abfrage mit Alexa funktioniert damit ohne Probleme.
Ganz ohne Blockly / Node red und Routine in der Alexa App.P.S.: Javascript / Node Red sind trotzdem interessante Dinge in die man sich einlesen sollte
-
@basti97 Wenn du spezifische Abfragen umsetzen möchtest die Alexa nicht kennt, bzw. mit der Alexa Node nicht gehen, wirst du nicht ohne Routinen auskommen damit Alexa nicht meckert. Ich habe das auch bei einigen Abfragen so umgesetzt, der Vorteil ist, das man genau die Sätze erstellen kann die einem selber als Sinnvoll erscheinen und nicht die nutzen muss die Alxea sinnvoll findet.
Als Beispiel mein Geragentoröffner. Wenns nach Alxea geht muss ich sagen "schalte Garage Ein" wenn ich die Garage schließen oder öffnen will. Über Routinen habe ich das so gelöst das ich einmal eine habe, wenn ich sage " Öffne Garage" und eine wenn ich sage "Schließe Garage" in beiden Routinen habe ich dann als Aktion Smarthome Gerät Garage Ein. Ist doch viel sinnvoller.
Du könntest auch den Weg gehen, ne Routine erstellen "Wie ist die Temperatur im Aquarium" als Aktion dann das Gerät Aquarium auswählen (Einschalten) und in Node Red dann wenn Aquarium eingeschaltet wurde den Temperturwert per speak ausgeben.
Wenn du Node Red interessant findest, solltest du dich da auf jeden Fall mit beschäftigen. Ich bin dadurch komplett von Blockly weg und spare mir dadurch auch andere Adapter wie Telegramm, Email oder Vis, da sich das alles in Node Red umsetzen lässt. (Die Vis ist in Node Red allerdings eher funktionell als optisch schön)
@Fenian Sicher wäre hier der IOT eine bequeme Lösung, ist allerdings ne Cloudlösung zu der man bei bei zu vielen Abfragen auch noch ein Abo braucht. Bei den Alexa Nodes bleibt alles Netzintern. -
@fenian Zurzeit kommt es noch von einem Slave RP und später kommt es dann von einem ESP.
PS Ich konnte nicht eher Antworten hatte in den letzten Tag keine Zeit um mich mit iob zu beschäftigen.
Gruß Basti -
@frankyboy73 Dann muss ich wohl oder übel mich mal mit der Konfiguration der Routinen beschäftigen. Ich dachte ich kann so etwas komplett im iob lösen. Aber das man mit den Routinen so viel machen kann wusste ich bis jetzt auch nicht.
Mhh aber auf die Idee die Temperatur als Schalter zu definieren und dann per iob ein Sprachnachricht zu definieren. Darauf bin ich noch gar nicht gekommen. Aber so ähnlich mache ich das schon mit meinem Deckenlicht. Das einzige was man dann nicht in der Alexa App sieht ist die Temperatur das ist aber nicht so schlimm.
Ja ich möchte nun vermehrt mich mit Nodered beschäftigen ich finde das sehr spannend. Hast du irgendwelche interessante Seiten die für den Anfang gut sind. Gibt es auch eine Funktion das ich die Programme aufteilen kann wie im Blockly zb eine Seite Alexa und die andere Seite etwas anderes. Das es dadurch ein bisschen übersichtlicher bleibt.
Ich hatte außerdem in den letzten Tagen mit der Verbindung zu Alexa ein kleines Problem gehabt. Das er sich nicht mehr verbinden wollte aber auch ein Neustart hat nichts gebracht. Erst als ich den Iob Fixer über mein System gelaufen habe, hat er sich endlich wieder verbunden.Mir ist unabhängig von dem Problem mit der Alexa folgendes bei Node red aufgefallen. Was muss ich da machen.!
-
@basti97 Hi die Meldung mit dem Palette Manager bekommt du wahrscheinlich weil du den aktiviert hast. Der ist ja dazu um Nodes zu installieren. Das Problem ist das die Nodes die du darüber installierst beim Backup nicht mit gespeichert werden und es in dem Adapter dazu ne andere Lösung gibt. Wenn du den Palette Manager weiter nutzen willst muss du dir die Nodes nach Backup einspielen selbst wieder installieren.
Schau dazu noch mal hier:
https://forum.iobroker.net/topic/34681/kein-paletten-verwalten-im-neuen-node-red-adapter
Neue Tabs für eine bessere Unterteilung / Übersicht kannst du mit dem Plus oben hinzufügen.
Es gibt da ein paar Youtube Videos für die Einführung. Zum Beispiel von
Haus-Automatisierung in Deutsch. Die von Steve Cope sind Klasse, allerdings in Englisch.
Das Einsteiger Video von Smart-in-One war glaube ich auch ganz gut und in Deutsch.
Sonst einfach mal Node Red in Youtube eingeben. -
@frankyboy73 Vielen Dank das gucke mir an. Den gleichen Amazon Echo Hub kann ich aber nicht auf mehreren Seiten einfügen oder? Weil da bekomme ich den Fehler Unable to Start port 80. Bei der anderen Seite (Tab) funktioniert es.
Meine Sprachansage der Temperatur funktoniert irgendwie immer noch nicht richtig. Und zwar möchte ich nur ein Datenpunkt auslösen. Beim Licht sage ich zb "Alexa schalte Wohnzimmer Licht Ein".
Und bei der Temperatur sage ich ja nur "Alexa Temperatur Aquarium" und das versteht sie irgendwie nicht ich habe in den switch den Text eingefügt anstatt wie bei den anderen an/AUS ABER trotzdem funktioniert es irgendwie nicht. -
@basti97 Du fügst den Echo Hub auf einer Seite ein . Wenn Du von dem HUB auf eine andere Seite / Flow verzweigen willst nutzt Du die
Nodes.
Um zu überprüfen was aus Deiner Alexa Node rauskommt hängst Du eine Debug Node dran - und entweder siehst Du es selbst oder postet hier den Output der Debug Node. Wenn Du "Alexa Temperatur Aquarium" weiß ja Alexa NUR welche Node sie anspricht. In dem Fall weiß ich auch nicht was der switch soll. Glaubst Du da kommt der String "Aquarium Temperatur" raus???? Und warum fängst Du das überhaupt ab - kannst doch direkt den Text ausgeben oder was für Ausgaben kommen den sonst noch aus dieser Alexa Node raus?
-
@mickym Vielen Dank das probiere ich Aus. Bezüglich Alexa sagt sie immer "da bin ich mir leider nicht sicher".
Die neue Idee ist das ich zb sage Alexa Temperatur Aquarium und sie steuert mir ein Datenpunkt auf true -
@basti97 Im Prinzip - deswegen nutze für so was keine function Nodes - willst doch Text an Deine Aquarium Node rausschicken - sobald an der Node was ankommt. Dann interessiert Dich doch gar nicht was rauskommt, sondern nur DASS etwas rauskommt. Und nimm für die Textausgabe lieber eine Template Node und keine Function Node. In die Template Node kannst Du einfach den Text reinschreiben, der dann rauskommen soll.
-
@basti97 sagte in Temperaturen über Node RED und Alexa abfragen!:
@mickym Vielen Dank das probiere ich Aus. Bezüglich Alexa sagt sie immer "da bin ich mir leider nicht sicher".
Die neue Idee ist das ich zb sage Alexa Temperatur Aquarium und sie steuert mir ein Datenpunkt auf trueHi, da kommt ja dann die Routine ins spiel, wenn ich folgendes sage "Alexa Temperatur Aqurium" dann als Aktion Smart Home "Temperatur Aquarium Einschalten". Dann sollte aus deiner Temperatur Aquarium Alexa Node ein true raus kommen, eventuell mal ne Debug Node dahinter hängen um zu sehen mit welcher msg das kommt. Dann kannst du im switch die msg auf true abfragen und damit deinen Datenpunkt ansteuern oder per Get Node die Temperatur Aquarium mitnehmen per Change Node oder Funktion Node direkt nen Text in den Speak command Datenpunkt schicken.
Edit: Oder wie @mickym schrieb ne Template Node für die Text / Sprachausgabe
Edit: Ich nutze die Alexa Node schon ewig nicht mehr, deshalb weis ich auch gerade nicht was da genau rauskommt. Wenn ich mich recht entsinne war das beim Schalter msg.on, dann müsstest du im Switch msg.on auf true abfragen. Sollte allerdings auch in der Beschreibung der Node stehen. Wenn du ne Node angeklickt hast kannst du dir ne Hilfe dazu anzeigen lassen.