Zitat von jonofe
Beitrag anzeigen
Ankündigung
Einklappen
Keine Ankündigung bisher.
LBS19000303 - Telegram Contact I LBS19000304 - Telegram Receiver I LBS19000645 - Telegram Command Validator
Einklappen
X
-
nein, relativ unkritisches 2. explode um Beschriftung von "Daten" zu trennen.
Habs aber nur beim Inline keyboard gemacht.
Einen Kommentar schreiben:
-
na klar bau ich das ein.Zitat von gulp2k Beitrag anzeigenjonofe
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...


Wenn es bei dir schon läuft, dann ist das doch bestimmt nicht auf dem kritischen Pfad, oder?
Einen Kommentar schreiben:
-
keinen vergessen? Du darfst den LBS nur einmal einsetzen.
Einen Kommentar schreiben:
-
Einfach den Stundentrigger auf E6.Zitat von lordofchaos Beitrag anzeigen
Was bedeutet das nun? Wie bekomme ich die Systemlast wieder runter?
EDIT: Hast du mehrere Telegram-Receiver in deinem Projekt?Zuletzt geändert von jonofe; 25.07.2017, 19:46.
Einen Kommentar schreiben:
-
Zitat von starwarsfan Beitrag anzeigenHallo 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 anzeigenHi 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?
Einen Kommentar schreiben:
-
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]
Einen Kommentar schreiben:
-
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);
}
Einen Kommentar schreiben:
-
jonofe
Erstmal super Bausteine hat alles problemlos geklappt!
Vielen Dank für die Arbeit.
Ich bin gerade am ausprobieren und hätte noch einen Featurewunsch
Bei den Keyboards kann man für jeden "Knopf" die Beschriftung und die Callback-Daten vergeben.
Aktuell wird im LBS beides auf den gleichen Wert gesetzt.
Ich würden denn Callback-Wert gerne Selbst bestimmen, dann könnte man etwas mehr Interaktivität rein bringen.
z.B.
User: "licht"
Bot: inline (Wohnzimer,licht_wozi|Küche,licht_küche) erscheint als "(Wohnzimmer) (Küche)"
User: Drückt auf (Wohnzimmer) aber Bot bekommt "licht_wozi"
Bot: message: "Wohnzimmer Licht", inline: (An,licht_wozi_1|Aus,licht_wozi_0) erscheint als "(An) (Aus)"
Man könnte damit verschieden States merken die man sonst umständlich in einer Logik abbilden müsste.
Einen Kommentar schreiben:
-
Die Tastatur ist quasi eine Shortcut für eine Nachricht. D.h. der Text auf der Taste wird als Antwortnachricht gesendet. Wie du dann in EDOMI drauf reagierst bleibt dir überlassen.
Einen Kommentar schreiben:
-
Kurz zum Verständnis mit der Tastertur einblenden. Die Antworten können ja nur einmal vorkommen.Zitat von jonofe Beitrag anzeigenUse Case wie oben von fisch3009 beschrieben:- Nutzer sendet per Telegram einen Status Anfrage an EDOMI (z.B. 'Status Licht')
- EDOMI sendet den Licht Status per Telegram Message
- Die Message enthält eine Tastatur, die mögliche Antworten enthält z.B.: EIN|AUS
- Der Empfänger muss nun die Antwort nicht selbst verfassen, sondern kann diese nun ganz einfach auswählen
- Der Telegram-Receiver-LBS empfängt den Antworttext und EDOMI reagiert entsprechend (z.B. Licht ausschalten)
Viel Spaß damit
André
Ich kann ja verschiedene Lichter Abfragen (LICHT BAD, LICHT WOHNZIMMER ...)
Aber ich kann doch die Nachricht an den Bot EIN|AUS nur an ein Licht binden entweder BAD oder WOHNZIMMER, sonst gehen beide an oder aus.
auser der Text würde EIN BAD, EIN WOHNZIMMMER ... sein.
Oder verstehe ich was falsch und die automatische antworten Texte sind auf die davor gesendete Message verknüft?
Hoffe ich habe mich verständlich ausgedrückt
Einen Kommentar schreiben:
-
Wie hast du die ganzen Daten mit Text in einer Message bekommen?Zitat von MrMirror Beitrag anzeigenGroßes Kompliment und herzlichen Dank für diese genialen Bausteine!!!
Ich bin ja dank KNX und EDOMI schon einiges gewohnt, aber wenn man seinem Haus(Bot) schreibt, wie der Fensterstatus ist oder sich nach den aktuellen Verbräuchen erkundigt und man direkt per "Telegram"-Nachricht antwort bekommt, einfach stark!!! Ich stelle jetzt meine Visu erstmal hinten an und kommuniziere per Bot mit meinem Haus
DANKE an jonofe und die ganze Community!!!
IMG_1380.PNG
Ich hab mit Stings verbinden schon gemacht aber da bekomme ich die reinen Daten gesendet. Nicht gerade sehr übersichtlich.
Einen Kommentar schreiben:
-
Kann ich bestätigen. Als Initialwert eingetragen funktinoiert es auch bei mir.
Einen Kommentar schreiben:

Einen Kommentar schreiben: