neues Modul 49_TBot_List Todo- oder Einkaufslisten mit Telegram (und PostMe)

Begonnen von viegener, 26 Februar 2017, 14:29:33

Vorheriges Thema - Nächstes Thema

viegener

Da es mit PostMe ein Modul zur Verwaltung von Listen (also Einkaufslisten, Todolisten oder ähnliches) gibt und es praktisch ist diese unterwegs dabeizuhaben und zu pflegen habe ich ein Modul dafür gebaut um diese direkt aus dem TelegramBot zu pflegen.

Das Modul 49_TBot_List.pm

Diese ist ursprünglich im TelegramBot-Thread beschrieben worden: https://forum.fhem.de/index.php/topic,38328.msg563341.html#msg563341

Jetzt habe ich das Modul offiziell ins SVN eingechecked und damit ist es normal per update verfügbar

Die jeweils neueste Version ist aber auch immer über github verfügbar:

https://github.com/viegener/Telegram-fhem/tree/master/TBot_List
Beim Herunterladen aus github daraufachten, dass man die Datei "raw" (button "raw" in github) herunterlädt und nicht die HTML-Seite speichert.




Anlegen der Kopplung(Annahme - TelegramBot - telebot existiert und ist eingerichtet inklusive allowedPeers

- PostMe Device testpostme und Liste testlist anlegen (oder existierende Liste verwenden)

define testpostme PostMe
set testpostme create testlist


- Neues TBotList Device testlistbot

define testlistbot TBot_List testpostme testlist
attr testlistbot telegramBots telebot


- Favoriten zum Start des Dialogs anlegen (im attribute favorites in telebot)

/l=set testlistbot start telebot;


Dann kann man mit /l im telegram client die Interaktion starten




Achtung: Die Kopplung ist darauf angewiesen, dass Events vom Bot auch bei TBot_List landen, speziell verwendet das Device Änderung an den Readings sentMsgId und msgReplyMsgId. Dies muss speziell vei Verwendung der Attribute event-on-*-reading berücksichtigt werden.




Unten finden sich auch ein paar Bilder, wie das im Telegram-Client aussieht:
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Thyraz

Fhem und MariaDB auf NUC6i5SYH in Proxmox Container (Ubuntu)
Zwave, Conbee II, Hue, Harmony, Solo4k, LaMetric, Echo, Sonos, Roborock S5, Nuki, Prusa Mini, Doorbird, ...

JoeALLb

Hi,
was habe ich falsch gemacht wenn ich diese Meldung erhalte, wenn ich einen vorhanden Eintrag löschen möchte?
Einen neuen Ergänzen geht ebenfalls nicht, lediglich das Anzeigen bestehender Einträge.
AnswerInline: TBot_List_handler: tbot - telegram ERROR no msgId known for peer :123451234: cmd :list_askclr: - 639431755788640953
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

marvin78

Ich habe mir dieses Modul noch nicht anschauen können. Meine Frage wäre: Ist das Modul in der Lage auch mit anderen Listen umzugehen? Es gibt das wunderlist Modul und eine Anbindung an Telegram wäre sicher für viele interessant. Oder funktioniert das nur, weil Telegram ohnehin schon eine Art Integration in PostMe hat?

Thyraz

Die PostMe Integration von pah war ja auch selbstgestrickt.

Die Dialoge (InlineQuery) sind ja Bestandteil des TelegramBot Moduls und können für alles Mögliche verwendet werden.
Wenn es nicht wie hier gleich ein Modul sein soll, kann man sowas im kleineren Maßstab ja auch mit Notifies etc. automatisieren.
Fhem und MariaDB auf NUC6i5SYH in Proxmox Container (Ubuntu)
Zwave, Conbee II, Hue, Harmony, Solo4k, LaMetric, Echo, Sonos, Roborock S5, Nuki, Prusa Mini, Doorbird, ...

marvin78

Das ist mir bewusst.

Meine Frage zielte eher darauf, ob ich, als Autor des wunderlist-Moduls, etwas tun kann/muss, um eine Verwendung dieses Moduls möglich zu machen oder ob es so generisch sein kann, dass es mit jeder Liste etwas anfangen kann.

Bei Gelegenheit schaue ich mir das selbst an, diese kommt aber erst wieder in 2 Wochen.

viegener

Zitat von: JoeALLb am 01 März 2017, 11:24:05
Hi,
was habe ich falsch gemacht wenn ich diese Meldung erhalte, wenn ich einen vorhanden Eintrag löschen möchte?
Einen neuen Ergänzen geht ebenfalls nicht, lediglich das Anzeigen bestehender Einträge.
AnswerInline: TBot_List_handler: tbot - telegram ERROR no msgId known for peer :123451234: cmd :list_askclr: - 639431755788640953

Das kann ich so vermutlich noch nicht beantworten. Also Du startest über eine Favoriten die Anzeige einer PostMe-Liste?
Dann kommt die Liste und zwar als Buttons? -> Was passiert wenn Du direkt danach auf OK clickst?

Wenn dann dieselbe Fehlermeldung kommt, so bekommt der Listbot aus irgendeinem Grund die ID der gesendetn Nachricht (mit den Buttons) nicht mit - dazu kann es mehrere Gründe geben (z.B. hast Du an den readings des Telegrambot etwas gesetzt - im sinne von event-on attibuten?)

Auf jeden Fall würde mir direkt nach dem empfang der ersten Nachricht mit den Buttons ein list des TBOT_List devices interessieren, vielleicht kann aich da etwas herauslesen.

System ist neugestartet nach Update etc?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

viegener

Zitat von: marvin78 am 01 März 2017, 11:44:36
Ich habe mir dieses Modul noch nicht anschauen können. Meine Frage wäre: Ist das Modul in der Lage auch mit anderen Listen umzugehen? Es gibt das wunderlist Modul und eine Anbindung an Telegram wäre sicher für viele interessant. Oder funktioniert das nur, weil Telegram ohnehin schon eine Art Integration in PostMe hat?

Generell ist eine solche Anpassung möglich - ich habe versucht die Funktionen zum Zugriff auf das PostMe-Modul bewusst zu kapseln und rufe nur set/get/reading-Funktionen (also quasi offizielle Befehle in Postme auf), damit sollte es möglich sein das auch an Wonderlist anzupassen. Ich kann mir das mal näher anschauen. Es könnte sein, dass es etwas Aufwand bedeutet, da im Grunde PostMe für das Modul nur eine Liste von mit Koma getrennten Einträgen ist und einen Namen hat, die Liste wird zum Teil bei PostMe komplett neu gesetzt. Die Schwierigkeit könnte das synchrone Verhalten werden, also das Änderungen sofort auch sichtbar sein sollen.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

marvin78

Wenn du Infos von mir brauchen solltest...

Ich habe PostMe länger nicht angeschaut (ich habe aktuell einfach zu selten Zeit für FHEM) und weiß aktuell nicht, wie es das setzen auf die Liste oder das Abrufen macht.

wunderlist stellt jeden Eintrag als Reading zur Verfügung, stellt aber auch ein Reading mit der Liste in Komma getrennter Form bereit.

get habe ich nicht implementiert, da Readings vorliegen, ich hätte aber kein Problem damit, hier eine Anpassung zu machen.

automatisierer

Ich habe wie im ersten Post beschrieben, die Devices angelegt. Bei gesetztem 'attr csrfToken random' kann ich beim PostMe Device keine Listen oder Einträge darin erstellen, auch über telegram funktioniert es nicht - nur über die Befehlzeile direkt funktioiniert es und wenn ich 'csrfToken none' einstelle. Hat PostMe evtl. noch ein Problem mit dem csrfToken?

viegener

Zitat von: automatisierer am 01 März 2017, 14:26:48
Ich habe wie im ersten Post beschrieben, die Devices angelegt. Bei gesetztem 'attr csrfToken random' kann ich beim PostMe Device keine Listen oder Einträge darin erstellen, auch über telegram funktioniert es nicht - nur über die Befehlzeile direkt funktioiniert es und wenn ich 'csrfToken none' einstelle. Hat PostMe evtl. noch ein Problem mit dem csrfToken?

Kannst Du das noch etwas genauer erklären? Die Liste selbst lässt sich nicht über Telegram anlegen. Die Liste und der PostMe device müssen bereits existieren:

Zitatdefine testpostme PostMe
set testpostme create testlist

Der Zusammenhang mit dem csrfToken ist mir noch ein Rätsel...
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

automatisierer

Also das eingeben von Daten in die Liste über telegran funktioniert nun, ich hatte 'event-on-change-reading state' gesetzt.

Der Rest hat dann sicherlich nichts mit TBotList zu tun sondern mit PostMe.

Befehle die ich in die Befehlzeile eingebe funktionieren. Wenn ich aber über die Buttons (die Dinger unter der Befehlszeile) etwas bei PostMe mache, z.B. versuche einen Eintrag in die Liste zu schreiben, dann wird das Browserfenster nur weiß und sonst passiert nix. Ohne csrfToken funktioniert es.

JoeALLb

Zitat von: viegener am 01 März 2017, 12:21:36
Wenn dann dieselbe Fehlermeldung kommt, so bekommt der Listbot aus irgendeinem Grund die ID der gesendetn Nachricht (mit den Buttons) nicht mit - dazu kann es mehrere Gründe geben (z.B. hast Du an den readings des Telegrambot etwas gesetzt - im sinne von event-on attibuten?)

Das wars, vielen Dank!! Daran habe ich nicht gedacht!
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

viegener

Zitat von: automatisierer am 01 März 2017, 20:15:52
Also das eingeben von Daten in die Liste über telegran funktioniert nun, ich hatte 'event-on-change-reading state' gesetzt.


Eigentlich dachte es ist toll, dass TBot_List und TelegramBot über events gekoppelt sind, aber das geht natürlich nur wenn auch events kommen :-)

Ich füge mal etwas zur Beschreibung hinzu.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Pusemukel

Hallo,

Ich wollte mich einfach nur bedanken für dieses super Modul, genau das hab ich gesucht  ;D

JoeALLb

Kleiner Verbesserungsvorschlag: Schön wäre, wenn ich per newline eingegebene weitere Zeilen direkt als neue Einträge angelegt werden würden, quasi als Abkürzung.
Im Moment wird es angelegt, danach aber als Fehler angezeigt und kann nicht mehr gelöscht werden....
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

viegener

Habe eine neue Version in SVN eingecheckt mit dem Vorschlag von JoeALLb. Ausserdem gibt es ein neues Attribut handleUnsolicited dadurch kann man wenn ein Dialog aktiv ist automatisch neue Einträge erzeugen, wenn man einfach eine Nachricht im entsprechenden chat sendet.

Neue Version ist im SVN verfügbar
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

JoeALLb

Danke für das Update, habe es auch gleich getestet!! Sehr schönes Feature!!

Was mir noch auffällt: Wenn ich 2x den selben Eintrag speichern möchte, funktioniert dies nicht, er wird nur 1x angezeigt, das ist gut so.
wenn ich jedoch zuerst
1 hinzufüge und danach
1
2
3


Dann wird "1" 2x angezeigt in der Liste.
Wenn ich dann auf 1 klicke und dieses lösche, werden beide gelöscht.
Ist nicht wichtig, nur eine Kleinigkeit, die mir aufgefallen ist...
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

viegener

Zitat von: JoeALLb am 17 März 2017, 08:53:48
Danke für das Update, habe es auch gleich getestet!! Sehr schönes Feature!!

Was mir noch auffällt: Wenn ich 2x den selben Eintrag speichern möchte, funktioniert dies nicht, er wird nur 1x angezeigt, das ist gut so.
wenn ich jedoch zuerst
1 hinzufüge und danach
1
2
3


Dann wird "1" 2x angezeigt in der Liste.
Wenn ich dann auf 1 klicke und dieses lösche, werden beide gelöscht.
Ist nicht wichtig, nur eine Kleinigkeit, die mir aufgefallen ist...

Klingt nach einem Bug
Ich kümmere mich drum - Bin immer froh über andere Tester - Altes Problem: ich programmiere lieber Fehler als zu Testen  ;)
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

pitamiga

Hallo,

meine Frau hätte auch einen Featurerequest...

wenn man die Liste (als Option?) alphabetisch sortieren könnte, dann könnte man z.B. bei Benutzung als Einkaufsliste am Anfang das Geschäft schreiben und hätte so alle Einträge zu dem Geschäft in dem man sich gerade befindet gesammelt und muss Sie sich nicht innerhalb Liste zusammensuchen.

viegener

Zitat von: pitamiga am 11 Mai 2017, 14:45:32
Hallo,

meine Frau hätte auch einen Featurerequest...

wenn man die Liste (als Option?) alphabetisch sortieren könnte, dann könnte man z.B. bei Benutzung als Einkaufsliste am Anfang das Geschäft schreiben und hätte so alle Einträge zu dem Geschäft in dem man sich gerade befindet gesammelt und muss Sie sich nicht innerhalb Liste zusammensuchen.

Habe gerade eine neue Version ins SVN gespielt, darin kann man auch sortieren.
Ausserdem habe ich die Behandlung von doppelten Einträgen angepasst (allerdings bleiben Dubletten erlaubt)

Ist ab morgen/übermorgen per update verfügbar
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

pitamiga

danke für die fixe Umsetzung, gerade getestet, funktioniert prima!

marvin78

So. Jetzt bin ich mal dazu gekommen, das Modul auszuprobieren. Das gefällt mir sehr gut. Ich denke, so kann ich einen reibungslosen Übergang von wunderlist schaffen, denn das wird schon bald abgeschaltet.

Fragen:

- Kann man die nochmalige Nachfrage, ob innerhalb des Dialogs ein Punkt zur Liste hinzugefügt werden soll, auch abschalten? Diese kann auf Dauer und beim erstellen längerer Listen nerven. Also derart, dass Punkte, die ich innerhalb des Dialogs schreibe einfach hinzugefügt werden, ohne Nachfrage? Kann man das ggf. konfigurierbar machen?
- ähnlich beim Löschen bzw. erledigen: Kann ein Punkt einfach durch anklicken gelöscht werden (also ohne die weitere "ja/nein" Nachfrage? Das Löschen erfordert aktuell 3 Klicks.

viegener

Zitat von: marvin78 am 11 Juli 2017, 12:33:05
So. Jetzt bin ich mal dazu gekommen, das Modul auszuprobieren. Das gefällt mir sehr gut. Ich denke, so kann ich einen reibungslosen Übergang von wunderlist schaffen, denn das wird schon bald abgeschaltet.

Fragen:

- Kann man die nochmalige Nachfrage, ob innerhalb des Dialogs ein Punkt zur Liste hinzugefügt werden soll, auch abschalten? Diese kann auf Dauer und beim erstellen längerer Listen nerven. Also derart, dass Punkte, die ich innerhalb des Dialogs schreibe einfach hinzugefügt werden, ohne Nachfrage? Kann man das ggf. konfigurierbar machen?
- ähnlich beim Löschen bzw. erledigen: Kann ein Punkt einfach durch anklicken gelöscht werden (also ohne die weitere "ja/nein" Nachfrage? Das Löschen erfordert aktuell 3 Klicks.

Das automatische Hinzufügen gibt es schon - Attribut handleUnsolicited allerdings muss dafür ein Dialog offen sein. Nur dann wird gefragt ob der Eintrag hinzugefügt werden soll.

Ausserdem kann man mehrere Punkte beim Hinzufügen durch Komma in einem Rutsch hinzufügen.

Die Abfragen kann ich abschaltbar machen, das steht jetzt auf meiner Liste
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

viegener

Zitat von: marvin78 am 11 Juli 2017, 12:33:05
- Kann man die nochmalige Nachfrage, ob innerhalb des Dialogs ein Punkt zur Liste hinzugefügt werden soll, auch abschalten? Diese kann auf Dauer und beim erstellen längerer Listen nerven. Also derart, dass Punkte, die ich innerhalb des Dialogs schreibe einfach hinzugefügt werden, ohne Nachfrage? Kann man das ggf. konfigurierbar machen?
- ähnlich beim Löschen bzw. erledigen: Kann ein Punkt einfach durch anklicken gelöscht werden (also ohne die weitere "ja/nein" Nachfrage? Das Löschen erfordert aktuell 3 Klicks.

Jetzt muss ich doch nochmal nachfragen:

Also das mit dem Löschen verstehe ich, aber wo gibt es eine Nachfrage beim Hinzufügen?
-> Click auf "Hinzu" --> schreiben --> Absenden --> fertig

Oder kenne ich mein eigenes Modul nicht mehr?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

viegener

Fürs delete gibt es jetzt ein neues Attribut confirmDelete - mit einem Wert 0 wird keine weitere Bestätigung abgefragt. Kommt ab morgen im Update.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

marvin78

Zitat von: viegener am 13 Juli 2017, 22:05:47
Jetzt muss ich doch nochmal nachfragen:

Also das mit dem Löschen verstehe ich, aber wo gibt es eine Nachfrage beim Hinzufügen?
-> Click auf "Hinzu" --> schreiben --> Absenden --> fertig

Oder kenne ich mein eigenes Modul nicht mehr?


Ich habe das Eintragen  innerhalb des Dialogs gemeint, nicht über "hinzu". Wenn man Enter = Senden eingestellt hat (am PC) , werden die Nachfragen sogar noch häufiger. Jammern auf hohem Niveau  ;)


Das Attribut für das Löschen ist schonmal hilfreich. Vielen Dank

viegener

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

marvin78

Nicht ganz, da es ja jedes Mal eine Nachfrage gibt, ob man die items wirklich hinzufügen möchte. Das ist ok, wenn man mehrere Items hinzufügt und man bspw. am Handy nicht Enter = Send eingestellt hat. Dann führt ein Enter dazu, dass man zunächst eine Liste erstellen kann, dann den send Button bekommt und dann nur eine Nachfrage für alle items. Das kann man verkraften. Hat man aber Enter=Send eingestellt kommt die Nachfrage nach jedem item. Wenn man diese Nachfrage also ganz abestellen könnte (per Attribut?), wäre es hilfreich.

viegener

Ahh - jetzt habe sogar ich es verstanden - ok neues Attribut confirmUnsolicited ist eingechecked ins SVN kommt per update

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

marvin78

Perfekt. Danke. Testen werde ich aber erst nächste Woche können. Ggf. bekommst du eher Feedback von anderen.

viegener

Ich habe heute mal eine neue Version für das Modul ins SVN eingechecked, darin sind die Änderungen, die in den letzten Wochen (naja Monaten) bei mir stabil laufen:

- Es gibt deleteOnly-Listen --> ich benutze das um Alarmmeldungen zu sammeln, die ich einzeln abhaken will
- Es gibt verschiedene interne Umstellungen, um die Stabilität / Kompatibilität zu erhöhen
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

OMIT

Hallo, erstmal vielen Dank für die Mühe mit dem Modul.

Eine Sache ist mir noch aufgefallen, oder ich habe es nicht richtig verstanden.
Jede neue Liste muss ich erst in Fhem anlegen, und im Anschluss ein CMD im Telegram Bot einsetzten, um diese Liste zu bearbeiten? Eine Möglichkeit aus dem Chat Heraus eine Neue Liste zu erstellen gibt es nicht?!

Danke & Gruß

viegener

@OMIT: Ja das ist richtig, das dynamische Anlegen von Listen ist über entsprechende Kommandos in Favoriten des TelegramBots möglich, ist aber nicht Teil des TBot_List-Moduls

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

Parador

Hi und vielen Dank für die Klasse Idee!
Ich bin heute der Anleitung im ersten Post gefolgt und habe lediglich die Namen der einzelnen Listen noch ein wenig angepasst...
Ich kann in Telegram die Liste aufrufen und bekomme den Hinweis sie sei leer...
Im Anschluss bekomme ich aber noch eine Art Status-Meldung, wie der FHEM Befehl lautete und das das Ergebnis OK sei...
Wenn ich dann "hinzu" wähle, kommt zuerst eine Nachricht, dass ich einen "Neuen Eintrag eingeben:" kann gefolgt von einer automatischen Antwort.. wenn ich dort etwas eingebe z.B. "Test" und auf Senden klicke wird die Nachricht verschickt, aber nicht in die Liste aufgenommen...
Im Log habe ich folgendes gefunden:
2019.09.25 21:29:12 1: PERL WARNING: Scalar value @args[0] better written as $args[0] at ./FHEM/95_PostMe.pm line 1018.
2019.09.25 21:29:12 1: PERL WARNING: Scalar value @args[0] better written as $args[0] at ./FHEM/95_PostMe.pm line 1084.
2019.09.25 21:29:39 1: PERL WARNING: Use of uninitialized value $res in lc at ./FHEM/95_PostMe.pm line 191.

viegener

@Parador: Aus Deinen Angaben ist für mich noch nicht rauszufinden warum es bei Dir nicht geht.

Vermutlich wäre mal ein List des PostMe-Devices und auch des TBot_List devices sinnvoll, denn der Telegram-Teil scheint ja prinzipiell zu laufen.

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

Parador

Kein Problem, hier liefere ich gerne nach! Danke für die Unterstützung!

List testlistbot:
Internals:
   CFGFN     
   DEF        telegram_postme telegram_postme_list
   FUUID      5d8bc03b-f33f-71bb-566b-1e838b2006276bc6
   NAME       testlistbot
   NOTIFYDEV  global,TYPE=TelegramBot
   NR         58139
   NTFY_ORDER 50-testlistbot
   STATE      Defined
   TYPE       TBot_List
   listname   telegram_postme_list
   listno     1
   postme     telegram_postme
   getoptions:
     count     
     list       
     queryAnswer
     textList   
   inlinechats:
     TelegramBot2_2vwxyz742_chat 2vwxyz742
     TelegramBot2_2vwxyz742_textmsg Listetelegram_postme_lististleer
   setoptions:
     end       
     reset     
     start     
Attributes:
   telegramBots TelegramBot2


Und List des PostMe-Devices:
Internals:
   CFGFN     
   FUUID      5d8bc008-f33f-71bb-d409-913dcdda162e87d7
   NAME       telegram_postme
   NR         58123
   STATE      Initialized
   TYPE       PostMe
   mayBeVisible 1
   READINGS:
     2019-09-25 21:29:39   postme01Cont   
     2019-09-25 21:29:39   postme01Name    telegram_postme_list
     2019-09-25 21:29:39   postmeCnt       1
     2019-09-25 21:29:12   state           Initialized
Attributes:


Achja, und noch eine Ergänzung:
Ich habe auch mit den event-on-*-reading Attributen herumgespielt. Ich hatt ursprünglich nur "state" & "msgtxt" drinnenstehen, für das Modul aber auch die genannten:
Attributes:
   event-on-change-reading state, sentMsgId, msgReplyMsgId
   event-on-update-reading msgText, sentMsgId, msgReplyMsgId



viegener

Zitat von: Parador am 26 September 2019, 18:46:40
Achja, und noch eine Ergänzung:
Ich habe auch mit den event-on-*-reading Attributen herumgespielt. Ich hatt ursprünglich nur "state" & "msgtxt" drinnenstehen, für das Modul aber auch die genannten:
Attributes:
   event-on-change-reading state, sentMsgId, msgReplyMsgId
   event-on-update-reading msgText, sentMsgId, msgReplyMsgId


Das könnte der entscheidende Hinweis sein. Kannst Du die Attribute bitte mal löschen?
Hintergrund: Es werden dadurch events unterdrückt. Die Verbindung mit Postme bzw. TBot_List zum Bot erfolgt aber über events. wenn keine Events kommen, wird auch nichts an der Liste geändert.

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

Parador

Hallo viegener,

danke für den Hinweis, ich hab die event-on... einträge entfernt und nun läufts...
da hatte ich die Infos falsch verstanden, dachte sentMsgId & msgReplyMsgId müssten dort eingetragen werden.
Warum ich state & msgText schon drinnen hatte, kann ich gar nicht mehr sagen....

Kannst Du mir noch einen Tipp geben, woher die Befehlsbestätigung (siehe mein Screenshot) kommt?

viegener

Zitat von: Parador am 29 September 2019, 13:00:41
Hallo viegener,

danke für den Hinweis, ich hab die event-on... einträge entfernt und nun läufts...
da hatte ich die Infos falsch verstanden, dachte sentMsgId & msgReplyMsgId müssten dort eingetragen werden.
Warum ich state & msgText schon drinnen hatte, kann ich gar nicht mehr sagen....

Kannst Du mir noch einen Tipp geben, woher die Befehlsbestätigung (siehe mein Screenshot) kommt?

Die Befehlsbestätigung kommt aus dem TelegramBot. Wenn Du nur Fehlermeldungen und keine Erfolgsmeldungen willst, kannst Du im Telegram Bot das Attribut cmdReturnEmptyResult auf 0 setzen.

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


Freee84neu

Hallo

Danke das Devise ist echt Klasse! Super Arbeit. Hat mir echt geholfen.

Was ich noch cool finden würde, wäre eine Attr. oder so das neue "Nachrichten oder Änderungen leise (silent) zugestellt werden.


Gruß Mike

Freee84neu

Hallo

Noch eine Frage in die Runde.

Mache ich set TBot_List start Telegramm 1xxxx (Privatnummer)

Bekomme ich meine Liste in eine Privaten Chat alles läuft
Bei OK kommt eine List
Bei ändern klappt alles
Bei hinzu klappt auch alles

Mache ich set TBot_List start Telegram -2xxxx (Gruppennummer)
Bekomme ich meine Liste in einen Gruppen Chat!

Bei OK und ändern kommt

TBot_List_handler: TBot_List - Telegram  ERROR no msgId known for peer :1xxxxxxxx: chat :1xxxxxxxxx:  cmd :list_menu: 
2020.12.30 19:23:55 1: TBot_List_handler: TBot_List - Telegram  ERROR no msgId known for peer :1xxxxxxxxx: chat :1xxxxx:  cmd :list_menu: 
2020.12.30 19:23:55 1: TBot_List_handler: TBot_List - Telegram  ERROR no msgId known for peer :1xxxxxxxx: chat :1xxxxx:  cmd :list_ok:


Bei hinzu bekomme ich eine private Nachricht und kann hinzufügen

Kann mir da jemand auf die Sprünge helfen warum das so ist.

viegener

Zitat von: Freee84neu am 30 Dezember 2020, 19:50:40
Hallo

Noch eine Frage in die Runde.

Mache ich set TBot_List start Telegramm 1xxxx (Privatnummer)

Bekomme ich meine Liste in eine Privaten Chat alles läuft
Bei OK kommt eine List
Bei ändern klappt alles
Bei hinzu klappt auch alles

Mache ich set TBot_List start Telegram -2xxxx (Gruppennummer)
Bekomme ich meine Liste in einen Gruppen Chat!

Bei OK und ändern kommt

TBot_List_handler: TBot_List - Telegram  ERROR no msgId known for peer :1xxxxxxxx: chat :1xxxxxxxxx:  cmd :list_menu: 
2020.12.30 19:23:55 1: TBot_List_handler: TBot_List - Telegram  ERROR no msgId known for peer :1xxxxxxxxx: chat :1xxxxx:  cmd :list_menu: 
2020.12.30 19:23:55 1: TBot_List_handler: TBot_List - Telegram  ERROR no msgId known for peer :1xxxxxxxx: chat :1xxxxx:  cmd :list_ok:


Bei hinzu bekomme ich eine private Nachricht und kann hinzufügen

Kann mir da jemand auf die Sprünge helfen warum das so ist.

Das ist ein wenig komplizierter:

- Was jetzt bereits geht, wenn Du in einer Gruppe als Person eine Nachricht an den Bot als Kommand sendest ohne peerIds zu setzen. Also z.B. ein Favorit mit dem Wert: set TBot_List start Telegramm

- Wenn es auch direkt als FHEM-Kommando funktionieren soll, dann muss ich eine Änderung machen. Dann muss allerdings sowohl die Gruppenid (in Deinem Fall -2xxx) und die peerID (in Deinem Fall 1xxx) angegeben werden.
Dazu habe ich eine neue Version erstellt bei der innerhalb von FHEM so etwas wie
set TBot_List start Telegramm 1xxx -2xxx funktionieren sollte

Die neue Version sollte morgen im Update sein
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Freee84neu

Hi...

Wow gleich eine andere andere Version vielen Dank.

Vielen Dank für so viel Arbeit. Möchte nicht undankbar klingen
Aber vielleicht klappt das auch mit dem silent Mode 🙈 ....

Aber vielen vielen Dank

Mike

viegener

Zitat von: Freee84neu am 01 Januar 2021, 02:31:56
Hi...

Wow gleich eine andere andere Version vielen Dank.

Vielen Dank für so viel Arbeit. Möchte nicht undankbar klingen
Aber vielleicht klappt das auch mit dem silent Mode 🙈 ....
- v
Aber vielen vielen Dank

Mike

In der nächsten Version (kommt morgen per update) gibt es eine Option silentStart - bitte probiere die mal aus und melde Dich
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Freee84neu

Hi

Der silentStart läuft aber nicht silent. Kommt als Normale laute Nachricht rein

Das mit der Gruppen Funktion kann ich leider erst Später checken.
Ist eine Abfrage für unsere Freiwillige Feuerwehr da muss ich erst alles absprechen.
Sonst fahren sie nachher los und denken ist ein Einsatz 😂

Aber vielen Dank schon mal

viegener

Zitat von: Freee84neu am 03 Januar 2021, 22:36:57
Hi

Der silentStart läuft aber nicht silent. Kommt als Normale laute Nachricht rein

Das mit der Gruppen Funktion kann ich leider erst Später checken.
Ist eine Abfrage für unsere Freiwillige Feuerwehr da muss ich erst alles absprechen.
Sonst fahren sie nachher los und denken ist ein Einsatz 😂

Aber vielen Dank schon mal

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

Freee84neu

Hi

Hab ein Update gemacht...

Und nochmals versucht. Kommt immer noch als Laute Nachricht rein.

Mike

viegener

Zitat von: Freee84neu am 05 Januar 2021, 02:26:41
Hi

Hab ein Update gemacht...

Und nochmals versucht. Kommt immer noch als Laute Nachricht rein.

Mike

Das UPdate kommt üblicherweise erst am nächsten Morgen, so dass Du vermutlich nachwievor die selbe Version hast. Du kannst das beim Update auch sehen, wenn das entsprechende Modul nicht aufgelistet ist, wird es auch nicht verändert (Alternativ beim updatecheck).
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Freee84neu

Hi


::) Denke da war ich wohl zu schnell  :D ... der silentStart klappt wunderbar. Vielen Dank 🙏

Mike

dirk.k

Hallo,
1. DANKE!!
2. Ich hätte einen Feature Request... und hoffe, dass diese sehr nützliche Funktion weiter entwickelt wird ...
Ich hatte wiederholt Einträge aus einer langen Liste gelöscht, welche ich mir etwas später gern noch mal angesehen hätte.
Daher habe ich mit den wenigen Programmierkenntnissen, die ich habe, etwas gebastelt.
Anstatt eine Zeile zu löschen, wird diese um ACK-* erweitert und an das Ende der Liste geschoben.
Das funktioniert zwar, muss aber nach dem Update immer wieder eingebaut werden. (ok, ich könnte das Modul vom update ausschließen ... will ich aber nicht)
Außerdem kann ich die Funktion nicht steuern und habe sie in allen Listen. Ein Parameter/Reading/Atribut zum Aktivieren der Funktion wäre klasse, bekomme ich aber nicht hin...
... gibt es eine Chance? gern kann ich versuchen zu unterstützen... ;-)

PS: ist die Todo/Einkaufs-Liste auch für signal geplant oder gar schon verfügbar? 

viegener

Zitat von: dirk.k am 27 Januar 2022, 20:41:02
Hallo,
1. DANKE!!
2. Ich hätte einen Feature Request... und hoffe, dass diese sehr nützliche Funktion weiter entwickelt wird ...
Ich hatte wiederholt Einträge aus einer langen Liste gelöscht, welche ich mir etwas später gern noch mal angesehen hätte.
Daher habe ich mit den wenigen Programmierkenntnissen, die ich habe, etwas gebastelt.
Anstatt eine Zeile zu löschen, wird diese um ACK-* erweitert und an das Ende der Liste geschoben.
Das funktioniert zwar, muss aber nach dem Update immer wieder eingebaut werden. (ok, ich könnte das Modul vom update ausschließen ... will ich aber nicht)
Außerdem kann ich die Funktion nicht steuern und habe sie in allen Listen. Ein Parameter/Reading/Atribut zum Aktivieren der Funktion wäre klasse, bekomme ich aber nicht hin...
... gibt es eine Chance? gern kann ich versuchen zu unterstützen... ;-)

PS: ist die Todo/Einkaufs-Liste auch für signal geplant oder gar schon verfügbar? 


Ich bin nicht sicher ob ich Deinen Feature Request verstehe - wenn die Einträge gelöscht werden sollen, möchte ich doch gerade nicht, dass die Einträge erhalten bleiben. Ich vermute, Du möchtest während des Einkaufens die Einträge sozusagen abhaken?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

dirk.k

Genau.
Abhaken, aber nicht gleich löschen.
Das habe ich gerade gebastelt. ich schreibe einen Marker vor den Eintrag und verschiebe ihn nach hinten.

viegener

@dirk.k: Ich habe heute eine neue Version eingecheckt, die eine solche Funktion enthält. Diese erlaubt Einträge als erledigt (achnowledge) zu kennzeichnen, dafür gibt es ein Attribut um dies einzuschalten. Man kann auch verschiedene Katgorien (categories) angeben die bei einem Eintrag als Prefix verwendet werden können.

Ich verwende testweise die Kategorien um einen Einkaufszettel für verschiedene Geschäfte zu teilen.

Sollte morgen im Update kommen - Rückmeldung erwünscht
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Wasserwerk33

Also da meins nun Funktoniert bin ich begeistert und kann auch direkt sagen das das mit dem Eledigt super ist. Was noch Cool wäre wenn man dann auf Erledigt oder was man sich dann ausgesucht hat, sich der eintrag nach einer bestimmten Zeit automatisch löscht. 2h oder selbstdefiniert.

Ich weiß das gehört erjar zu PostMe aber vielleicht hat ja einer hier so etwas. Eine seperate Liste für den Baumarkt und eine für den normalen Einkauf und kann mir sagen wie er dieses realisiert hat. Oder benötige ich 2 mal PostMe? Ein mal für den Baumkart und ein mal für den Einkauf?


Danke für die Hilfe und das Modul

viegener

Zitat von: Wasserwerk33 am 05 April 2022, 08:50:49
Also da meins nun Funktoniert bin ich begeistert und kann auch direkt sagen das das mit dem Eledigt super ist. Was noch Cool wäre wenn man dann auf Erledigt oder was man sich dann ausgesucht hat, sich der eintrag nach einer bestimmten Zeit automatisch löscht. 2h oder selbstdefiniert.

Ich weiß das gehört erjar zu PostMe aber vielleicht hat ja einer hier so etwas. Eine seperate Liste für den Baumarkt und eine für den normalen Einkauf und kann mir sagen wie er dieses realisiert hat. Oder benötige ich 2 mal PostMe? Ein mal für den Baumkart und ein mal für den Einkauf?


Danke für die Hilfe und das Modul

Das mit dem automatischen Löschen klingt nach einer netten Idee - ist aber so nicht realisierbar, da bisher die Einträge nicht mit Zeitstempeln versehen sind, also weiss das Modul erstmal nicht, wann ein Eintrag erledigt wurde

Separate Listen lassen sich auch über Kategorien machen - denn ausser "erledigt" können ja auch weitere Kategoriern angelegt werden, die dann auf einer Liste mit entsprechendem Präfix erscheinen - zum Beispiel über die Angabe von 2 Kategorien - "B" und "L" für Baumarkt bzw. Lebensmittel

Ich schaue mal nach einer Möglichkeit EInträge einer Kategorie aus der Liste zu löschen, das liesse sich in TBOT_List einbauen
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Wasserwerk33

Hi

Mir ist ein Fehler oder Problem aufgefallen. Wenn ich in meiner Einkaufsliste etwas lösche, ist dieses erst weg aus der Liste. Auch in Fhem, aber nach einiger Zeit ist dieses wieder drin. Es ist auch egal ob es meine Frau oder ich lösche. Wenn wir mit der Einkaufsliste fertig sind klicken wir auch immer auf okay. Meine Frau hat mir dieses am Mittwoch Abend schon gesagt, dachte es wäre ein bedienungsfehler, leider ist es mir aber heute auch aufgefallen.

Hat jemand das selbe Problem?

dirk.k

Funktioniert super.
Danke.
... wenn man jetzt noch die Bestätigung für das "auf erledigt setzen" deaktivieren könnte ...

Das mit dem "verschwinden und wiederkommen" konnte ich nicht nachvollziehen.