Spannungswerte per Alexa abfragen - und am Echo Ausgeben lassen

  • Hallo Gemeinde


    Ich habe mir mittels eines ESP eine LED Kerze Smart gemacht.

    Der ESP der mit Tasmota geflasht worden ist, schaltet ein kleines 3V Relais das dann die Kerze einschaltet.

    Nun möchte ich gerne den Status der Beriebsspannung auf Nachfrage an Alexa per Alexa ausgeben.

    Z.B. Ich Frage Alexa "Alexa, wie hoch ist die Betreibsspannung in Kerze eins" und Alexa sollte dann sagen

    "Die Betreibsspannung in Kerze eins beträgt 2,85 Volt"


    Nun bin ich im Blockly Skript Schreiben nicht so der der das auf anhieb versteht.

    Ich habe schon ein paar Videos gesehen wo ich den Status abfragen kann ob z,B. eine Lampe an oder aus ist. Aber irgenwie kann ich das nich so auf mein Projekt unschreiben.


    Ich hab den Text Komandos Adapter und den ioT Adapter installiert und auch eine Verknüpfung mit dem Alexa Skill ioBroker.iot und den Costum ioBroker Skill schon gemacht.


    Ich bekommen das mit den Datenpunkten nicht hin

    Ich habe auch versucht mir eine Email zu schicken wenn die Betriebsspannung einen Wert X erreicht hat.

    DerTest der Mail hat geklappt nur wenn der Wert erreicht ist bekomme ich keine Email

  • Ich verstehe das jetzt so, dass du schon den Wert von der Batterie bekommst und in den ioBroker geschrieben wird.


    Mein Briefkasten habe/will ich mit einem Tür/Fensterkontakt ausrüsten, damit ich eine Nachricht bekomme, wenn jemand am Briefkasten ist. Das ist natürlich schlecht, wenn irgendwann die Batterie leer ist und ich mir wundere, warum es keine Nachricht mehr gibt.

    Vielleicht ist dir das hier eine Hilfe und kannst es für dich abändern. Die Werte der Betterie werden in % angegeben. Also habe ich angegeben, das ich eine Mitteilung über Telegram bekomme, wenn die Batterie unter 10% ist. Das wäre jetzt der Messenger weg.



    Eine Ansage von Alexa ist eigentlich auch nicht schwer. Mein erster Gedanke, wie ich das umsetzen würde:

    Ich würde eine Datei in Objekte anlegen, für ein true und false Eintrag.

    Dann lege ich ein Gerät im Cloud Adapter an, markiere es als switch und nenne es Batterie Ansage.

    Jetzt lasse ich Alexa nach neue Geräte suchen und das "Gerät" Batterie Ansage wurde gefunden. Somit kann Alexa den Eintrag in true/an und false/aus schalten, was so noch nichts bringt.


    Nun geht es mit Blockly weiter. Kann man dem Bild entnehmen.


    Jetzt stellen wir in der Alexa App noch eine Routine ein.

    Als Beispiel.

    Wenn ich sage: Wie ist der Batterie Status von der Kerze?

    Soll Alexa die Datei in den Objekten true/an schalten.


    So müsste das Blockly Skript aktiviert werden, Alexa sagt den Wert an und stellt die Datei wieder auf false/aus.

    Das wäre auf der schnelle jetzt mein Gedanke. Ich habe es etwas eilig bin heute Abend wieder da, wo ich mich damit mehr beschäftigen könnte. Vielleicht hilft dir das ja schon mal weiter.

    Smart Home Zentrale: Gigabyte BRIX mit ioBroker und Pi-Hole Betrieb.

    Komplette Lichtsteuerung per Shelly (Tasmota), Zigbee Lampensteuerung per CC2531 Stick, TV und PS4 Steuerung mit Sprache, Briefkasten Einwurferkennung und Haustür Klingelsensor mit Benachrichtigung aufs Handy sowie viele weitere Spielereien.

    Nächste Projekte: Smarter Spiegel (Smart Mirror) Eigenbau. Eine komplett eigene neue Sprachsteuerung (Hallo Jarvis :love:).

    Einmal editiert, zuletzt von Tieberius ()

  • Ach ja, der Dateianhang geht ja auch. :D

    Habe ich geändert und die Bilder müssten jetzt zu sehen sein.

    Smart Home Zentrale: Gigabyte BRIX mit ioBroker und Pi-Hole Betrieb.

    Komplette Lichtsteuerung per Shelly (Tasmota), Zigbee Lampensteuerung per CC2531 Stick, TV und PS4 Steuerung mit Sprache, Briefkasten Einwurferkennung und Haustür Klingelsensor mit Benachrichtigung aufs Handy sowie viele weitere Spielereien.

    Nächste Projekte: Smarter Spiegel (Smart Mirror) Eigenbau. Eine komplett eigene neue Sprachsteuerung (Hallo Jarvis :love:).

  • Danke

    Hat geklappt

    Hier mal meine Lösung für die Sprachausgabe

    Habe einen Datenpunkt "Betriebsspannung" erstellt (Wie hier aus dem Video von Elzershark das mit den virtuellen Geräten)

    Dann dieses Blockly erstellt, was ich aus einem anderen Forum habe und auf mein Projekt angepasst habe

    das Virtuelle Gerät in die Cloud engepflegt und dann eine Routiene erstellt woch dan Sage "Alexa, wie ist der Status von Kerze1"

    Und Alexa sagt dann "Die Betiebsspannung von Kerze 1 beträgt aktuell 2,532 Volt"


    Und Telegramm funtioniert auch mit dem Script von Tiberius

    Danke


  • Ist super, das es jetzt klappt.

    Ein Punkt gibt mir aber zu denken. Das Blockly Skript auf dem Bild hat Ähnlichkeit mit dem von oben.

    Ich bin mir jetzt nicht sicher, aber ich glaube du müsstest noch die false Angabe eintragen, wie ich das gezeigt habe.

    Jetzt hast du den Wert Batteriespannung immer auf true.

    Du fragst "Alexa, wie ist....." und das Skript wird mit true eingeschaltet und gestartet. Immer bekommt Alexa jetzt den Befehl true, true, true also an, an, an. Du musst aber auch false setzen. Wenn Alexa das Skript anschaltet (true) und gesagt hat, wie die Spannung ist, muss der Datenpunkt wieder auf false gesetzt werden. Jetzt wird es nie auf false gesetzt, was auch folgendes Problem geben kann.

    Ich gehe davon aus, das Du ein Raspberry hast und der wegen fast vollem RAM (Arbeitsspeicher) hin und wieder mal neu gestartet wird. Nach einem Neustart sieht das Skript.... "Ahhhh, da ist was eingeschaltet (true) also hauen wir mal die Meldung raus. Alexa sagt dir dann die Spannung und du bekommst noch die Meldung per Telegram.

    Sehr uncool, wenn der Raspberry warum auch immer mal in der Nacht neu startet und Alexa oder Telegram mir meine erotischen Träume in der Nacht versauen......

    Also setz am besten noch an das Skript ran, das nach der Ansage der Datenpunkt auf false gesetzt wird.

    Ich hatte mit einem Raspberry 3 B+ angefangen und der Arbeitsspeicher war sehr schnell voll. Darum habe ich den jede Nacht um 5 Uhr neu starten lassen. Irgendwann war mir das zu blöd und habe mir ein Beelink BT3 Pro geholt, der mit 4 GB Arbeitsspeichel mehr als genug hat. So sind jetzt etwa 1,5 GB Arbeitsspeicher belegt und ich muss den auch nicht jeden Tag neu starten. Einmal die Woche startet das ding jetzt neu UND das praktische ist..... Ich habe noch Reserven auf dem Gerät und Pi Hole mit installiert. Der Beelink filtert jetzt zuhause bei ALLEN Geräten (PC, Laptop, Handy, Tablet und wenn mal Besuch da ist auf den Geräten) die Werbung aus dem Internet (ähnlich wie AdBlocker). Somit muss die Kiste auch stabil laufen. Sagen wir mal genau JETZT würde mein Arbeitstier neu starten, würde ich in den nächsten 2 Minuten eine Telegram Mitteilung bekommen, das die Hupe neu gestartet wurde. Wenn das jetzt bei dir passiert, meldet sich Alexa mit der Batteriespannung und Telegram.

    Ich habe das jetzt etwas umständlich beschrieben, aber ich denke man versteht, wo das Problem ist.

    Setz einfach noch den false Befehl dahinter. Zur Not guck nochmal auf das letzte Bild von mir.

    Smart Home Zentrale: Gigabyte BRIX mit ioBroker und Pi-Hole Betrieb.

    Komplette Lichtsteuerung per Shelly (Tasmota), Zigbee Lampensteuerung per CC2531 Stick, TV und PS4 Steuerung mit Sprache, Briefkasten Einwurferkennung und Haustür Klingelsensor mit Benachrichtigung aufs Handy sowie viele weitere Spielereien.

    Nächste Projekte: Smarter Spiegel (Smart Mirror) Eigenbau. Eine komplett eigene neue Sprachsteuerung (Hallo Jarvis :love:).

  • Ah Ok

    Da hast Du recht ich hatte das ausprobiert und bei jeder Frage wurde das Objekt auf true gesetzt und es blieb auf true.

    Ich konnte aber immer wieder antriggern und der Befehl wurde auch immer ausgeführt.

    Aber na klar wenn mann das so betrachtet ist immer true

    Hier anbei mal mein fertiges Script.

    Habe das noch einmal angepasst.

    So langsam komme ich auch in Blockly rein

    Danke noch einmal


  • Das der Wert auf true bleibt ist klar, aber startet der Raspberry neu, sieht er..... "Ahhh, alles true" ....."Alexa da ist was true, mach mal Ansage" und du bekommst alle Werte von Alexa um die Ohren gehauen.

    Darum ist es sinnvoll den false Wert mit zu setzen und es ist Ruhe. :)


    Du fragst Alexa nach einer Kerze und sie sagt dir nur den Wert oder sagt sie dir alle Werte nacheinander an?

    Smart Home Zentrale: Gigabyte BRIX mit ioBroker und Pi-Hole Betrieb.

    Komplette Lichtsteuerung per Shelly (Tasmota), Zigbee Lampensteuerung per CC2531 Stick, TV und PS4 Steuerung mit Sprache, Briefkasten Einwurferkennung und Haustür Klingelsensor mit Benachrichtigung aufs Handy sowie viele weitere Spielereien.

    Nächste Projekte: Smarter Spiegel (Smart Mirror) Eigenbau. Eine komplett eigene neue Sprachsteuerung (Hallo Jarvis :love:).

    Einmal editiert, zuletzt von Tieberius () aus folgendem Grund: Hier soll ein Bearbeitungsgrund stehen. Weil genug Platz ist und ich jetzt viel Zeit und Langeweile habe, schreibe ich mal einen dummen Text rein. Welchen Bearbeitungsgrund sollte das wohl sonst haben. :D

  • Danke dir, aber ich denke ich hänge gerade fest :)

    Ich habe 5 Echo dots verteilt und ich möchte nur dort eine Antwort bekommen, an welcher ich frage. Ich frage Werte ab, welche in iobroker liegen.


    Das funktioniert auch in der Ausgabe, nur eben nicht beschränkt auf den echo, an welchem ich die Frage stelle bzw. die Routine auslöse. Die Routine setzt das "Hausspeicher + PV - Status" auf True.