Telegram instant messaging TelegramBot - Empfangen und Senden per FHEM

Begonnen von viegener, 20 Juni 2015, 18:59:41

Vorheriges Thema - Nächstes Thema

Vampy20

#1095
Zitat von: viegener am 24 Dezember 2016, 01:31:09
Was ist denn der Anwendungsfall?

Ich habe mir eine verschachtelte Struktur von Keyboards gebaut. Je nach Aktion wird die Ebene gewechselt (hoch/runter) oder man bleibt auf der aktuellen. Im angehängtem Beispiel befinde ich mich bereits auf der Ebene 1 (Lichtersteuerung). Von hier geht es nicht weiter runter, sondern nur noch nach oben zum Hauptmenü.

Mit der aktuellen Implementierung habe ich folgendes Verhalten. Man drückt einen Knopf, die Default-Tastatur wird sofort eingeblendet. FHEM seitig führe ich die entsprechende Aktion aus und schicke das passende Keyboard erneut zurück. Mich hat das "Flackern" der Tastatur gestört.

Ich hab gestern einen "dirty Hack" eingebaut und kann jetzt das Verhalten über das Attribut oneTimeKeyboard beeinflussen.

Frohe Weihnachten!
FHEM 5.7 auf RPi 2 (Raspbian 4.4.13+, Perl v5.20.2), HM-CFG-USB, HM-SEC-RHS, HM-ES-PMSw1-Pl, HM-LC-Bl1PBU-FM, HM-SEC-SD-2, co2mini, Philips Hue, MySensors, DashButton

Prof. Dr. Peter Henning

#1096
Das ist leider ein klarer Verstoß gegen die GPL 

Generell: Natürlich steht es jedem frei, Module zu verändern. Allerdings besagt die Lizenz auch, dass eine Publikation (und als solche ist das Anhängen eines Moduls in einem öffentlich zugänglichen Forum zu verstehen) von veränderten Dateien nicht mit den originalen Metadaten erfolgen darf.

ALSO: Dokumentation muss sein. Bitte nicht "gehackte" Module ohne klaren Hinweis darauf, WAS geändert worden ist, irgendwo hinstellen.

LG

pah

Edit: OK, danke.

Vampy20

Zitat von: Prof. Dr. Peter Henning am 24 Dezember 2016, 10:23:16
Das ist leider ein klarer Verstoß gegen die GPL  >:( >:( >:(

Generell: Natürlich steht es jedem frei, Module zu verändern. Allerdings besagt die Lizenz auch, dass eine Publikation (und als solche ist das Anhängen eines Moduls in einem öffentlich zugänglichen Forum zu verstehen) von veränderten Dateien nicht mit den originalen Metadaten erfolgen darf.

ALSO: Dokumentation muss sein. Bitte nicht "gehackte" Module ohne klaren Hinweis darauf, WAS geändert worden ist, irgendwo hinstellen.

LG

pah

Du hast natürlich Recht, ich habe meinen Beitrag geändert. Sorry, ich war heute früh etwas voreilig. Ich werde im Laufe des Tages die Dokumentation anpassen und das Modul erneut hochladen.
FHEM 5.7 auf RPi 2 (Raspbian 4.4.13+, Perl v5.20.2), HM-CFG-USB, HM-SEC-RHS, HM-ES-PMSw1-Pl, HM-LC-Bl1PBU-FM, HM-SEC-SD-2, co2mini, Philips Hue, MySensors, DashButton

Vampy20

Anbei die angepasste Version. Mittels des eingeführten Attributs oneTimeKeyboard kann man das Verhalten des Keyboards auf Client Seite beeinflussen.

Default Wert ist 1, das eigene Keyboard wird nach dem Benutzen durch das Default Keyboard ersetzt.
Wert 0 definiert, dass das eigene Keyboard angezeigt wird bis es durch ein neues ersetzt wird oder der Benutzer selber umschaltet.

Es ist nicht gerade elegant, aber es tut was es soll.

Grüße,
Peter
FHEM 5.7 auf RPi 2 (Raspbian 4.4.13+, Perl v5.20.2), HM-CFG-USB, HM-SEC-RHS, HM-ES-PMSw1-Pl, HM-LC-Bl1PBU-FM, HM-SEC-SD-2, co2mini, Philips Hue, MySensors, DashButton

wthiess

Hallo!

Neue Anforderung: Ich möchte einen Temperaturwert abfragen. Mit
d get DS18B20_FFB804361603 temperature
bekomme ich
TelegramBot FHEM :
    Befehl:get DS18B20_FFB804361603 temperature:
  Ergebnis:
-1.25

Funktioniert. Aber ich möchte nur den Wert "-1.25"
geht das?

lg
Wolfgang
Raspberry Pi 3; 8xRelais; Aptodec Nano V3.0 Pro; FS1000a; RF-5V; Hama TS33C; 3x Brennerstuhl FunkSteckdosen; 9x Dooya funk Rollo; KWL Systemair VR400; Thermokon Modbusthermostat; diverse China Modbus Thermostate; 1-wire Bus; Telegram; QuickFhem; FhemNative; Firmata; Alexa ......

viegener

Ja, das geht auf verschiedene Art, es gibt einmal ein entsprechendes Attribut für textnachrichten / Rückgaben textResponseResult .

Eigentlich wäre es aber besser, wenn Du Dir ein Kommando baust, dass die Daten in einem selbstgewählten Text zurückliefert, da obiges Attribut die Rückgabe für alle Kommandos verändert. Also irgendetwas, das eine Nachricht mit dem entsprechenden Reading-Wert versendet.


Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

viegener

Zitat von: Vampy20 am 24 Dezember 2016, 10:01:40
Ich habe mir eine verschachtelte Struktur von Keyboards gebaut. Je nach Aktion wird die Ebene gewechselt (hoch/runter) oder man bleibt auf der aktuellen. Im angehängtem Beispiel befinde ich mich bereits auf der Ebene 1 (Lichtersteuerung). Von hier geht es nicht weiter runter, sondern nur noch nach oben zum Hauptmenü.

Mit der aktuellen Implementierung habe ich folgendes Verhalten. Man drückt einen Knopf, die Default-Tastatur wird sofort eingeblendet. FHEM seitig führe ich die entsprechende Aktion aus und schicke das passende Keyboard erneut zurück. Mich hat das "Flackern" der Tastatur gestört.

Ich hab gestern einen "dirty Hack" eingebaut und kann jetzt das Verhalten über das Attribut oneTimeKeyboard beeinflussen.

Frohe Weihnachten!

Hast Du Dir mal die inlinekeyboards angeschaut?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Prof. Dr. Peter Henning

Für Todolisten gibt es einen netten Support in der neuen Version des PostMe-Moduls, die automatische Erinnerungen versendet:

https://forum.fhem.de/index.php/topic,59717.msg546191.html#msg546191

LG

pah

viegener

Zitat von: Prof. Dr. Peter Henning am 25 Dezember 2016, 13:44:42
Für Todolisten gibt es einen netten Support in der neuen Version des PostMe-Moduls, die automatische Erinnerungen versendet:

https://forum.fhem.de/index.php/topic,59717.msg546191.html#msg546191

LG

pah

Sieht gut aus, sobald ich die ganhze Familie auf die neue Einkaufsliste angelernt habe, wäre das eine schöne Erweiterung
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

viegener

Habe gerade die aktuelle Version aus github ins SVN geladen. Damit werden die Funktionen, die hier im Thread schon einige Zeit besprochen werden ab morgen über update verfügbar:

- keyboards in Nachrichten
- inline keyboards und Antworten (siehe Beispiele weiter oben) - query...
- msgForceReply um eine Antwort für Nachrichten einzufordern
- diable attribut
- get update um ohne polling updates einzuholen
- Unterstützung für set-Logik in Kommandos

Wie immer bei Problemen melden
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

oetti77

Hallo zusammen,

ich habe den o.g. Ansatz https://wiki.fhem.de/wiki/Modul_PostMe#Noch_komfortabler_verwalten_mit_Inline-Keyboards mal ausprobiert um mit den Inline Keyboards rumzuspielen.
Attribute, Notify , Routine etc. sind alles hinterlegt, allerdings wird mir das Menü nicht angezeigt. Als Antwort kommt nur der hinterlegte Befehl im Favoriten (siehe Bild)

Vielleicht hat einer 'ne Idee, woran das liegen könnte.

Version FHEM
Latest Revision: 12896

File                           Rev   Last Change

fhem.pl                        12804 2016-12-17 18:37:11Z rudolfkoenig

Version TelegramBot
50_TelegramBot.pm 12874 2016-12-25 14:15:59Z viegener

Besten Dank
Chris
FHEM 5.8 (CentOS 7 auf ESXi 6.5), HM-CC-RT-DN, HM-Sec-Sc, HM-WDS40-TO, HM-LC-SW1-FM, HM-LC-Bl1PBU-FM, Sonos, Alexa, Nest Protect 2, Tradfri

Module: HUE, Lightify, ECOTOUCH, TelegramBot, Sonos, Alexa, Pushover, Enigma2

Prof. Dr. Peter Henning

Klar hat "einer 'ne Idee".

Allerdings müsste er dazu wissen, welches "Menü" denn "angezeigt" werden soll.

LG

pah

oetti77

#1107
Ich hatte das Beispiel komplett kopiert und somit das Hauptmenü wie in deinem Beispiel erwartet  ;)

Gruß
Chris
FHEM 5.8 (CentOS 7 auf ESXi 6.5), HM-CC-RT-DN, HM-Sec-Sc, HM-WDS40-TO, HM-LC-SW1-FM, HM-LC-Bl1PBU-FM, Sonos, Alexa, Nest Protect 2, Tradfri

Module: HUE, Lightify, ECOTOUCH, TelegramBot, Sonos, Alexa, Pushover, Enigma2

viegener

Zitat von: oetti77 am 28 Dezember 2016, 18:01:18
Ich hatte das Beispiel komplett kopiert und somit das Hauptmenü wie in deinem Beispiel erwartet  ;)

Gruß
Chris

Hast Du denn wirklich nur kopiert, oder auch geschaut, wo Du Deine eigenen Einträge machen musst?
Wenn Du nur kpiert hast, müsste Dein Telegram-Benutzer schon "<Name des Kontaktes>" heissen, damit ein Menu kommt  ;)
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

oetti77

Verdammt  :)

Ich habe alles mögliche auf meine Installation angepasst, den Namen des Bots, das Notfiy etc. etc. - das "<Name des Kontaktes>" ist mir tatsächlich nicht entgegen gesprungen.
Besten Dank für den Hinweis.

So ist das manchmal mit dem Wald und den Bäumen. Hab's angepasst und läuft natürlich.

Vielen Dank nochmal
Chris
FHEM 5.8 (CentOS 7 auf ESXi 6.5), HM-CC-RT-DN, HM-Sec-Sc, HM-WDS40-TO, HM-LC-SW1-FM, HM-LC-Bl1PBU-FM, Sonos, Alexa, Nest Protect 2, Tradfri

Module: HUE, Lightify, ECOTOUCH, TelegramBot, Sonos, Alexa, Pushover, Enigma2