Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend

Begonnen von marvin78, 27 Oktober 2017, 16:26:48

Vorheriges Thema - Nächstes Thema

marvin78

Nach ein wenig Recherche nutzt du wohl eine zu alte SSL Version auf deinem Server. Was du tun kannst, beantwortet dir google und die entsprechenden Stellen aber besser als ich.

sprudelverduenner

#46
im meinem Fall betreibe ich einen raspberry pi.

du meinst die SSL Version von der Linux Distribution ?

Sorry, bin nicht der Linux Profi...
FHEM @ RaspberryPi 3, HMLAN, HMUART + HMRS485, Homematic, ESPEasy @ Sonoff / Shelly / ESP8266, ZigBee @ CC2531
Echo Dot, Dreambox, Yamaha MusicCast, Logitech Hub, LW-12, LD382
FRITZ!Box 7590 AX, Mesh @ FRITZ!Repeater 2400, FRITZ!Fon, iPhone 13, iPad Air 5, AppleWatch 8

marvin78

Ich weiß zu wenig über dein System und bin auch kein ausgewiesener Linux Experte.

sprudelverduenner

Danke für Deine Hinweise.

Ich habe gestern erst einmal mein Debian Wheezy auf dem RasPi auf Jessie upgegradet.
Dort bliebt allerdings der Fehler bestehen.

Dann habe ich eben einen Hinweis gefunden mit
sudo apt-get install libio-socket-ssl-perl
das Paket nach zu installieren.

Jetzt läuft bei mir Dein Modul....
FHEM @ RaspberryPi 3, HMLAN, HMUART + HMRS485, Homematic, ESPEasy @ Sonoff / Shelly / ESP8266, ZigBee @ CC2531
Echo Dot, Dreambox, Yamaha MusicCast, Logitech Hub, LW-12, LD382
FRITZ!Box 7590 AX, Mesh @ FRITZ!Repeater 2400, FRITZ!Fon, iPhone 13, iPad Air 5, AppleWatch 8

marvin78

Es wird empfohlen bei jeder FHEM Installation auch IO::Socket::SSL zu installieren. Deshalb habe ich es für das Modul nicht explizit erwähnt. Ich habe es aber vorne ergänzt.

marvin78

Aufgrund eines issues im git: Es gibt einen neuen set Befehl "closeTask". Dieser unterscheidet sich von "completeTask" wie folgt:

Zitatregular task is completed and moved to history, subtask is checked (marked as done, but not moved to history), recurring task is moved forward (due date is updated).

pula

fhem (debian auf proxmox), HM-LAN und wired, MySensors, FritzBoxes, Kodi, vdr, Onkyo, squeezeplayers, nanoCUL, wifilight (Ethernet-Bridge), Heizungssteuerung (python/vncdotool), doorpi, ESP/Arduinos/MQTT, Alexa, HomeConnect, Sonoff/Tasmota, espRGBWW, esphome, Telegram

marvin78

Durch Attribut "showIndent" kann ab sofort auch das indent (Einrücken) eines Tasks in einem Reading dargestellt werden. Die Stufe der Einrückung wird als Integer angezeigt. Das kann für Steuerungen aber auch für etwaige Frontends verwendet werden.

marvin78

Natürlich würde man, wenn man "sortTasks" verwendet (verwende ich nicht, deshalb habe ich das zunächst vergessen) auch noch die "order" benötigen, da man sonst den Subtask nicht zuordnen kann. Dazu habe ich noch das Attribut "showOrder" eingeführt.

marvin78

Die parent_id eines items wird nun ausgelesen. Setzen geht aber über die API leider nur im update. Will man also einem Task einen parent zuweisen, muss man zuerst createTask und dann updateTask aufrufen. indent wird in dem Fall automatisch um 1 zum parent erhöht.

marvin78

Neues Attribut: "avoidDuplicates"

Setzt man es auf 1, wird auf gleiche Titel in der vorhandenen Taskliste gecheckt und das hinzufügen von Duplikaten verhindert.

pula

Hallo,

ich habe hier https://forum.fhem.de/index.php/topic,82883.0.html ein widget für ftui für todoist gebastelt. Vielleicht möchte es ja jemand testen?

@marvin78: Beim Erstellen bin ich auf folgendes Problem gestoßen:
Das Modul erstellt für jeden Task ein eigenes Reading, da wird dann aber (scheinbar) kein event gefeuert, das ftui versteht. ein event-on-change-reading bringt hier auch nichts. Es gibt natürlich auch das Reading listText, aber wenn ein Task einen Beistrich enthält, gibts hier Probleme   :( Hast Du dazu evtl eine Idee? Danke übrigens für das avoidDuplicates - erspart eine Menge Probleme  8)

Cheers,

Pula
fhem (debian auf proxmox), HM-LAN und wired, MySensors, FritzBoxes, Kodi, vdr, Onkyo, squeezeplayers, nanoCUL, wifilight (Ethernet-Bridge), Heizungssteuerung (python/vncdotool), doorpi, ESP/Arduinos/MQTT, Alexa, HomeConnect, Sonoff/Tasmota, espRGBWW, esphome, Telegram

marvin78

Die Tasks werden immer gelöscht und neu geschrieben. Das ist ggf. der Grund für das Problem. Das lässt sich aber nicht anders machen. Auf count könnte man triggern, ist aber ggf. bei Update nicht hilfreich. Was ist das Problem mit listText genau? Das habe ich nicht verstanden.

Edit: Ach du kommst aus Österreich, richtig? ;) Tasks sollten kein Komma enthalten. Dafür gibt es mehrere Gründe. Warum enthalten deine Tasks ein Komma?

Edit2: Du könntest ggf. auf error triggern. Das wird immer gesetzt und ggf. auf none gesetzt (dann mit event-on-update-reading). Zum Komma nochmal: Ich hänge da in listText nicht dran, ich könnte auch rein auf Leerzeichen umstellen. Allerdings weiß ich nicht, ob hier andere ein Problem bekommen. Es könnte ggf. die Sprachausgabe (für die das Reading ursprünglich mal gedacht war) verändern. Ich bin auch bereit, ein komplett neues Reading zu setzen, das bei jeder Änderung einen eindeutigen Wert setzt.

marvin78

Ich habe eine Version angehängt, die ein ganz rudimentäres Widget als weblink enthält. Einbinden per

defmod <NAME> weblink htmlCode {todoist_Html("<TODOIST_DEVICE>")}

Die todoist.js Datei muss dazu in das Verzeichnis

<FHEM-PFAD>/www/pgm2/

Edit: Anhänge entfernt. Widget ist mittlerweile in der Version im git.

pula

Hallo,

Wow bist du schnell, danke!
Würde das aber trotzdem gerne als ftui Widget machen.
Was hältst du denn von folgender Idee:
Ein neues Attribut (zb listDivider), mit dem man die Trennzeichen nach Bedarf einstellen kann?
Wenn man hier z.B. #! einstellt, sollte man auf der sicheren Seite sein.
Und alle, die das nicht brauchen, haben weiter als default das Komma.
Wäre so eine Idee und bei einem divider aus mehreren Zeichen könnte eigentlich nichts mehr schief gehen.
Und ja, ich komme aus Österreich  :)

Cheers,
Pula
fhem (debian auf proxmox), HM-LAN und wired, MySensors, FritzBoxes, Kodi, vdr, Onkyo, squeezeplayers, nanoCUL, wifilight (Ethernet-Bridge), Heizungssteuerung (python/vncdotool), doorpi, ESP/Arduinos/MQTT, Alexa, HomeConnect, Sonoff/Tasmota, espRGBWW, esphome, Telegram