Ankündigung

Einklappen
Keine Ankündigung bisher.

LBS19000303 - Telegram Contact I LBS19000304 - Telegram Receiver I LBS19000645 - Telegram Command Validator

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

    jonofe
    Ich war jetzt mal so frei und hab es schnell eingebaut.
    Sollte jetzt bei Inline Keyboards funktionieren, Trennzeichen ist ",", wenn kein Komma gefunden wird dann verhält es sich wie vorher und beides ist der gleiche Wert.

    Vielleicht könntest du das bei dir im offiziellen LBS mit aufnehmen

    PHP-Code:
                        if ($keyboard_type == 'INLINE') {
                            
    $kbd_data = array(
                                
    'inline_keyboard' => array()
                            );
                            
    $kbd_rows explode('||'$keyboard_data);
                            foreach (
    $kbd_rows as $kbd_row) {
                                
    $kbd_button_text explode('|'$kbd_row);
                                
    $kbd_row_data = array();
                                foreach (
    $kbd_button_text as $button_text) {
                                    
    //$button_text .= chr(0);
                                    
    $button explode(','$button_text);
                                    
    $button_text $button[0] . chr(0);
                                    if (
    count($button)==1){$button_data=$button_text;} else {$button_data=$button[1] . chr(0);}
                                    
    $kbd_button = new InlineKeyboardButton(array(
                                        
    'text' => $button_text,
                                        
    'callback_data' => $button_data
                                    
    ));
                                    
    array_push($kbd_row_data$kbd_button);
                                }
                                
    array_push($kbd_data['inline_keyboard'], $kbd_row_data);
                            }
                            
    $kbd = new InlineKeyboardMarkup($kbd_data);
                        } 
    Gruß
    Michael

    Kommentar


      Mein Rechner hat seit heute fast Vollauslastung beim RAM. Leider weis ich noch nicht weshalb. Dies hier ist aber der letzte LBS den ich erstellt, geändert habe ...
      Daher die Frage mal hier rein.
      Im log sehe ich das jede halbe Stunde das hier mehrmals auftauscht. Ist das Normal?

      Code:
       [TABLE="class: log, border: 0, cellpadding: 0, cellspacing: 0, width: 0, height: 12"]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]475694[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: LBS run time: 79202[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]476380[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS ended[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]478854[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS started[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]479693[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: LBS run time: 79202[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]480434[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS ended[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]483000[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS started[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]483799[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: LBS run time: 79202[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]484481[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS ended[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]688851[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS started[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]689640[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: LBS run time: 79202[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 19:33:12[/TD]
       			[TD]690757[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS ended[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]277260[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS started[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]281507[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: LBS run time: 81002[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]282383[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS ended[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]488713[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS started[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]489809[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: LBS run time: 81002[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]490514[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS ended[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]493063[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS started[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]493882[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: LBS run time: 81002[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]494580[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS ended[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]497658[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS started[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]498455[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: LBS run time: 81002[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]499164[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS ended[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]789855[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS started[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]790666[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: LBS run time: 81002[/TD]
       		[/TR]
      [TR]
      [TD]2017-07-25 20:03:12[/TD]
       			[TD]791368[/TD]
       			[TD]24050[/TD]
       			[TD]debug[/TD]
       			[TD]LBS19000304 [v0.6.1]: Telegram Receiver LBS ended[/TD]
       		[/TR]
      [/TABLE]

      Kommentar


        Zitat von starwarsfan Beitrag anzeigen
        Hallo André,

        wie ist Deine Erfahrung mit dem Reset-Eingang des Receiver-Baustein 19000304? Seitdem ich den Baustein in Betrieb habe, blendet mir Edomi RAM-Warnungen ein und das Memory des Systems wird mit 94% Auslastung angezeigt. Der Output von htop direkt auf dem System sieht so aus:

        2016-12-02_19000304_Memory.png

        Aktuell habe ich E6 mit dem System-KO 20 belegt, um täglich einen Reset zu machen. Das ist offenbar zu wenig. Wie hast Du bzw. wie haben andere das bei sich eingerichtet?
        Zitat von jonofe Beitrag anzeigen
        Hi Yves,

        ich habe es mit dem stündlichen KO verbunden. Das sollte eigentlich reichen.
        Habe schon überlegt, ob ich es automatisieren soll. D.h. regelmäßig die RAM Auslastung monitoren und wenn >50% dann ein Reset mit einer bestimmten Totzeit danach.

        Inzwischen gibt es auch eine andere PHP Library für Telegram, allerdings müsste die zunächst wieder backportet werden auf PHP 5.3. Hab ich im Moment leider wenig Zeit für.

        Was bedeutet das nun? Wie bekomme ich die Systemlast wieder runter?

        Kommentar


          Zitat von lordofchaos Beitrag anzeigen




          Was bedeutet das nun? Wie bekomme ich die Systemlast wieder runter?
          Einfach den Stundentrigger auf E6.

          EDIT: Hast du mehrere Telegram-Receiver in deinem Projekt?
          Zuletzt geändert von jonofe; 25.07.2017, 19:46.

          Kommentar


            ok Danke. Hoffe ich habe keinen vergessen

            Kommentar


              keinen vergessen? Du darfst den LBS nur einmal einsetzen.

              Kommentar


                jonofe
                Besteht die Chance das die kleine Änderung von oben den Weg in deinen LBS findet?
                Ich bin am überlegen ob ich einen LBS baue der darauf basierend automatisch Menüs erzeugt und sendet, aber dafür bräuchte ich die Funktionalität zwingend...
                Gruß
                Michael

                Kommentar


                  Zitat von gulp2k Beitrag anzeigen
                  jonofe
                  Besteht die Chance das die kleine Änderung von oben den Weg in deinen LBS findet?
                  Ich bin am überlegen ob ich einen LBS baue der darauf basierend automatisch Menüs erzeugt und sendet, aber dafür bräuchte ich die Funktionalität zwingend...
                  na klar bau ich das ein.

                  Wenn es bei dir schon läuft, dann ist das doch bestimmt nicht auf dem kritischen Pfad, oder?

                  Kommentar


                    nein, relativ unkritisches 2. explode um Beschriftung von "Daten" zu trennen.
                    Habs aber nur beim Inline keyboard gemacht.
                    Gruß
                    Michael

                    Kommentar


                      Zitat von jonofe Beitrag anzeigen
                      keinen vergessen? Du darfst den LBS nur einmal einsetzen.
                      ?? Bei mir hab ich 2 im Projekt, und die tun sich gegenseitig nichts.

                      Kommentar


                        Ja kann sein, dass es funktioniert, aber wenn man 5 hat wächst der Speicherbedarf natürlich immer schneller.
                        Und mehrere für denselben Bot macht doch auch irgendwie keinen Sinn, oder? Hast du zwei Bots?

                        Kommentar


                          Ja, sind 2Bots...

                          Kommentar


                            oh dann hab ich glaube was falsch verstanden.
                            Muss ich nicht für jede unterschiedliche Nachricht bzw. Befehl an den Bod einen neuen Reciever haben?
                            Also einfach den Reciever auf verschiedene Vergleiche oder. oh man, was hab ich da blos gemacht bzw. mir gedacht.

                            Kommentar


                              ja genau, ein Receiver je Bot. Und i.d.R. reicht ein Bot.

                              Kommentar


                                Hab mal die bitte um Input
                                Ich hab ja weiter oben mal anklingen lassen einen LBS für Telegram Menüs zu bauen und steh jetzt vor einer konzeptionellen Frage...

                                Wie definiere ich am besten eine Menüstruktur in einem String?
                                Bin mittlerweile bei YAML gelandet das das recht elegant hergeben würde, dazu müßte man aber noch Sachen dazu installieren

                                Hat jemand eine bessere Idee?

                                Ziel soll es sein das der LBS die Nachrichten parst und je nach dem mit verschiedenen Optionen antwortet.
                                Am Ende sollte der LBS 5-10 Ausgänge haben auf die er Ergebnisse schickt.

                                Menü:
                                Code:
                                - Licht
                                   - Wohnzimmer
                                     Option: An,Aus
                                     A:1
                                   -Küche
                                     Option: An,Aus
                                     A:2
                                -Rolladen
                                usw

                                Bot: schickt dann erstmal (Licht), (Rolladen)
                                User: Licht
                                Bot: (Wohnzimmer) (Küche)
                                User: Küche
                                Bot: (An) (Aus)
                                User: An

                                LBS A2=An

                                Hoffe ich hab das einigermaßen verständlich erklärt
                                Gruß
                                Michael

                                Kommentar

                                Lädt...
                                X