Ankündigung

Einklappen

Sammelbestellung ETS6 Vollversionen aktiv!

Sammelbestellung für ETS6 Vollversionen (Prof., Home, Lite) mit 40% Rabatt aktiv! Infos im Forum!
Mehr anzeigen
Weniger anzeigen

Alexa Smarthome Skill (Payload Version 3)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • panzaeron
    antwortet
    Zitat von philipp900 Beitrag anzeigen
    Wie handhabt ihr die unterschiedliche Skalierung zwischen KNX (0-255) und Alexa (0-100%).
    Vielleicht könnte man die Skalierung auch in den LBS (als Parameter) integrieren.
    Ich verwende für diesen Fall den LBS % -> Byte 19001840 und bei Byte -> % 19001841.

    Einen Kommentar schreiben:


  • philipp900
    antwortet
    Danke jonofe für deinen Einsatz diesen komplexen LBS zu erstellen. Danke auch an panzaeron für die ausführliche Anleitung.
    Bis auf Problem das meiner spezifischen Hardware geschuldet war, lief die Einrichtung problemlos.

    Wie handhabt ihr die unterschiedliche Skalierung zwischen KNX (0-255) und Alexa (0-100%).
    Vielleicht könnte man die Skalierung auch in den LBS (als Parameter) integrieren.

    Muss eigentlich im lbs_exec wirklich in einer Schleife dauerhaft gepollt werden?
    Könnte man die Logik nicht ereignisbasiert triggern, immer wenn "edomi-smarthome-skill-PLv3.php" von extern aufgerufen wurd.
    Oder die logic vom exec gleich in diese php Datei verschieben?

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von philipp900 Beitrag anzeigen
    Ich habe gerade was in der Dokumentation von Amazon gefunden: Alexa, raise the bedroom blinds.
    https://developer.amazon.com/de-DE/d...ontroller.html
    Es müsste also prinzipiell möglich sein EIN/AUS auf HOCH/RUNTER zu mappen.
    Damit habe ich heute angefangen. Ich hoffe, dass ich morgen erfolgreich RangeController discovern kann. Ist aber mit Abstand das komplexeste Alexa Device, daher wird die Implementierung nicht generisch sein, sondern zunächst speziell für Rolläden, d.h. hoch/runter, 0-100%. Ich denke im Laufe der nächsten zwei Wochen wird da bestimmt was funktionierendes bei herauskommen.

    Was ich übrigens auch erfolgreich getestet habe, ist der CameraStreamController, um z.B. Hikvision Kameras auf dem Echo Show oder Spot anzuzeigen. Allerdings sind hierzu die Tools Live555 als Proxy und stunnel als TLS1.2 Tunnel notwendig. Die Verzögerung von ca. 10 Sekunden zum Livestream ist allerdings nicht ganz so prickelnd, ist aber vermutlich die Komplexität geschuldet (Kamera=>Proxy=>stunnel=>Echo).
    Zuletzt geändert von jonofe; 23.12.2019, 00:50.

    Einen Kommentar schreiben:


  • philipp900
    antwortet
    Zitat von Guidokoeller Beitrag anzeigen
    Gibt es auch die Möglichkeit eine Jalousie zu steuern? Abgesehen über ein/aus
    Ich habe gerade was in der Dokumentation von Amazon gefunden: Alexa, raise the bedroom blinds.
    https://developer.amazon.com/de-DE/d...ontroller.html
    Es müsste also prinzipiell möglich sein EIN/AUS auf HOCH/RUNTER zu mappen.

    Einen Kommentar schreiben:


  • philipp900
    antwortet
    Falls jemand wie ich Edomi auf dem Raspberry (mit Ubuntu) laufen hat muss folgendes gemacht werden, damit die Prüfung des tokens funktioniert:
    Code:
    sudo mkdir -p /etc/pki/tls/
    sudo ln -s /etc/ssl/certs/ca-certificates.crt /etc/pki/tls/cacert.pem
    Ansonsten kann der Skill erst gar nicht aktiviert werden und im log erscheint nur "OAUTH Access Token invalid"

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von nullo83 Beitrag anzeigen
    hast du noch einen tipp oder idee woran es noch scheitern könnte?
    Der Fehler tritt auf, wenn die Aktivierung nicht erfolgreich verläuft.
    Was erscheint denn im Log des Skill Skripts?
    Sicher, dass du die aktuellste Version verwendest, die ich letzte Woche hochgeladen habe?

    Einen Kommentar schreiben:


  • nullo83
    antwortet
    hi,
    so, hab es nun ausprobiert, leider spricht die gute nicht mir mit... bekomme in edomi folgende fehlermeldung

    2019-12-22 20:09:02 787278 ? 14446 Datei: /usr/local/edomi/www/data/liveproject/lbs/LBS19001201.php | Fehlercode: 2 | Zeile: 1392 | include(/usr/local/edomi/www/admin/lbs/alexa/eventGatewayConfig.php): failed to open stream: No such file or directory ERROR
    2019-12-22 20:09:02 787393 ? 14446 Datei: /usr/local/edomi/www/data/liveproject/lbs/LBS19001201.php | Fehlercode: 2 | Zeile: 1392 | include(): Failed opening '/usr/local/edomi/www/admin/lbs/alexa/eventGatewayConfig.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') ERROR
    hab dann deinen post gefunden
    Zitat von jonofe Beitrag anzeigen
    und das selbe durchgeführt (skill deaktivieren - send alexa events aus - skill aktivieren - nach geräten suchen - send alexa event wieder an - nochmal nach geräte suchen). leider ohne erfolg. hast du noch einen tipp oder idee woran es noch scheitern könnte?

    lg
    nullo83

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Wichtig ist die Reihenfolge
    1. neue Geräte anlegen (1201 LBS)
    2. Edomi Projekt neu aktivieren
    3. Geräte Suche auf dem Echo aktivieren

    Einen Kommentar schreiben:


  • nullo83
    antwortet

    ja das hab ich mir gedacht, musste erst ein paar mal neu suchen und plötzlich wurde der "Fensterstatus" in der app angezeigt. werd mich übers wochenende damit beschäftigen.
    vielen dank jonofe

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Dort werden nur Contact und Motion Sensors angezeigt. Hast du denn solche definiert? Und auch eine neue Gerätesuche gestartet.

    Einen Kommentar schreiben:


  • nullo83
    antwortet
    okay, danke für die info.
    am wichtigsten wäre mir das mit der info zu den offenen fenstern. die logik in edomi hätte ich bereits (ich lasse das licht bereits jetzt 3x flackern)

    es werden mir allerdings in der alexa app (routine - neu - wenn folgendes passiert - smart home) keine geräte angezeigt. obwohl diese aber unter geräte sehr wohl angezeigt werden. eine idee?

    lg

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von nullo83 Beitrag anzeigen
    einerseits würde ich gerne fragen "alexa ist Licht eingeschaltet"
    Das funktioniert m.W. mit Smarthome Skills nicht. Dazu müsste man einen Custom Skill verwenden, bei dem man sich das Sprachmodell selbst entwickeln kann.

    Zitat von nullo83 Beitrag anzeigen
    andererseits hätte ich gerne, dass mich alexa aktiv warnt wenn zb die fenster länger als 10 minuten offen sind
    Das geht vermutlich nur wie oben beschrieben, über die Definition eines Contactsensors (E18=1). In EDOMI müsstest du dann deine Fenster überwachen und wenn der Öffnungszustand länger als 10 Minuten besteht eine 1 (oder 0) auf E46 (Contact State) schreiben. In der Alexa App müsstest du dann eine Routine definieren, die auf die Werte dieses Contactsensors in der Form reagiert, dass sie bei einer 1 (oder 0) eine Sprachdurchsage macht.

    Alternativ könnte man den Alexa Control LBS verwenden, der auch eine direkte Sprachausgabe unterstützt.

    Einen Kommentar schreiben:


  • nullo83
    antwortet
    Hallo,
    erstmal vielen Dank für dieses coole Feature, bin echt begeistert und bastle die ganze zeit herum.

    was ich nun gerne machen würde ist beliebigen status von alexa ausgeben lassen. sollte laut diesem post ja funktionieren wenn ich das richtig interpretiere.

    Zitat von jonofe Beitrag anzeigen
    Die neue Version 0.5 des Alexa Smarthome Skill und Alexa Smarthome Device LBS sind online.

    Durch das Erstellen von Contact Sensors oder Motion Sensors ist es nun möglich in der Alexa App Routinen zu erstellen, die durch das Triggern durch den EDOMI Smarthome Skill Sprachausgaben auf beliebigen Echo Devices machen können. Der Trigger muss dabei über die Status Eingänge Motion State (E47) für Motion Sensors oder Contact State (E46) für Contact Sensors ausgelöst werden. Damit wird ein Event an das Alexa Event Gateway gesendet, welches wiederum die Routine auslöst, welche eine Sprachausgabe startet. Wichtig ist hierfür, dass für Contact und Motion Sensors das proactive Attribut an E5 aktiviert (1) ist.

    Desweiteren sind nun auch endlich Hilfstexte für beide LBS verfügbar. Diese sollten auch einige Fragen beantworten.

    Weitere Fragen wie immer gerne hier.

    Viel Spaß damit ...
    wenn ich mir das so durchlese hab ich das gefühl als wenn ich das komplett falsch gemacht habe, hab aber leider keinen plan was ich machen muss...

    einerseits würde ich gerne fragen "alexa ist Licht eingeschaltet", andererseits hätte ich gerne, dass mich alexa aktiv warnt wenn zb die fenster länger als 10 minuten offen sind (wenn die Temp aussen <15° oder so) geht das? wenn ja was muss ich da machen? ich habe das wie folgt verbunden, bekomme aber immer die antwort: "Licht unterstützt das nicht"

    statusLicht.jpg
    Angehängte Dateien

    Einen Kommentar schreiben:


  • ThorstenGehrig
    antwortet
    Hi
    Zitat von jonofe Beitrag anzeigen
    Dann müsste der EDOMI aber recht lange nicht gebootet worden sein und vermutlich das Projekt recht oft neu gestartet worden sein.
    Also root 100% use gab es nicht (darauf habe ich selbst geachtet nachdem ich mal "no space left" gelesen hatte).
    Es muss wohl an den queues gelegen haben - und ja: warum sollte ich EDOMI booten? Ist doch ein Linux :-)
    Ich habe immer nur die Projekte neu aktualisiert... so gesehen erscheint mir deine Erklärung logisch.

    Kann man die message-queues-nutzung irgendwo ablesen/abfragen?

    Gruß
    Thorsten

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Ich sehe es jetzt auch nciht mehr, aber ich war mir sicher es heute morgen gesehen zu haben. Keine Ahnung warum. No space left on device ist eigentlich auch ne klare Aussage für Platte voll. Und ich habe zweimal geschaut auf / und 100% Use. Seltsam.

    EDIT:

    Vermutlich hab ich das heute morgen nur geträumt.
    Es gibt aber noch eine Möglichkeit warum diese Fehlermeldung erscheint.
    Ggf. ist in manchen Situationen keinen sauberes Schließen der MessageQueues gewährleistet. In Linux gibt es eine maximal Anzahl von Message Queues. Wenn diese erreicht ist, gibt es wohl auch die Meldung "No space left on device".
    Dann müsste der EDOMI aber recht lange nicht gebootet worden sein und vermutlich das Projekt recht oft neu gestartet worden sein.

    Wenn meine LBS in Zukunft auf die DB Queues von EDOMI umgestellt sind, dann sollte dies nicht mehr auftreten. Nur bei HUE und Alexa Skill wird man nicht auf Message Queues verzichten können, da hier die Kommunikation zwischen verschiedenen LBS stattfindet und nicht nur zwischen LBS und EXEC Skript eines LBS.
    Zuletzt geändert von jonofe; 17.12.2019, 13:45.

    Einen Kommentar schreiben:

Lädt...
X