Ankündigung

Einklappen
Keine Ankündigung bisher.

Alexa Smarthome Skill (Payload Version 3)

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

    IP und Port in der Config und im LBS richtig konfiguriert?
    Fehler im Log?
    Die LBS 1201 und 1200 kommunizieren auch über MessageQueues, welche ja offensichtlich in deinem Telegram LBS auch Probleme machen. Wenn dies hier auch der Fall ist, dann wären damit der Fehler (Rückmeldung) erklärbar.
    Ich habe allerdings keine Ahnung warum die Message Queues Probleme machen.

    Kommentar


      Hi
      Config und LBS kommunizieren ja. Beides selbe IP (beide laufen auf 192.168.0.11, Port 8000, TCP - im LBS 192.168.0.11, Port 8000
      Siehe da: im Log finde ich was: LBS19001200.log =>
      Code:
      2019-12-16 22:14:14 821638 22393 debug  EXE19001200 [v0.7]: ================ ARRAY/OBJECT  END  ================
      
      2019-12-16 22:14:14 822870 22393 debug  EXE19001200 [v0.7]: Sending message to Alexa SmartHome Devices
      
      2019-12-16 22:14:14 834688 22393 debug  EXE19001200 [v0.7]: File: /usr/local/edomi/www/data/liveproject/lbs/EXE19001200.php | Error: 2 | Line: 132 | msg_get_queue(): failed for key 0x305a0877: No space left on device
      
      2019-12-16 22:14:14 835964 22393 debug  EXE19001200 [v0.7]: Created message queue with ID 811206775
      
      2019-12-16 22:14:14 837431 22393 debug  EXE19001200 [v0.7]: File: /usr/local/edomi/www/data/liveproject/lbs/EXE19001200.php | Error: 2 | Line: 154 | msg_remove_queue() expects parameter 1 to be resource, boolean given
      
      …(viele Wiederholungen…)
      
      2019-12-16 22:14:17 837431 22393 debug  EXE19001200 [v0.7]: File: /usr/local/edomi/www/data/liveproject/lbs/EXE19001200.php | Error: 2 | Line: 154 | msg_remove_queue() expects parameter 1 to be resource, boolean given
      
      2019-12-16 22:14:17 838644 22393 debug  EXE19001200 [v0.7]: 3s response timer expired
      Sieht mir fast so aus wie mein Problem mit dem Telegram-Baustein...
      Sagt dir das was?
      Gruß Thorsten


      PS:
      Wo ich meinen Post gerade lese:
      msg_get_queue(): failed for key 0x305a0877: No space left on device

      Das ist komisch...
      Code:
      [root@edomi /]# df -h
      
      Filesystem                    Size  Used Avail Use% Mounted on
      
      /dev/mapper/vg_edomi-lv_root   50G  8.4G   39G  18% /
      
      tmpfs                         1.9G     0  1.9G   0% /dev/shm
      
      /dev/sda1                     485M   32M  428M   7% /boot
      
      /dev/mapper/vg_edomi-lv_home   57G  180M   54G   1% /home
      
      /dev/sdb1                      30G  533M   28G   2% /mnt/usb
      Woher kommt der "no space left on device" ?

      Gruß
      Thorsten

      Nachtrag 2:
      Nach einem Reboot hat sich das Problem gelöst.
      Die Frage ist nur: was war das? War das ein "out of memory" wegen eines voll-laufenden Speichers?
      Ich bin verwirrt - von einem Linux kenne ich das eher nicht....

      Zuletzt geändert von ThorstenGehrig; 16.12.2019, 22:42.

      Kommentar


        Auf was stehen den die Eingänge E5 und E6, vor allem bei den Bausteinen mit "Last Echo Device" dahinter? Beide auf 0 oder nicht?
        Da sind bestimmt keine Status KOs auf E30 - E49.

        Gruß
        Lapheus

        Kommentar



          Problem hat sich gelöst (siehe nachtrag 2 vom letzen Post).
          E5 und E6 sind beide auf 1.
          Status KO ist auch auf E30.
          Das Problem war wohl irgendwie "anders" - Speicher-Loch oder sowas...
          Normale EDOMI Neustarts hatten nicht gereicht - der Server-Reboot hat den Unterschied gebracht.
          Bein Telegram geht auch wieder...

          Kommentar


            In Post #662 sieht man, dass deine Platte voll ist. Rootfilesystem: Use 100%

            Kommentar


              Zitat von jonofe Beitrag anzeigen
              In Post #662 sieht man, dass deine Platte voll ist. Rootfilesystem: Use 100%
              Ich hab jetzt drei mal geschaut, ich sehe das in dem Post nicht.
              Gruß
              Lapheus

              Kommentar


                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.

                Kommentar


                  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

                  Kommentar


                    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

                    Kommentar


                      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.

                      Kommentar


                        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

                        Kommentar


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

                          Kommentar



                            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

                            Kommentar


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

                              Kommentar


                                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

                                Kommentar

                                Lädt...
                                X