DOIF-Abfall-Status per TelegramBot senden

Begonnen von Dr. Boris Neubert, 02 Mai 2026, 16:35:50

Vorheriges Thema - Nächstes Thema

Dr. Boris Neubert

Hallo,

ich habe meine ersten Gehversuche mit DOIF gemacht, und Zeit bis zur Müllabfuhr aus dem Wiki realisiert (Bildchen im Anhang).

Jetzt möchte ich mir jeden Tag diesen Status mit den Tonnenbildchen per TelegramBot schicken.

So weit bin ich gekommen:

defmod diAbfall DOIF ([+00:01]) (set telegram send @meinHandle Status: [dbAbfall:state])
Der schickte mir nach einer Minute zuverlässig Status: initialized.

Wie bekomme ich denn bitte das Bildchen mit den drei Tonnen?

Viele Grüße
Boris
FHEM-Developer seit 2007, Mitgründer und Förder-Mitglied des FHEM e.V.
Bitte keine unaufgeforderten privaten Nachrichten!

Damian

Versuche es mit der neuen Funktion ui_Table::get_uiTable("diAbfall") siehe: https://forum.fhem.de/index.php?topic=144559.0

Diese liefert den HTML-Code, den du benötigst. Sollte auch mit get diAbfall html gehen
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Dr. Boris Neubert

Danke, Damian.

ui_Table::get_uiTable("dbAbfall") liefert mir HTML-Kode, und zwar <table>...</table>.

Der Befehl zum Senden ist

set telegram cmdSend @meinHandle { ui_Table::get_uiTable("dbAbfall") }
wobei attr telegram parseModeSend 2_HTML gesetzt ist.

Das führt jedoch zu der Meldung, dass der Start-Tag <table> nicht geparst werden kann. <table> wird von Telegram grundsätzlich nicht verarbeitet. Das steht in der API-Referenz und lässt sich auch leicht mit

set telegram message @meinHandle <table><tr><td>foo</td></tr></table>
verifizieren.
FHEM-Developer seit 2007, Mitgründer und Förder-Mitglied des FHEM e.V.
Bitte keine unaufgeforderten privaten Nachrichten!

Damian

Dann muss ich wohl noch einen Befehl ohne Table programmieren.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Damian

Zitat von: Damian am 03 Mai 2026, 12:21:30Dann muss ich wohl noch einen Befehl ohne Table programmieren.

Allerdings sind fast alle Beispiele als Tabelle definiert - auch dieses Abfall-Beispiel. Die müsste man erst mal umschreiben. Dann kann man auch gleich selbst mit Hilfe der vordefinierten uiTable-Funktionen (hier ui_Table::style und ui_Table::ic) sich seinen HTML-Code zusammen bauen.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

jkriegl

Da hänge ich mich dran.
plotAsPng funktioniert mit SVGs.
Rpi 3/4, buster, Fhem, Cul 868, HM-CC-RT-DN, HM-Sec-Sco, HM-ES-PMSw1-Pl, ebus (Vaillant), ECMD, Telegram, HTTPMOD, Xiaomi, Shelly