Amazon Echo Control Binding

  • ahhhhh jetzt wird’s hell ! Persistence !! DB und Grafana etc pp! Man man wo war ich grad mim Kopp! Ja das will ich definitiv umsetzen ! Aber wenn ich jetzt die db am Start hätte (noch keine Zeit gehabt bisher) was müsst ich dann umbauen? Oder ist alles schon correct mit persistence nur es fehlt eben noch die DB ? Muss mich damit erst noch beschäftigen ;)

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • um es vorwegzunehmen...
    dein persistence file könnte dann bspw so aussehen:

    Code
    Strategies {
    	everyMinute : "0 * * * * ?"
    	everyhour   : "0 0 0/1 1/1 * ? *"
    }
    
    
    Items {
    	Amazon_Echos*, Lampen*, Heizung, Steckdosen* : strategy =  restoreOnStartup, everyChange, everyhour
    }

    bei items trägst du deine gruppen kommagetrennt ein. mit * heisst, es wird der status aller in der gruppe enthaltenen items gespeichert, ohne * heisst es wird der status der gruppe selbst gespeichert.
    der rest in der datei sollte selbsterklärend sein.

  • ok öhm also hab noch keine DB anbindung oder InfluxDB installiert - aktuell sieht die persistance datei so aus :

    echo.persist


    Code
    Items {
    
    
    Amazon_Echos* : strategy = restoreOnStartup, everyChange
    }

    Tut die nun schon irgendwas (wohl nicht sonst würde es ja schon gehen) oder brauche ich nun zwingend die DB.

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • Verstanden - was bedeuten die "Strategies" ?

    Hab deine mal übernommen und DB verbindung hergestellt zu meiner MariaDB.

    Sonst noch was ?

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • Also DB Verbindung steht und die Strategie hab ich mal von deinem Post übernommen- nur konnte ich es heute morgen noch nicht testen :) mal sehen ob es klappt wenn ich von der Arbeit komme :)

    Der Tail Container hat mir hier super geholfen von dem bin ich immer noch begeistert :) hab sofort gesehen das der Connect steht ohne großes suchen :)

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • Also DB Verbindung steht und die Strategie hab ich mal von deinem Post übernommen- nur konnte ich es heute morgen noch nicht testen mal sehen ob es klappt wenn ich von der Arbeit komme

    wenn du alle sachen korrekt konfiguriert hast benötigt es nur gruppen in der items datei und gruppen im persistence file. der rest passiert quasi von allein....wirklich sehr simpel.
    durch persistence ergeben sich dann natürlich noch viel mehr möglichkeiten. du kannst jeden historischen status abfragen und verarbeiten.

    Der Tail Container hat mir hier super geholfen von dem bin ich immer noch begeistert hab sofort gesehen das der Connect steht ohne großes suchen

    ich nutze frontail schon seit es openhabian gibt 8) . ist ein bissl komfortabler als das [definition='1','0']log[/definition] via konsole zu beobachten

    ich hab aber gerade einen fehler bei dir entdeckt @xSaSx. der name der persistence datei muss <persistenceservice>.persist sein.
    in deinem fall also NICHT wie du es gerade hast echo.persist sondern jdbc.persist
    siehe https://www.openhab.org/docs/configura…e-configuration

  • Die Grupper besteht ja ist ja "Amazon_Echos"

    Ok Name der persist hab ich geändert. Wenn das tut will ich auf jeden Fall meine ganzen Heizungen mit auf nehmen damit ich mir das Darstellen lassen kan.

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • ok tut noch nicht - alle Fenster wurden nach reboot nochma betätigt und haben alle einen Status leider steht bei frage ob sie noch offen sind das in der [definition='1','0']log[/definition]:

    Code
    2020-03-02 20:36:58.553 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Alexa - Fenster offen': null
    ==> /logs/events.[definition='1','0']log[/definition] <==
    2020-03-02 20:36:58.485 [vent.ItemStateChangedEvent] - Echo_Kitchen_LastVoiceCommand changed from alexa to sind noch fenster offen

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • rule:


    items:

    Code
    //Gruppen
    Group Amazon_Echos "Amazon Echos"
    Group:Contact:OR(OPEN,CLOSED) Fenster      "Fenster [MAP(max.map):%s]"         <window>
    String Echo_Kitchen_LastVoiceCommand    "Letztes Sprachkommando"    (Amazon_Echos)   {channel="amazonechocontrol:echo:2117a83a:G090UXXXXXX82:lastVoiceCommand"}
    String Echo_Kitchen_TTS                 "Sprachausgabe"            {channel="amazonechocontrol:echo:2117a83a:G090UXXXXX32P82:textToSpeech"}
    String WZ_Echo_Show5_LastVoiceCommand    "Letztes Sprachkommando"    (Amazon_Echos)    {channel="amazonechocontrol:echoshow:2117a83a:G0911XXXXXX08K:lastVoiceCommand"}
    String WZ_Echo_Show5_TTS                 "Sprachausgabe"      {channel="amazonechocontrol:echoshow:2117a83a:G09XXXXXX008K:textToSpeech"}

    persist:

    Code
    Strategies {
        everyMinute : "0 * * * * ?"
        everyhour   : "0 0 0/1 1/1 * ? *"
    }
    Items {
    Amazon_Echos* : strategy = restoreOnStartup, everyChange
    }

    [definition='1','0']log[/definition] wenn ich die frage stell:


    Code
    2020-03-02 20:36:58.553 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Alexa - Fenster offen': null
    ==> /logs/events.[definition='1','0']log[/definition] <==
    2020-03-02 20:36:58.485 [vent.ItemStateChangedEvent] - Echo_Kitchen_LastVoiceCommand changed from alexa to sind noch fenster offen

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

  • Die Fenster sind in verschiedenen Item Dateien (je nach Hersteller des Sensors) um was gehts dir da dabei ? Dann reich ich es später nach.

    Oder meinst du das die Fenstergrupper dann auch in in persist muss =?

    Ging ja vor der DB Anbindung genau so


    window.map:

    Code
    CLOSED=geschlossen
    OPEN=offen
     
    //
    NULL=unbekannt ⁉
    UNDEF=unbekannt ⁉
    -=unbekannt ⁉


    fenster sehen alle so aus:


    Code
    // Door Window Sensor WC
     
    Contact Fenster_WC "WC Fenster [MAP(window.map):%s]" <window> (Fenster) { channel="mihome:sensor_magnet_aq2:158xxxx3120f89:isOpen" }

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

    2 Mal editiert, zuletzt von xSaSx (3. März 2020 um 10:20)

  • der inhalt der beiden maps ist gleich - kann eine sofort rausnehmen :D hab nur ein max fenster contact .

    gehts dir im speziellen dann um das:

    Code
    //Gruppen
    Group Amazon_Echos "Amazon Echos"
    Group:Contact:OR(OPEN,CLOSED) Fenster      "Fenster [MAP(max.map):%s]"         <window>
    String Echo_Kitchen_LastVoiceCommand    "Letztes Sprachkommando"    (Amazon_Echos)   {channel="amazonechocontrol:echo:2117a83a:G090UXXXXXX82:lastVoiceCommand"}
    String Echo_Kitchen_TTS                 "Sprachausgabe"            {channel="amazonechocontrol:echo:2117a83a:G090UXXXXX32P82:textToSpeech"}
    String WZ_Echo_Show5_LastVoiceCommand    "Letztes Sprachkommando"    (Amazon_Echos)    {channel="amazonechocontrol:echoshow:2117a83a:G0911XXXXXX08K:lastVoiceCommand"}
    String WZ_Echo_Show5_TTS                 "Sprachausgabe"      {channel="amazonechocontrol:echoshow:2117a83a:G09XXXXXX008K:textToSpeech"}
    persist:

    weil dann änder ich alles auf windows.map anstatt max.map aber wie gesagt der Inhalt der beiden maps ist gleich

    Support ME ! Buy me a Coffee :thumbup:


    Dont Touch ME

    LivingRoom: SilverStone Milo ML03 | Gigabyte B450 | Ryzen 3400G | 250GB NVME | 16GB DDR4-3200| Win10 64 bit | KODI 18 | Logitech Harmony Elite | SONOS Playbar + SUB
    BedRoom: PLAY:3
    Kitchen: PLAY:3
    BathRoom: Play:3

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!