LoxBerry XL - EXtended Logic

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Oki8085
    Dumb Home'r
    • 27.07.2018
    • 14

    #16
    Danke, die hatte ich schon gesehen,
    Jedoch sehen ich diesen "XL" Ordner nicht?
    Muss man die selbst anlegen?

    Ich hab LoxBerry V2.0.0.2

    Angehängte Dateien

    Kommentar

    • Christian Fenzl
      Lebende Foren Legende
      • 31.08.2015
      • 11225

      #17
      Nein!
      Du musst auf LB2.2 updaten! 😀
      Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

      Kommentar

      • dasrockt
        Extension Master
        • 01.06.2017
        • 136

        #18
        Guten Morgen bin gerade dabei und hab mir das Loxberry XL mal durchgelesen sieht ja ziemlich cool aus...
        Werd mich da weiter spielen aber sehe ich das richtig das ich zum Beispiel damit alexa2Lox die Fensterüberwachung als String bereitstelle
        und dann ausgeben kann (https://www.loxwiki.eu/display/LOXBE...+bereitstellen)
        Loxone: so ziemlich alles was es gibt
        Loxberry: Alexa<->Lox, CamStream4Lox, FHEM, MQTT Gateway, Weather4Loxone, Zigbee2Mqtt
        Other: Node-Red, IObroker, Zehnder Comfoair 350, Tasmota, usw.

        Kommentar

        • Christian Fenzl
          Lebende Foren Legende
          • 31.08.2015
          • 11225

          #19
          Richtig! Du kannst aus dem XL-Script heraus direkt den Plugin-URL aufrufen.
          Es ist nicht notwendig, die Daten erst wieder zurück zum Miniserver zu geben, um sie von dort erst recht wieder zum LoxBerry zu senden.
          Du kannst natürlich beides machen (zum Miniserver für Visu, und direkt zum Plugin für Sprachausgabe).
          Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

          Kommentar

          • dasrockt
            Extension Master
            • 01.06.2017
            • 136

            #20
            Sehr cool... Dann werd ich das testen und wie könnte ich das triggern aus der loxone am einfachsten lösen
            Loxone: so ziemlich alles was es gibt
            Loxberry: Alexa<->Lox, CamStream4Lox, FHEM, MQTT Gateway, Weather4Loxone, Zigbee2Mqtt
            Other: Node-Red, IObroker, Zehnder Comfoair 350, Tasmota, usw.

            Kommentar

            • dasrockt
              Extension Master
              • 01.06.2017
              • 136

              #21
              Sorry schon gelesen da hab ich vorher wohl drüber geschaut :-(
              Loxone: so ziemlich alles was es gibt
              Loxberry: Alexa<->Lox, CamStream4Lox, FHEM, MQTT Gateway, Weather4Loxone, Zigbee2Mqtt
              Other: Node-Red, IObroker, Zehnder Comfoair 350, Tasmota, usw.

              Kommentar

              • Witte
                Extension Master
                • 30.12.2019
                • 145

                #22
                Ich stoß jetzt erst drauf...wie geil..PHP 😍
                Super Sache, muss ich später mal ausprobieren!

                EDIT: Da hab ich gleich mal ne Frage:
                wo finde ich das loxberry_XL.php aus dem require_once?
                Hintergrund: Um in der IDE mit den vorhandenen Variablen zu entwickeln müsste ich das herunterladen und in die IDE mit integrieren
                Zuletzt geändert von Witte; 05.03.2021, 08:32.

                Kommentar


                • svethi
                  svethi kommentierte
                  Kommentar bearbeiten
                  Wie geil PHP? Wofür dann ne IDE?

                • Christian Fenzl
                  Christian Fenzl kommentierte
                  Kommentar bearbeiten
                  /opt/loxberry/libs/phplib
                  Doku aller Public Funktionen der LB-Libs ist im Wiki. Alles was dort nicht dokumentiert ist, ist nicht für den Public Einsatz gedacht (interne Funktionen), oder noch nicht stable, kann sich also ändern (inkl. Parameter usw.) Nur was im Wiki dokumentiert ist, da garantieren wir die Funktions- und Parameter-Abwärtskompatibilität.

                • Witte
                  Witte kommentierte
                  Kommentar bearbeiten
                  Notepad++ vs. PHPStorm...meilenweiter Unterschied im Komfort! Autocomplete, Hinweis auf Fehler, Testing, Deployment uvm.. Kannst gern ausprobieren

                  Danke Christian für den Hinweis!
              • dasrockt
                Extension Master
                • 01.06.2017
                • 136

                #23
                Hallo, kann mir vielleicht kurz wer helfen habe ziemlich alles ausprobiert und stehe weiter auf der Leitung..
                ich hätte da gerne zu dem ganzen String text=$text
                aber egal wie ich es schreibe irgendwie kommt da nichts muss ich den String anders aufbauen?
                Wenn ich einen Text im String ergänze sagt Alexa dann diesen Text..

                Klicke auf die Grafik für eine vergrößerte Ansicht

Name: xl.png
Ansichten: 551
Größe: 22,2 KB
ID: 295425
                Angehängte Dateien
                Loxone: so ziemlich alles was es gibt
                Loxberry: Alexa<->Lox, CamStream4Lox, FHEM, MQTT Gateway, Weather4Loxone, Zigbee2Mqtt
                Other: Node-Red, IObroker, Zehnder Comfoair 350, Tasmota, usw.

                Kommentar

                • Christian Fenzl
                  Lebende Foren Legende
                  • 31.08.2015
                  • 11225

                  #24
                  Kommt per TTS nichts an, oder per MQTT, oder nirgends?
                  Mach mal echo $text;
                  Für den URL musst du ("URL". $text), da hast du derzeit einen Beistrich, und den Text evt. urlencoden.
                  Zuletzt geändert von Christian Fenzl; 09.03.2021, 10:08.
                  Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

                  Kommentar

                  • dasrockt
                    Extension Master
                    • 01.06.2017
                    • 136

                    #25
                    Danke für die rasche Antwort MQTT funktioniert,
                    aber bei tts funktionierts nicht.. habe den Url jetzt mal so gemacht
                    $homepage = file_get_contents("http://localhost:90/admin/plugins/alexa2lox/tts.php?device=Werkstatt&vol=30&text=". $text);
                    echo $homepage;
                    aber mag noch nicht das mit punkt wusste ich nicht ich probier mal weiter DANKE erstmal
                    Loxone: so ziemlich alles was es gibt
                    Loxberry: Alexa<->Lox, CamStream4Lox, FHEM, MQTT Gateway, Weather4Loxone, Zigbee2Mqtt
                    Other: Node-Red, IObroker, Zehnder Comfoair 350, Tasmota, usw.

                    Kommentar

                    • Christian Fenzl
                      Lebende Foren Legende
                      • 31.08.2015
                      • 11225

                      #26
                      sonst mal noch „URL“.urlencode($text)
                      Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

                      Kommentar

                      • dasrockt
                        Extension Master
                        • 01.06.2017
                        • 136

                        #27
                        Super DANKE Christian das hat noch gefehlt jetzt funktionierts :-)

                        $homepage = file_get_contents("http://localhost:90/admin/plugins/alexa2lox/tts.php?device=ALL&vol=30&text=".urlencode($text)) ;
                        echo $homepage;

                        Loxberry XL ist echt Top :-D
                        Loxone: so ziemlich alles was es gibt
                        Loxberry: Alexa<->Lox, CamStream4Lox, FHEM, MQTT Gateway, Weather4Loxone, Zigbee2Mqtt
                        Other: Node-Red, IObroker, Zehnder Comfoair 350, Tasmota, usw.

                        Kommentar

                        • EdiB
                          Extension Master
                          • 30.12.2015
                          • 135

                          #28
                          Verkehrsinfo mit Waze Routing für meinen Arbeitsweg (beide Richtungen). Tolle Sache, danke den Entwicklern!
                          Anbei noch die beiden SVG Statusymbole
                          LG
                          Angehängte Dateien
                          Zuletzt geändert von EdiB; 01.05.2021, 16:18.

                          Kommentar


                          • Witte
                            Witte kommentierte
                            Kommentar bearbeiten
                            Danke für die Symbole! In der App wird alles ganz brav auch jetzt angezeigt, nachdem ich die svg Dateien hinzugefügt habe. In der LoxConfig noch nicht, da muss ich erst noch schauen, wie ich die auf 32x32 in 32Bit Farbtiefe hinbekomme =)

                          • EdiB
                            EdiB kommentierte
                            Kommentar bearbeiten
                            Also ich mache mir das jeweils einfach, öffne das SVG z.B mit dem Browser, skaliere auf 32x32 (ein bisschen pröbeln) und dann copy paste in den Editor in der Loxone Config. Das Image sieht ja nachher sowieso keiner..
                            Aber du musst ja zuerst das Image in der Loxone Konfig erstellen und dann das SVG auf den Miniserver in das \web Verzeichnis kopieren. Wenn du das Image später änderst passt das SVG nicht mehr!
                            Zuletzt geändert von EdiB; 22.05.2021, 13:12.
                        • EdiB
                          Extension Master
                          • 30.12.2015
                          • 135

                          #29
                          Update zum vorangehenden Post #28

                          Ich hole die Verkehrsinfo nun von Google Maps (Directions). Musste feststellen, dass da wo ich mich meistens bewege keine brauchbaren Daten von Waze kommen. Die von Google Directions sind nach bisherigen Erfahrungen, zumindest da wo ich sie brauche, sehr verlässlich. Sind praktisch identisch mit denen vom Google Routenplaner.

                          Dazu muss auf Google Cloud einen APIKey generiert werden. Einfach nach Google Directions API suchen. Jeder der ein Android Gerät benutzt, wird auch schon einen Account haben. Wenn ich es richtig gelesen habe sind 20'000 Anfragen pro Monat gratis. Google verrechnet 10$ je 1'000 Anfragen (Directions Advanced mit Echtzeitinformationen). Stellt aber jeden Monat ein Guthaben von 200 $ zur Verfügung "Jeden Monat steht Ihnen ein Nutzungsguthaben in Höhe von 200 $ zur Verfügung" (https://cloud.google.com/maps-platform/pricing). Wenn ich alle 15min zwei Abfragen (eine hin und eine zurück) mache, komme ich mit 31 Tagen auf 5'952 Abfragen. Sollte also keine kosten verursachen.

                          Dann noch ein entsprechendes PHP Script auf dem schönen Loxberry XL und die Informationen kommen auf den Miniserver.

                          Unten der erste Teil meines laienhaften Skriptes. Der zweite Teil macht nochmals dasselbe, Einfach mit umgekehrtem Start und Ziel damit ich beide Richtungen habe.
                          Das Wesentliche ist die Abfrage URL:
                          "https://maps.googleapis.com/maps/api/directions/json?origin=$From&destination=$To&departure_time=now&key=$APIKey"





                          Damit eine Fahrzeit entsprechend der aktuellen Verkehrslage zurückkommt muss departure_time mit angegeben werden (departure_time=now). Sonnst kommt das Antwort Feld "duration_in_traffic" nicht zurück. Das Feld "duration" gibt die Fahrzeit ohne Berücksichtigung der Verkehrslage zurück. Mit den beiden wird dann die verkehrsbedingte, zusätzliche Zeit in Minuten berechnet und mit der duration_in_traffic an den Loxberry MQTT broker gegeben.

                          Und warum das Ganze? Man könnte ja denken es gibt schon genug Apps die mir die selben Informationen liefern. Aber....
                          Ich brauche nicht noch eine App um zu wissen wie es Verkehrstechnisch auf meiner Hauptroute aussieht. Einfach nur draufschauen oder vielleicht auch benachrichtigen lassen, Wird bei mir alle 15min aktualisiert.
                          Was ich besonders cool finde ist die Benachrichtigung am Morgen, der Rundspruch aus dem Sonos Lautsprecher, wenn die Morgen Szene aktiviert wird und der Weg ins Büro wegen dem Verkehr auf den Strassen wieder mal länger dauert oder dauern würde. "Achtung: Auf dem Weg ins Büro gibt es Verkehrsbehinderungen". Heisst: noch etwas länger Zuhause bleiben wenn es der Terminkalender zulässt oder hallt möglichst früher losfahren. Früher wecken lassen ginge ja auch noch:-)

                          Ist das nicht geil:-)


                          PHP-Code:
                          #!/usr/bin/env php
                          <?php
                          require_once "loxberry_XL.php";
                          /*
                          LOXBERRY XL
                          EXtended Logic
                          
                          Google Directions API Abfrage mit Datenübermittlung an MQTT
                          Script Name: google_routing.php
                          */
                          
                          // APIKey und Start/End Koordinaten für erste Route festlegen
                          $APIKey = "<Your_APIKey>";
                          $From = "47.256097,9.318186"; // Home (Latitude,Longitude)
                          $To= "47.423816,9.373965"; // Office (Latitude,Longitude)
                          
                          
                          //set direction api url (Home > Office)
                          $url = "https://maps.googleapis.com/maps/api/directions/json?origin=$From&destination=$To&departure_time=now&key=$APIKey";
                          
                          // JSON auslesen
                          $json = file_get_contents($url);
                          $json_decoded = json_decode($json);
                          
                          $durationMinutes = round($json_decoded->routes[0]->legs[0]->duration->value / 60);
                          $durationRealtimeMinutes = round($json_decoded->routes[0]->legs[0]->duration_in_traffic->value / 60);
                          $durationDifferenceMinutes = $durationRealtimeMinutes - $durationMinutes;
                          echo "\n";
                          echo $durationMinutes . "\n";
                          echo $durationRealtimeMinutes . "\n";
                          echo $durationDifferenceMinutes . "\n";
                          
                          // Publish to local MQTT broker
                          $mqtt->publish("LoxBerryXL/FahrRouten/Home-Office/durationRealtimeMinutes", $durationRealtimeMinutes);
                          $mqtt->publish("LoxBerryXL/FahrRouten/Home-Office/durationDifferenceMinutes", $durationDifferenceMinutes);
                          ...
                          Zuletzt geändert von EdiB; 06.05.2021, 08:31.

                          Kommentar

                          • EdiB
                            Extension Master
                            • 30.12.2015
                            • 135

                            #30
                            Ich habe ein kleines "Sprachproblem" mit einer API Abfrage.
                            Der Response sendet offensichtlich sprachen spezifischen Inhalt. Wenn ich die API URL auf einem Windows PC im Browser eingebe kommt ein JSON Wert in deutsch und wenn ich dasselbe mit einem PHP Script auf dem Loxberry XL mache kommt derselbe Wert in englisch!?

                            Habe dann versucht mit setlocale(LC_ALL, 'de_DE') resp. setlocale(LC_ALL, 'de_CH'); meine Sprache festzulegen aber das bewirkt nichts.
                            Dann bin ich irgendwie drauf gekommen zu schauen was für Sprachen installiert sind:

                            loxberry@loxberry2:~ $ locale -a
                            C
                            C.UTF-8
                            en_GB.utf8
                            POSIX
                            loxberry@loxberry2:~ $


                            Ich habe es bisher nicht geschafft eine zusätzliche Sprache zu installieren. Könnte mein "Sprachproblem" mit den vorinstallierten Sprachen zu tun haben? Wenn ja, hat jemand eine Idee wie ich z.B. de_CH drauf bringe?

                            LG

                            Kommentar

                            Lädt...