NEWS

Fenster und andere Geräte zählen opt. Alexa Ansagen

  • Forum Testing Most Active

    Versionen 1.6.7
    aktualisiert am 23.12.2020
    Typ Blockly mit JavaScript Funktionen
    verwendete Adapter je nach dem was im Blockly aktiviert ist
    verwendete Geräte verschieden - gemischt
    was kann das Blockly wird hier beschrieben

    Hallo Zusammen.
    Ich stelle hier mein Blockly zum Geräte zählen und optional zum Ansagen über den Alexa2 Adapter über speak, sowie optionaler Versand über Telegram / E-Mail zur Verfügung.
    Das gesamte Blockly nutzt "alias'e". Alle anderen benötigten Datenpunkte erstellt und löscht das Blockly selbst, je nach dem was verwendet werden soll.
    Wer also keine alias erstellen oder nutzen möchte kann an dieser Stelle aufhören zu lesen, für alle anderen Interessierten versuche ich möglichst genau zu beschreiben was zu tun ist.

    Mit Alexa geht dann z.B.

    • Alexa, welche Fenster sind noch auf
    • Alexa, welche Türen sind noch auf
    • Alexa, welche Steckdosen sind noch an
    • Alexa, welche Lampen sind noch an
    • Alexa, was machen die Batterien
    • Alexa, welche Bewegungsmelder sind aktiv
    • Alexa, wie sind die Temperaturen (Ansage, aller Temperaturen meiner Räume und Außentemperatur nacheinander in einer Ansage)

    Welche Frage in welcher Formulierung gestellt wird bestimmt Ihr natürlich selbst, da dies über eine Routine in der Alexa App gesteuert wird. Dazu später mehr.

    Ein Hinweis gleich noch zu Beginn. Da die Ansage am angesprochenen ECHO erfolgen soll, kann es vorkommen, das, wenn es mehrere ECHO's in Hörweite gibt, die Ansage an einem anderen ECHO ausgegeben wird, weil sich ein anderer ECHO "angesprochen fühlt". Wenn ich in einem Raum bin, wo mich nur ein ECHO hören kann, funktioniert es bei mir zuverlässig.

    Meine verwendeten Adapter dafür sind:

    • Alexa2 Adapter 3.4.0
    • iot Adapter 1.8.8
    • Javascript Adapter 4.10.8
    • Telegram Adapter 1.5.9 (optional)
    • E-Mail Adapter 1.0.7 (optional)
    • und wenn gewünscht (optional) iQontrol 1.5.2
    • TR-064 4.2.1 Anruferansage (optional Telegram/EMAIL-extra Blockly im zweiten Beitrag)

    SmartGeräte für den iot Adapter werden direkt im Blockly erstellt, das sind dann die Button für die spätere Routine in der Amazon App.
    Das Blockly legt die benötigten Datenpunkte wahlweise unter 0_userdata.0 oder javascript.x selbst an (x=Javascript Instanznummer). Für die Erstellung der Datenpunkte nutze ich das Script von @Mic in einer Funktion. Dafür muß die Option "Erlaube das Kommando "setObject" im Javascript Adapter erlaubt sein.

    Bildschirmfoto 2020-04-08 um 12.05.38.png

    Der Versand aller Nachrichten (Telegram oder EMAIL) ist immer schaltbar, z.B. wenn man eine Anwesenheitsfunktion hat, dann könnte man den Versand bei Abwesenheit "scharf" schalten.
    Die Button hingegen funktionieren immer. Hier könnte man jeweils eine Routine in der Alexa App anlegen und den Versand des Gerätestatus-Versand auslösen.
    Z.B.
    Alexa, schicke mir den Fensterstatus.
    Alexa, schicke mir den Lichtstatus
    Alexa, schicke mir den Steckdosenstatus usw...

    Über diesen Weg lasse ich mir auch zum Beispiel auf Anforderung den Batteriestatus aller meiner Geräte mit Batterien als Liste schicken. Oder auch, Alexa schicke mir ein Bild von der Eingangskamera. Wenn man es auf die Spitze treibt, dann geht auch: Alexa, schicke mir den kompletten Status und dann trudeln bei mir nacheinander Bilder von drei Kameras, alle Batteriezustände, eine Liste mit geöffneten/gekippten Fenstern, ein Liste mit eingeschalteten Lampen usw. usw. usw. ein.

    Wenn Ihr nun Lust auf das Blockly habt, dann ist jetzt einmalig etwas Fleißarbeit angesagt. Bevor Ihr das Blockly nutzen könnt, müssen die Alias für Eure Geräte, die Ihr im Blockly verwenden wollt, erstellt werden. Dafür eignet sich die Scriptvorlage von @CruziX hervorragend. Mit dieser Vorlage können alle Alias auf einmal erstellt werden. Eine Vorlage als Beispiel findet Ihr im Spoiler. An dieser Stelle sei gleich gesagt, sinnvolle Namen im Alias zu verwenden (id ist egal, nur der Name ist gemeint), da diese Namen dann für alles im Blockly verwendet werden, also alle Gerätenamen allgemein. Also immer so erstellen, das sich der Name auch z.B. für Alexa aussprechen lässt.
    In der id keine Leerzeichen/Sonderzeichen oder Umlaute verwenden, damit vermeidet man direkt im Vorfeld mögliche Fehler.
    Als erstes solltet ihr in den Aufzählungen neue Funktionen erstellen, diese kann man dann gleich im alias Script benutzen. Da auf das Plus drücken.
    Bildschirmfoto 2020-06-29 um 21.16.04.png
    dann auf das Plus bei neue benutzerdefinierte Gruppe klicken
    Bildschirmfoto 2020-06-29 um 21.16.19.png

    Ich habe folgende erstellt (wenn Ihr die gleichen nehmt müsst Ihr das nichtmal im Blockly umstellen)

    batterien_voll_leer_alias
    batterien_volt_alias
    bewegungsmelder_alias
    fenster_alias
    licht_alias
    steckdosen_alias
    temperaturen_alias
    tueren_alias
    batterien_prozent_alias

    Das sind die Selektoren im Blockly

    Bildschirmfoto 2020-12-19 um 09.07.55.png
    Bildschirmfoto 2020-12-19 um 09.08.22.png
    Bildschirmfoto 2020-12-19 um 09.08.51.png
    Bildschirmfoto 2020-12-19 um 09.09.21.png
    Bildschirmfoto 2020-12-19 um 09.09.59.png
    Bildschirmfoto 2020-12-19 um 09.10.34.png
    Bildschirmfoto 2020-12-19 um 09.11.17.png
    Bildschirmfoto 2020-12-19 um 09.12.00.png
    Bildschirmfoto 2020-12-19 um 09.12.32.png

    Das ganze sieht dann nach dem Blockly Start in den Objekten z.B. so aus: (wenn alle Schalter im Blockly auf wahr stehen)

    Bildschirmfoto 2020-12-02 um 19.33.40.png

    01_Anzeigen_und_Listen

    Bildschirmfoto 2020-12-02 um 19.43.57.png

    02_Trigger_und_Schalter

    Bildschirmfoto 2020-12-02 um 19.44.12.png

    03_HTML_Daten hat zwei Unterordner

    Bildschirmfoto 2020-12-02 um 19.44.31.png

    01_HTML_Hell_Dunkel_Festeinstellung ist nicht veränderbar und sieht so aus (helle Einstellung aktiv)

    Bildschirmfoto 2020-12-02 um 19.45.09.png

    03_HTML_Eigene_Einstellung enthält die gleichen Datenpunkte und wird beim ersten verwenden des Triggers mit Standardwerten befüllt. Diese Werte können dann mit eigenen Werten überschrieben werden.

    Und hier noch der Rest

    Bildschirmfoto 2020-12-02 um 19.45.42.png

    Die Bilder bzw. Icon links und rechts habe ich als Base64 eingefügt. Ich benutze dafür das hier: https://www.base64-image.de/

    Wenn iQontrol installiert ist, dann funktioniert auch der Pfad zu einem Icon (einfach den eingestellten Pfad zum Icon aus iQontrol kopieren und einfügen)
    In den eigenen 02_HTML_Eigene_Einstellungen kann alles selbst an die eigenen Wünsche angepasst werden.

    Hier noch ein kurzes GiF
    (klick auf das linke Icon schaltet die Farbeinstellungen durch. klick auf das rechte Icon blendet die Tabelle ein und aus bzw. schaltet auf aktiv/inaktiv)
    20201202_200704.gif



  • Forum Testing Most Active

    Hier noch ein zusätzliches Blockly zur Anrufer Ansage (optional Telegram oder E-Mail Benachrichtigung)
    Die Ansage sowie der Nachrichten Versand sind an/aus schaltbar. Die Ansage kann auf zwei verschiedenen ECHOS wiedergegeben werden.

    Bildschirmfoto 2020-12-19 um 10.14.41.png

    verwendete Adapter

    • Javascript Adapter 4.10.8
    • Alexa2 Adapter 3.4.0
    • TR-064 4.2.1
    • Telegram Adapter 1.5.9 (optional)
    • E-Mail Adapter 1.0.7 (optional)

    Je nach Installationsort (bei mir unter 0_userdata.0) sieht es dann so aus.

    Bildschirmfoto 2020-12-19 um 10.30.24.png

    Ich habe auch die Schalter in iQontrol bei mir eingefügt

    Bildschirmfoto 2020-12-19 um 10.31.18.png


  • Auch nicht schlecht, wobei mich es mehr interessiert, wie Du es bei iQontrol fertig gebracht hast mehrere Geräte unter einer Überschrift zu erstellen.
    Wenn ich ne Überschrift für ein Gerät festlege, wird trotzdem jedes Gerät in einer extra Zeile gelistet:
    ee9ad07e-b25c-47e4-ac42-c6f5840644a1-grafik.png


  • @Jan1 überschrift bei zweiter küche einfach weglassen


  • @liv-in-sky
    super, das war die einzige Kombination, die ich noch nicht getestet hatte ☺

  • Forum Testing Most Active


  • @dslraser
    ja so gehts, @liv-in-sky war ein Tick schneller
    Ich kannte den Adapter überhaupt nicht und da ich auch kein VIS verwende, da mir etwas zu aufgebläht und nicht immer einfach zu verstehen, hatte ich genau nach so was gesucht👍


  • @Jan1
    @dslraser
    ich wußte, es kommt auf jede sekunde an, deshalb habe ich das bild weggelassen 😉 🙂

    @dslraser - super beschreibung deines projektes


  • @dslraser Wie kann ich dein Skript wie in den Beispiel WAVs auf mehrere Temp-Sensoren erweitern? Gibt es da ein Bsp von Dir?
    Danke für Deine Super Arbeit

  • Forum Testing Most Active

    @Bibo-13
    Edit: erster Beitrag geändert


  • @dslraser Ok Danke. Ich dachte das wäre alles in einem Blockly abgehandelt. Das ist aber auch soi gut. Danke!

  • Forum Testing Most Active

    @Bibo-13
    das kannst Du auch in einem Blockly machen. Dann mußt Du halt den "Umrechnungsteil" (Punkt/Komma), wenn Du es benötigst, mehrfach in einem Blockly anlegen. (hatte ich auch mal so)

  • Forum Testing Most Active

    @Bibo-13
    ich habe gerade gesehen, das ich den Teil für die "Ansage" in meinem aktuellen Blocklys noch mal geändert habe. (sind dann deutlich weniger Bausteine) Wenn ich nächste Woche wieder da bin und Zeit habe, dann stelle ich nochmal das aktuelle Blockly hier rein.


  • @dslraser Danke suuuper

  • Forum Testing Most Active

    @Bibo-13
    das aktuelle Blockly ist im ersten Beitrag.


  • @dslraser Herzlichen Dank

  • Forum Testing Most Active

    Hallo Zusammen,
    ich habe das Blockly im ersten Beitrag aktualisiert. Es ist jetzt "universeller" und deutlich einfacher und kürzer.
    Es muß für verschiedene Ansagen nur dieser Teil angepasst werden. Fast der gesamte Rest vom Blockly bleibt dann so für weitere Ansagen.

    Bildschirmfoto 2019-10-31 um 10.55.14.png

    Wenn man das Blockly für andere Ansagen kopiert, dann diesen Teil oben und den Trigger für die Routine anpassen, also hier einen weiteren Button für diese Ansage erstellen.
    also da drinn (ganz rechts auf </> . klicken)

    Bildschirmfoto 2019-10-31 um 11.17.21.png

    ganz unten (der Rest bleibt so)

    Bildschirmfoto 2019-10-31 um 11.17.42.png

    Dann den veränderten Trigger hier verwenden

    Bildschirmfoto 2019-10-31 um 11.25.39.png

    Danach wie gehabt (iot einmal öffnen/ anschließend neue Geräte in der Amazon App suchen lassen und eine weitere Routine für diese Abfrage erstellen)

  • Forum Testing Most Active

    ich habe den ersten Beitrag ergänzt/geändert. Ich habe einzelne Blockly Exporte erstellt und eingefügt.

    Ansage am angesprochenen ECHO
    Ansage auf bestimmten ECHO
    Ansage auf Multiroom-Musikgruppe

    Alle Varianten funktionieren über ssml Ansagen.
    In allen Varianten ist die gewünschte Ansage-Lautstärke einstellbar.


  • Hi!
    Ich wollte mal DANKE sagen für das tolle Script.
    Hat mir den Einstieg in Blockly wirklich erleichtert.
    Meine Alexas sagen mir nun detailiert die Wetterwerte meiner privaten Wetterstation. Hab das Script noch erweitert und funktioniert tadellos!

    LG
    linux150


  • Alternativ könnte auch die Routine selber als Trigger verwendet werden.
    Dadurch hat man nicht so viele Geräte in der Alexa app, aber natürlich mehr aufwand durch die Erstellung der Routinen

Suggested Topics

  • 85
  • 3
  • 2
  • 3
  • 20
  • 1
  • 22
  • 13

998
Online

37.0k
Users

42.7k
Topics

593.4k
Posts