FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: marvin78 am 27 Oktober 2017, 16:26:48

Titel: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 27 Oktober 2017, 16:26:48
Als Alternative zum sicher bald auslaufenden wunderlist Dienst und dem dazugehörigen wunderlist-Modul (https://forum.fhem.de/index.php/topic,55842.0.html) habe ich mir nach langem Überlegen todoist ausgesucht und ein Modul entwickelt, welches ganz eng am Modul für wunderlist ausgerichtet ist. Wer also das wunderlist-Modul verwendet hat, wird sich schnell zurecht finden. Die Hilfe befindet sich im Modul. Es werden folgende Perl-Module benötigt:

IO::Socket::SSL,JSON, Data::Dumper, Digest::MD5, Date::Parse und Data::UUID

Die Definition erfolgt folgendermaßen:

define <name> todoist <PROJECT-ID>

Die PROJECT-ID könnt ihr ggf. der URL in der todoist Browser-App entnehmen. Angenommen, die URL lautet

Zitathttps://todoist.com/app?lang=de#project%2F123456789

dann entnehmt ihr die Projekt-ID für das todoist DEF: 123456789

Um die API abfragen zu können benötigt ihr einen API-Token oder API Symbol. Das findet ihr in todoist unter "Einstellungen" -> "Integration". Der Token wird FHEM per

set <name> accessToken <API Symbol>

bekannt gemacht und kann auch geändert werden. Der Token wird am für solche Dinge üblichen Ort im FHEM-Verzeichnis abgelegt.

Das Modul wird zusammen mit einem FHEMWEB weblink-Widgets als Frontend geliefert (siehe Anlage).

Der weblink wird dann bspw. so definiert:

define Einkaufsliste weblink htmlCode {todoist_Html("todoist_Einkaufsliste")}

für eine spezielle Liste. Dabei muss todoist_Einkaufsliste durch euer todoist-Device ersetzt werden.

define Einkaufslisten weblink htmlCode {todoist_Html()}

für alle Listen im fhem-System nebeneinander oder

define Einkaufslisten weblink htmlCode {todoist_Html('NAME=Einkauf.*')}

für eine Auswahl an Listen mit devspec Filter.

Feedback ist gerne gesehen, Support zum Modul gibt es hier (nicht in Echtzeit), Support zu todoist oder der API nicht (da gibt es bessere Quellen). Möglicherweise sind noch einige Bugs im System. Bei mir läuft es einige Zeit stabil, ich garantiere jedoch für nichts ;) 


Bei mir kommt das Modul zum Einsatz um unsere Einkaufsliste(n) auch von FHEM aus füllen und abfragen zu können. Es gibt sicher weitere Möglichkeiten. Die Einkaufsliste ist aber natürlich die naheliegende Variante.

Erledigte Aufgaben können nur von Premium-Usern gelesen werden. Für Standard-User gibt die API hier nichts her. Ich habe nicht getestet, was passiert, wenn man kein Premium-User ist. Vermutlich gibt es nur eine Fehlermeldung. Es gibt keine Verprobung auf den Status des Users.

Das Modul wird seit dem 15.01.2019 über FHEM-Update verteilt.


Beispiele:

Setze einen neuen Punkt auf die Einkaufsliste:

set Einkaufsliste addTask 3 Brötchen

Setze einen neuen Punkt auf die Einkaufsliste und setze ein Fälligkeitsdatum:
set Einkaufsliste addTask 3 Brötchen dueDate=2017-01-13
set Einkaufsliste addTask Milch due_date=morgen


Ändere einen Punkt auf der Einkaufsliste (mit todoist-ID):
set Einkaufsliste updateTask ID:12345678 title='5 Brötchen' dueDate='2017-01-12'

Ändere einen Punkt auf der Einkaufsliste (suche Task anhand von Titel):
set Einkaufsliste updateTask TITLE:Brötchen title='5 Brötchen' dueDate='2017-01-12'

Ändere einen Punkt auf der Einkaufsliste (mit FHEM-ID):
set Einkaufsliste updateTask 2 title='5 Brötchen' due_date='2017-01-12'
set Einkaufsliste updateTask 3 title='5 Brötchen' remove=dueDate


Einen schon erledigten Task auf unerledigt setzen (mit todoist-ID):
set Einkaufsliste uncompleteTask ID:12345678

Einen schon erledigten Task auf unerledigt setzen (suche Task anhand von Titel):
set Einkaufsliste uncompleteTask TITLE:Brot

Einen schon erledigten Task auf unerledigt setzen (mit FHEM-ID):
set Einkaufsliste uncompleteTask 5

Hake einen Punkt auf der Einkaufsliste ab (mit todoist-ID):
set Einkaufsliste completeTask ID:12345678

Hake einen Punkt auf der Einkaufsliste ab (suche Task anhand von Titel):
set Einkaufsliste completeTask TITLE:Milch

Hake einen Punkt auf der Einkaufsliste ab (mit FHEM-ID):
set Einkaufsliste completeTask 3

Lösche einen Punkt von der Einkaufsliste (suche Task anhand von Titel):
set Einkaufsliste deleteTask TITLE:Käse

Lösche einen Punkt von der Einkaufsliste (mit todoist-ID):
set Einkaufsliste deleteTask ID:12345678

Lösche einen Punkt von der Einkaufsliste (mit FHEM-ID):
set Einkaufsliste deleteTask 3

Lösche alle Tasks
set Einkaufsliste clearList
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: fretti am 27 Oktober 2017, 23:40:05
Hallo,

Modul funktioniert auch bei mir, danke dafür.

Ist den auch ein Widget für FTUI geplant, oder wie kann man etwas in der Art wie
https://forum.fhem.de/index.php?topic=76643.0 (https://forum.fhem.de/index.php?topic=76643.0)
umsetzen?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: marvin78 am 28 Oktober 2017, 10:00:14
Von mir kommt nur das Modul. Wenn das, was du da zeigst, für wunderlist funktioniert hat, sollte es auch mit todoist funktionieren.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: mahowi am 28 Oktober 2017, 10:24:35
Danke fürs Modul. Funktioniert bestens, wie vorher auch schon mit Wunderlist.

Ich habe im "Icons"-Thread (https://forum.fhem.de/index.php/topic,12605.msg705658.html#msg705658) mal SVGs mit den Logos von Wunderlist und Todoist hochgeladen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: marvin78 am 28 Oktober 2017, 10:36:22
Danke dafür.


Bezüglich TUI Oberfläche: Die Intention für das Modul ist NICHT die Oberfläche der entsprechenden Apps oder Webanwendungen zu ersetzen (wie auch schon beim wunderlist-Modul) sondern die, Automationen mit FHEM möglich zu machen (bei uns ist das das Ansagen der Liste und die Aufnahme von Tasks per Sprache). Wenn sich natürlich jemand berufen fühlt, dazu eine Oberfläche zu bauen, sehr gerne. Von mir wird dazu allerdings nichts kommen.


Kleiner Tipp Am Rande: todoist wird auch von IFTTT unterstützt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: marvin78 am 28 Oktober 2017, 15:24:19
Kleines Update im ersten Post. Es gab noch einen Bug bei der Sortierung nach Alphabet und ich habe ein Attribut "showPriority" eingeführt. Dieses steht default auf 0 (nicht zeigen).
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: Ma_Bo am 28 Oktober 2017, 17:48:29
Habe das Modul noch nicht getestet, aber vorab mal ne frage:
Wie ist das Aktualisierungsintervall und ist es einstellbar, wie wäre der kleinste Intervall ?

Grüße Marcel


Tapatalk iPhone, daher kurz gehalten.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: marvin78 am 28 Oktober 2017, 19:55:00
Wie bei wunderlist auch. Per Attribut einstellbar. Bin unterwegs und nicht sicher, was das Minimum ist. Ein at mit getTasks geht aber immer. Intern wird auch nichts anderes verwendet. Wie oft möchtest du denn abrufen? Ich vermute,  dass die API bei gewissen Frequenzen versagt bzw. gesperrt wird.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: Ma_Bo am 28 Oktober 2017, 20:00:36
Die Anbindung an ifttt ist interessant, dann könnte man Dinge von ifttt an FHEM senden... [emoji6]

Offtopic:

Ich versuche im Moment nen vernünftigen und sicheren Weg von ifttt etwas an FHEM zu bekommen, möglichst ,,realtime", wobei das mit deinem Modul wahrscheinlich nicht möglich sein wird.

Ich lese auch gerade viel über SLACK, mal schauen was da evtl. machbar wäre, leider bin ich im programmieren ne 0.

Grüße Marcel


Tapatalk iPhone, daher kurz gehalten.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: marvin78 am 29 Oktober 2017, 09:50:09
Die neue Version erlaubt das Heruntersetzen des pollintervals auf 60 Sekunden. Außerdem können completed Tasks gelesen werden (Attribut: getCompleted).


Achtung: erledigte Aufgaben können nur von Premium-Usern gelesen werden. Für Standard-User gibt die API hier nichts her. Ich habe nicht getestet, was passiert, wenn man kein Premium-User ist. Vermutlich gibt es nur eine Fehlermeldung. Es gibt keine Verprobung auf den Status des Users.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: Cobra am 29 Oktober 2017, 20:44:58
Hallo Marvin,

erst einmal danke für das Modul.

Hab es eingerichtet und funktioniert perfekt.

Einzig was mir aufgefallen ist:

Wenn eine Liste leer ist dann kommt bei jedem Abruf folgende Meldung im Log:

2017.10.29 20:40:06 1:     main::__ANON__                      called by fhem.pl (691)
2017.10.29 20:40:06 1:     main::todoist_GetTasksCallback      called by FHEM/HttpUtils.pm (562)
2017.10.29 20:40:06 1:     main::readingsBulkUpdate            called by ./FHEM/98_todoist.pm (670)
2017.10.29 20:40:06 1: stacktrace:
2017.10.29 20:40:06 1: readingsUpdate(TDI.Einkaufsliste,listText,-) missed to call readingsBeginUpdate first.
2017.10.29 20:40:06 1:     main::__ANON__                      called by fhem.pl (691)
2017.10.29 20:40:06 1:     main::todoist_GetTasksCallback      called by FHEM/HttpUtils.pm (562)
2017.10.29 20:40:06 1:     main::readingsBulkUpdate            called by ./FHEM/98_todoist.pm (579)
2017.10.29 20:40:06 1: stacktrace:
2017.10.29 20:40:06 1: readingsUpdate(TDI.Einkaufsliste,count,0) missed to call readingsBeginUpdate first.
2017.10.29 20:40:06 3: todoist (TDI.Einkaufsliste): no data


Kann das irgendwie noch geändert werden (außer dass ich jetzt Verbose auf 0 setze)?
Hab jetzt erstmal etwas in die Einkaufsliste gesetzt was dauerhaft drin steht um die Meldung zu umgehen.

Gruß Cobra
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: marvin78 am 29 Oktober 2017, 21:24:46
Das sollte in der aktuellen Version von heute Nachmittag schon gefixt sein.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: Cobra am 29 Oktober 2017, 21:32:03
Perfekt, gerade getestet.

Jetzt steht nur noch:

2017.10.29 21:30:26 3: todoist (TDI.Einkaufsliste): no data

Das passt soweit  :D

Danke

Gruß Cobra
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM
Beitrag von: marvin78 am 29 Oktober 2017, 21:34:19
So soll es sein. Danke für's Testen!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 30 Oktober 2017, 08:08:42
Bugfix: Das Modul konnte FHEM zum Abstürzen bringen, wenn das von todoist gelieferte JSON falsch formatiert ist oder kein JSON-String zurück geliefert wird. Das ist z.B. der Fall, wenn die API nicht erreichbar ist. Das sollte nun nicht mehr passieren.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: smn_fx am 01 November 2017, 17:27:05
Hi, bei mir klappt es nocht nicht so ganz mit dem Modul. Ich habe ein "Projekt" angelegt, aber in FHEM wird nur no data angezeigt, obwohl die Liste Elemente enthält. Mit addTask kann ich auch nichts hinzufügen. Wenn ich manuell getTasks mache, kommen mit verbose 5 folgende Logeinträge:

2017.11.01 17:17:55 4: todoist (Geburtstage): set getTasks manually. Timer restartet.
2017.11.01 17:17:58 5: Geburtstage: hash: $VAR1 = {
          'NR' => 242,
          'NAME' => 'Geburtstage',
          'NOTIFYDEV' => 'global',
          'TYPE' => 'todoist',
          'PID' => '08157774711',
          'STATE' => 'active',
          'helper' => {
                        'errorData' => ''
                      },
          'READINGS' => {
                          'lastError' => {
                                           'VAL' => 'no data',
                                           'TIME' => '2017-11-01 17:17:33'
                                         },
                          'state' => {
                                       'VAL' => 'active',
                                       'TIME' => '2017-11-01 16:57:02'
                                     },
                          'listText' => {
                                          'TIME' => '2017-11-01 17:17:33',
                                          'VAL' => '-'
                                        },
                          'error' => {
                                       'VAL' => 'no data',
                                       'TIME' => '2017-11-01 17:17:33'
                                     }
                        },
          'NTFY_ORDER' => '50-Geburtstage',
          'INTERVAL' => 1800,
          'DEF' => '08157774711'
        };

2017.11.01 17:17:58 4: todoist (Geburtstage): Curl Data: $VAR1 = {
          'project_id' => '08157774711',
          'token' => '0815b0b5111337ee7d56be6e4711b0ffc2e51111'
        };

2017.11.01 17:17:58 4: todoist (Geburtstage): Param: $VAR1 = {
          'method' => 'POST',
          'completed' => 0,
          'timeout' => 7,
          'data' => {
                      'project_id' => '08157774711',
                      'token' => '0815b0b5111337ee7d56be6e4711b0ffc2e51111'
                    },
          'callback' => sub { "DUMMY" },
          'header' => 'Content-Type: application/x-www-form-urlencoded',
          'url' => 'https://todoist.com/api/v7/projects/get_data',
          'hash' => {
                      'NR' => 242,
                      'NAME' => 'Geburtstage',
                      'NOTIFYDEV' => 'global',
                      'TYPE' => 'todoist',
                      'PID' => '08157774711',
                      'STATE' => 'active',
                      'helper' => {
                                    'errorData' => ''
                                  },
                      'READINGS' => {
                                      'lastError' => {
                                                       'VAL' => 'no data',
                                                       'TIME' => '2017-11-01 17:17:33'
                                                     },
                                      'state' => {
                                                   'VAL' => 'active',
                                                   'TIME' => '2017-11-01 16:57:02'
                                                 },
                                      'listText' => {
                                                      'TIME' => '2017-11-01 17:17:33',
                                                      'VAL' => '-'
                                                    },
                                      'error' => {
                                                   'VAL' => 'no data',
                                                   'TIME' => '2017-11-01 17:17:33'
                                                 }
                                    },
                      'NTFY_ORDER' => '50-Geburtstage',
                      'INTERVAL' => 1800,
                      'DEF' => '08157774711'
                    }
        };

2017.11.01 17:17:59 4: todoist (Geburtstage):  Task Callback data-raw: $VAR1 = '{"error_tag":"INVALID_ARGUMENT_VALUE","error_code":20,"http_code":400,"error_extra":{"expected":"number","argument":"project_id"},"error":"Invalid argument value"}';

2017.11.01 17:17:59 5: todoist (Geburtstage):  Task Callback param: $VAR1 = {
          'method' => 'POST',
          'displayurl' => 'https://todoist.com/api/v7/projects/get_data',
          'conn' => undef,
          'url' => 'https://todoist.com/api/v7/projects/get_data',
          'header' => 'Content-Type: application/x-www-form-urlencoded',
          'host' => 'todoist.com',
          'loglevel' => 4,
          'httpheader' => 'HTTP/1.1 400 Bad Request
Content-Type: application/json
Content-Length: 163
Connection: close
Date: Wed, 01 Nov 2017 16:17:59 GMT
Cache-Control: no-cache
P3p: policyref="/static/p3p.xml", CP="IDC DSP COR IVAi IVDi OUR TST"
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
X-Cache: Error from cloudfront
Via: 1.1 f2cc6dbe7150e50a6bc010a2d6868e5f.cloudfront.net (CloudFront)
X-Amz-Cf-Id: qhCag0_i8RNwEd_s-NK858ydjApzhNKo6rla9BWJE8gV-UE5bsROgA==',
          'hu_filecount' => 1,
          'code' => '400',
          'hash' => {
                      'NR' => 242,
                      'NAME' => 'Geburtstage',
                      'NOTIFYDEV' => 'global',
                      'TYPE' => 'todoist',
                      'PID' => '08157774711',
                      'STATE' => 'active',
                      'helper' => {
                                    'errorData' => ''
                                  },
                      'READINGS' => {
                                      'lastError' => {
                                                       'VAL' => 'no data',
                                                       'TIME' => '2017-11-01 17:17:33'
                                                     },
                                      'state' => {
                                                   'VAL' => 'active',
                                                   'TIME' => '2017-11-01 16:57:02'
                                                 },
                                      'listText' => {
                                                      'TIME' => '2017-11-01 17:17:33',
                                                      'VAL' => '-'
                                                    },
                                      'error' => {
                                                   'VAL' => 'no data',
                                                   'TIME' => '2017-11-01 17:17:33'
                                                 }
                                    },
                      'NTFY_ORDER' => '50-Geburtstage',
                      'INTERVAL' => 1800,
                      'DEF' => '08157774711'
                    },
          'sslargs' => {},
          'completed' => 0,
          'buf' => '',
          'timeout' => 7,
          'path' => '/api/v7/projects/get_data',
          'redirects' => 0,
          'callback' => sub { "DUMMY" },
          'data' => {
                      'project_id' => '08157774711',
                      'token' => '0815b0b5111337ee7d56be6e4711b0ffc2e51111'
                    },
          'hu_blocking' => 0,
          'hu_portSfx' => '',
          'NAME' => '',
          'protocol' => 'https',
          'addr' => 'https://todoist.com:443',
          'hu_port' => 443
        };

2017.11.01 17:17:59 5: todoist (Geburtstage):  Task Callback data (decoded JSON): $VAR1 = {
          'error_tag' => 'INVALID_ARGUMENT_VALUE',
          'error_extra' => {
                             'argument' => 'project_id',
                             'expected' => 'number'
                           },
          'error_code' => 20,
          'error' => 'Invalid argument value',
          'http_code' => 400
        };

2017.11.01 17:17:59 3: todoist (Geburtstage): no data


Und hier noch list Geburtstage
Internals:
   DEF        08157774711
   INTERVAL   1800
   NAME       Geburtstage
   NOTIFYDEV  global
   NR         242
   NTFY_ORDER 50-Geburtstage
   PID        08157774711
   STATE      active
   TYPE       todoist
   READINGS:
     2017-11-01 17:17:59   error           no data
     2017-11-01 17:17:59   lastError       no data
     2017-11-01 17:17:59   listText        -
     2017-11-01 16:57:02   state           active
   helper:
     errorData
Attributes:
   room       Test
   verbose    5


Wo könnte das Problem liegen? (außer vorm Bildschirm...)

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 01 November 2017, 18:06:34
Das im DEF sieht nicht nach einer korrekten Projekt ID aus.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: smn_fx am 01 November 2017, 18:12:15
Habe Projekt ID und token natürlich geändert  :)

Die Projekt ID habe ich aus der URL. Alles was ich hier durch # ersetzt habe:
https://todoist.com/app?lang=de#project%###########
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 01 November 2017, 18:23:50
Das ist zu viel. Die ID ist numerisch. Aktuell fängt sie sicher mit 2 an und startet hinter dem F.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: smn_fx am 01 November 2017, 18:33:19
Oh man es kann so einfach sein :) Habe 2F entfernt und es läuft... Danke!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 01 November 2017, 19:53:18
Ich habe im ersten Post einen Abschnitt ergänzt, der mit einem Beispiel zeigt, wie man an die Projekt-ID kommt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: Cobra am 01 November 2017, 23:43:41
Hatte vorhin einen Absturz von FHEM.

Das letzte was im Log stand war folgendes:

Can't use string ("") as a HASH ref while "strict refs" in use at ./FHEM/98_todoist.pm line 585.

Aktuellste Version des Moduls hab ich installiert.
Vielleicht kannst du ja auf Anhieb erkennen warum sich FHEM aufhängen könnte. Falls nicht bitte kurz um Mitteilung was ich tun kann um ggfs. den Fehler zu loggen.

Seit Tagen ist das Modul stabil gelaufen.

Gruß Cobra
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 02 November 2017, 06:47:58
Ich habe eine neue Version eingecheckt. Bitte testen und ggf. das Log auf verbose 4 hochdrehen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: Cobra am 02 November 2017, 07:35:43
Hab die neue Version geladen und lass jetzt einfach mal mit Verbose 4 laufen.
Gebe dann spätestens heut Abend Rückmeldung ob nochmal ein Absturz kam oder ob es läuft.

Gruß Cobra
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 02 November 2017, 08:10:53
Es sollte eigentlich nicht mehr vorkommen. Aber danke, dass du die Augen offen hälst!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: Cobra am 02 November 2017, 19:22:27
Seit der neuen Version keine Probleme mehr :D

Danke
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 03 November 2017, 14:13:19
In der neuen Version (von heute um 14:06) werden auch die User mit ihren IDs ausgelesen. Das ganze passiert automatisch nach einem "getTasks", egal ob im regulären Interval im Hintergrund oder manuell. Der Automatismus kann per Attribut "autoGetUsers" deaktiviert werden (auf 0 stellen, default ist 1). "set <dev> getUsers" holt die User manuell ab. Außerdem werden zu den Tasks die assignedByUid und die responsibleUid ausgelesen.


Damit ist mindestens die gleiche Funktionalität erreicht, die auch das wunderlist-Modul hat.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 07 November 2017, 14:12:51
Mit einem neuen update können nun auch assignedByUid und responsibleUid beim hinzufügen oder ändern eines Tasks angegeben werden.


Weil es mich selbst etwas genervt hat: die Readings zu assignedByUid und responsibleUid werden in der neuen Version im default ausgblendet, sie können aber jeweils per Attribut sichtbar gemacht werden.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: Mitch am 10 November 2017, 10:15:51
Zitat von: marvin78 am 03 November 2017, 14:13:19
In der neuen Version (von heute um 14:06) werden auch die User mit ihren IDs ausgelesen. Das ganze passiert automatisch nach einem "getTasks", egal ob im regulären Interval im Hintergrund oder manuell. Der Automatismus kann per Attribut "autoGetUsers" deaktiviert werden (auf 0 stellen, default ist 1). "set <dev> getUsers" holt die User manuell ab. Außerdem werden zu den Tasks die assignedByUid und die responsibleUid ausgelesen.


Damit ist mindestens die gleiche Funktionalität erreicht, die auch das wunderlist-Modul hat.

Kann ich die assignedByUid und die Task_000_ID auch per Attribut deaktivieren?

Ich habe die sonst in meiner ReadingsGroup und da bekomme ich sie nicht raus  :P
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 10 November 2017, 10:32:14
Zitat von: marvin78 am 07 November 2017, 14:12:51

Weil es mich selbst etwas genervt hat: die Readings zu assignedByUid und responsibleUid werden in der neuen Version im default ausgblendet, sie können aber jeweils per Attribut sichtbar gemacht werden.


Die ID kann nicht ausgeblendet werden.


Edit: Aber ich denke readingsGroup kann das.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: Mitch am 10 November 2017, 10:36:53
Danke marvin, das hatte ich übersehen.

Aber wenn Du schreibst
ZitatWeil es mich selbst etwas genervt hat: die Readings zu assignedByUid und responsibleUid werden in der neuen Version im default ausgblendet, sie können aber jeweils per Attribut sichtbar gemacht werden.

Heißt das für mich, die IDs sind jetzt ausgeblendet? Bei mir sind sie noch sichtbar?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 10 November 2017, 10:52:23
Nein. Die ID wird nicht ausgeblendet, wie geschrieben. Ich gehe davon aus, dass die ID als Reading wichtig ist um damit arbeiten zu können.


Aber ich denke, dass readingsGroup sowas kann.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 10 November 2017, 11:06:36
Ich habe nochmal nachgesehen. Aktuell benötigt das Modul auch selbst noch die ID als Reading. Bspw. sort würde ohne nicht funktionieren. Ich müsste also etwas mehr Hand anlegen, um die ID ausblendbar zu machen. Ich sage nicht, dass ich das nicht machen möchte aber sehr schnell, kann ich das nicht machen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 10 November 2017, 11:26:40
@Mitch: Teste bitte mal die angehängte Version. Wenn sie in allen Facetten funktioniert, checke ich sie ein. Es gibt ein neues Attribut "hideId".


Anhang entfernt. Download im ersten Post.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: Mitch am 10 November 2017, 11:33:31
Danke marvin, sieht sehr gut aus!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 10 November 2017, 11:37:12
Ich habe die Version eingecheckt. Ich bin gespannt auf mögliche Seiteneffekte ;)
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 10 November 2017, 12:37:21
Ich habe in dem Zusammenhang doch noch einen Fehler in sort gefunden. Korrigiert und neu eingecheckt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 11 November 2017, 17:28:56
Es gibt nochmal eine neue Version. Fogendes ist nun möglich



set Einkaufsliste updateTask 2 remove=dueDate
set Einkaufsliste updateTask 5 remove=assignedByUid
set Einkaufsliste updateTask 5 remove=responsibleUid


So können die entsprechenden Attribute aus einem Task entfernt werden.


Für dueDate ist ebenfalls sowas möglich



set Einkaufsliste updateTask 3 dueDate='none'
set Einkaufsliste updateTask 3 dueDate='null'
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 13 November 2017, 12:18:20
Die neue Version schreibt ein paar Infos über das Projekt (~Liste) in die Internals des Devices. Ggf. gibt es ja noch jemanden, der mit diesen Infos arbeiten kann/muss.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 19 November 2017, 11:30:15
Einige Fragen an die Nutzer des Moduls:


Ist es aus eurer Sicht nötig, Subtasks handeln zu können? Das heißt, man müsste die parent_ids und den jeweiligen indent mit abspeichern und beim complete müsste ggf. stattdessen ein close gemacht werden. Nutze jemand Subtasks?


Nutzt jemand von euch wiederkehrende Tasks? Müssen wir hier noch das Handling verbessern?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: sprudelverduenner am 28 November 2017, 16:11:09
Hallo Zusammen,

ich habe das Problem, dass ich weder Tasks abrufen noch setzen kann.

Was ich bisher gemacht habe:
- 98_todoist.pm heruntergeladen, ins FHEM Verzeichnis kopiert und Rechte angepasst (777).
- define einkaufsliste todoist 1234567890 (1234567890 ist meine ProjektID hinter dem 2F von meiner Alexa Einkaufsliste)
- set einkaufsliste AccessToken 5e118ec11ad55b9f1146847de2f21118e8d9d5e5 (Token geändert - es stammt aus meinen Einstellungen, Unterpunkt Integration)

Bei den Readings steht immer "no data" - egal was ich mache.

Wie kann ich den Fehler eingrenzen?

Lieben Gruß, Sprudelverduenner
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 28 November 2017, 16:14:38
Die Rechte auf 777 funktioniert zwar, ist aber keine gute Idee. Bitte group dialout und User fhem setzen.

Hier gilt das gleiche, wie überall hier im Forum. Man benötigt immer ALLE Infos. Das heißt, ein list vom todoist Device, du solltest ins Log schauen, ggf. die entsprechenden Fehler hier posten (verbose 4 oder 5). Andernfalls kann ich nur raten.

Einmal rate ich: Ist denn was in der Liste? Nutzt du denn da todoist? Eigentlich hat das erstmal nichts mit Alexa zu tun (auch wenn man es integrieren kann).
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: sprudelverduenner am 28 November 2017, 16:22:58
Internals:
   CFGFN
   DEF        1234567890
   INTERVAL   60
   NAME       einkaufszettel
   NOTIFYDEV  global
   NR         772
   NTFY_ORDER 50-einkaufszettel
   PID        1234567890
   STATE      active
   TYPE       todoist
   READINGS:
     2017-11-28 16:20:19   error           no data
     2017-11-28 16:20:19   lastError       no data
     2017-11-28 15:48:31   state           active
   helper:
     errorData
     errorMessage
Attributes:
   pollInterval 60
   room       Home


In der Liste ist ein Eintrag, den ich sowohl im Browser als auch in der APP sehen kann.

Verbose 5 kommt sogleich ...
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: sprudelverduenner am 28 November 2017, 16:30:39

2017.11.28 16:24:17 5: einkaufszettel: hash: $VAR1 = {
          'READINGS' => {
                          'lastError' => {
                                           'TIME' => '2017-11-28 16:23:20',
                                           'VAL' => 'no data'
                                         },
                          'error' => {
                                       'TIME' => '2017-11-28 16:23:20',
                                       'VAL' => 'no data'
                                     },
                          'state' => {
                                       'TIME' => '2017-11-28 15:48:31',
                                       'VAL' => 'active'
                                     }
                        },
          'DEF' => '1234567890',
          'NOTIFYDEV' => 'global',
          'helper' => {
                        'errorMessage' => '',
                        'errorData' => ''
                      },
          'NR' => 772,
          'INTERVAL' => 60,
          'NAME' => 'einkaufszettel',
          'CFGFN' => '',
          'PID' => 1234567890,
          'TYPE' => 'todoist',
          'STATE' => 'active',
          'NTFY_ORDER' => '50-einkaufszettel'
        };

2017.11.28 16:24:17 4: todoist (einkaufszettel): Curl Data: $VAR1 = {
          'token' => '5e6d8ec5cad55b9fba46811112f20a18e8d9d5e5',
          'project_id' => 1234567890
        };

2017.11.28 16:24:17 4: todoist (einkaufszettel): Param: $VAR1 = {
          'data' => {
                      'token' => '5e6d8ec5cad55b9fba46811112f20a18e8d9d5e5',
                      'project_id' => 1234567890
                    },
          'hash' => {
                      'READINGS' => {
                                      'lastError' => {
                                                       'TIME' => '2017-11-28 16:23:20',
                                                       'VAL' => 'no data'
                                                     },
                                      'error' => {
                                                   'TIME' => '2017-11-28 16:23:20',
                                                   'VAL' => 'no data'
                                                 },
                                      'state' => {
                                                   'TIME' => '2017-11-28 15:48:31',
                                                   'VAL' => 'active'
                                                 }
                                    },
                      'DEF' => '1234567890',
                      'NOTIFYDEV' => 'global',
                      'helper' => {
                                    'errorMessage' => '',
                                    'errorData' => ''
                                  },
                      'NR' => 772,
                      'INTERVAL' => 60,
                      'NAME' => 'einkaufszettel',
                      'CFGFN' => '',
                      'PID' => 1234567890,
                      'TYPE' => 'todoist',
                      'STATE' => 'active',
                      'NTFY_ORDER' => '50-einkaufszettel'
                    },
          'timeout' => 7,
          'callback' => sub { "DUMMY" },
          'url' => 'https://todoist.com/api/v7/projects/get_data',
          'method' => 'POST',
          'header' => 'Content-Type: application/x-www-form-urlencoded',
          'completed' => 0
        };

2017.11.28 16:24:17 4: todoist (einkaufszettel):  Task Callback data-raw: $VAR1 = '';

2017.11.28 16:24:17 5: todoist (einkaufszettel):  Task Callback param: $VAR1 = {
          'protocol' => 'https',
          'hu_blocking' => 0,
          'loglevel' => 4,
          'conn' => undef,
          'hu_port' => 443,
          'hu_portSfx' => '',
          'timeout' => 7,
          'displayurl' => 'https://todoist.com/api/v7/projects/get_data',
          'url' => 'https://todoist.com/api/v7/projects/get_data',
          'method' => 'POST',
          'completed' => 0,
          'NAME' => '',
          'sslargs' => {},
          'data' => {
                      'token' => '5e6d8ec5cad55b9fba46811112f20a18e8d9d5e5',
                      'project_id' => 1234567890
                    },
          'path' => '/api/v7/projects/get_data',
          'host' => 'todoist.com',
          'hash' => {
                      'READINGS' => {
                                      'lastError' => {
                                                       'TIME' => '2017-11-28 16:23:20',
                                                       'VAL' => 'no data'
                                                     },
                                      'error' => {
                                                   'TIME' => '2017-11-28 16:23:20',
                                                   'VAL' => 'no data'
                                                 },
                                      'state' => {
                                                   'TIME' => '2017-11-28 15:48:31',
                                                   'VAL' => 'active'
                                                 }
                                    },
                      'DEF' => '1234567890',
                      'NOTIFYDEV' => 'global',
                      'helper' => {
                                    'errorMessage' => '',
                                    'errorData' => ''
                                  },
                      'NR' => 772,
                      'INTERVAL' => 60,
                      'NAME' => 'einkaufszettel',
                      'CFGFN' => '',
                      'PID' => 1234567890,
                      'TYPE' => 'todoist',
                      'STATE' => 'active',
                      'NTFY_ORDER' => '50-einkaufszettel'
                    },
          'redirects' => 0,
          'callback' => sub { "DUMMY" },
          'addr' => 'https://todoist.com:443',
          'header' => 'Content-Type: application/x-www-form-urlencoded'
        };

2017.11.28 16:24:17 2: todoist (einkaufszettel): Error Message: no data
2017.11.28 16:24:17 3: todoist (einkaufszettel): Api-Error Callback-data: https://todoist.com/api/v7/projects/get_data: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
2017.11.28 16:24:17 1: readingsUpdate(einkaufszettel,listText,-) missed to call readingsBeginUpdate first.
2017.11.28 16:24:17 1: stacktrace:
2017.11.28 16:24:17 1:     main::readingsBulkUpdate            called by ./FHEM/98_todoist.pm (762)
2017.11.28 16:24:17 1:     main::todoist_GetTasksCallback      called by FHEM/HttpUtils.pm (374)
2017.11.28 16:24:17 1:     main::__ANON__                      called by fhem.pl (707)
2017.11.28 16:24:19 5: einkaufszettel: hash: $VAR1 = {
          'READINGS' => {
                          'lastError' => {
                                           'TIME' => '2017-11-28 16:24:17',
                                           'VAL' => 'no data'
                                         },
                          'error' => {
                                       'TIME' => '2017-11-28 16:24:17',
                                       'VAL' => 'no data'
                                     },
                          'state' => {
                                       'TIME' => '2017-11-28 15:48:31',
                                       'VAL' => 'active'
                                     }
                        },
          'DEF' => '1234567890',
          'NOTIFYDEV' => 'global',
          'helper' => {
                        'errorMessage' => '',
                        'errorData' => ''
                      },
          'NR' => 772,
          'INTERVAL' => 60,
          'NAME' => 'einkaufszettel',
          'CFGFN' => '',
          'PID' => 1234567890,
          'TYPE' => 'todoist',
          'STATE' => 'active',
          'NTFY_ORDER' => '50-einkaufszettel'
        };

2017.11.28 16:24:19 5: todoist (einkaufszettel): Param: $VAR1 = {
          'hash' => {
                      'READINGS' => {
                                      'lastError' => {
                                                       'TIME' => '2017-11-28 16:24:17',
                                                       'VAL' => 'no data'
                                                     },
                                      'error' => {
                                                   'TIME' => '2017-11-28 16:24:17',
                                                   'VAL' => 'no data'
                                                 },
                                      'state' => {
                                                   'TIME' => '2017-11-28 15:48:31',
                                                   'VAL' => 'active'
                                                 }
                                    },
                      'DEF' => '1234567890',
                      'NOTIFYDEV' => 'global',
                      'helper' => {
                                    'errorMessage' => '',
                                    'errorData' => ''
                                  },
                      'NR' => 772,
                      'INTERVAL' => 60,
                      'NAME' => 'einkaufszettel',
                      'CFGFN' => '',
                      'PID' => 1234567890,
                      'TYPE' => 'todoist',
                      'STATE' => 'active',
                      'NTFY_ORDER' => '50-einkaufszettel'
                    },
          'callback' => sub { "DUMMY" },
          'timeout' => 7,
          'url' => 'https://todoist.com/api/v7/sync',
          'method' => 'POST',
          'data' => {
                      'sync_token' => '*',
                      'token' => '5e6d8ec5cad55b9fba46811112f20a18e8d9d5e5',
                      'resource_types' => '["collaborators"]'
                    },
          'header' => 'Content-Type: application/x-www-form-urlencoded'
        };

2017.11.28 16:24:20 5: todoist (einkaufszettel): User Callback data: $VAR1 = '';

2017.11.28 16:24:20 2: todoist (einkaufszettel): Error Message: no data
2017.11.28 16:24:20 3: todoist (einkaufszettel): Api-Error Callback-data: https://todoist.com/api/v7/sync: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure


ich hoffe das hilft ... Token und ID sind geändert.

Danke vorab für Deine Hilfe.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 28 November 2017, 16:42:29
Wie da steht, gibt es ein Problem mit deiner ssl Version. Ich kann es nicht genau sagen, aber es könnte an der config deines Servers liegen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 28 November 2017, 16:58:28
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.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: sprudelverduenner am 28 November 2017, 18:19:53
im meinem Fall betreibe ich einen raspberry pi.

du meinst die SSL Version von der Linux Distribution ?

Sorry, bin nicht der Linux Profi...
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 28 November 2017, 19:07:23
Ich weiß zu wenig über dein System und bin auch kein ausgewiesener Linux Experte.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: sprudelverduenner am 29 November 2017, 12:05:45
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....
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 07 Dezember 2017, 07:04:08
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.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 10 Januar 2018, 10:46:28
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).
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: pula am 11 Januar 2018, 17:00:02
Super, vielen Dank für das Modul! :-)

Cheers,

Pula
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 14 Januar 2018, 08:46:42
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.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 14 Januar 2018, 11:38:48
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.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 15 Januar 2018, 13:24:23
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.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 15 Januar 2018, 21:02:39
Neues Attribut: "avoidDuplicates"

Setzt man es auf 1, wird auf gleiche Titel in der vorhandenen Taskliste gecheckt und das hinzufügen von Duplikaten verhindert.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: pula am 17 Januar 2018, 01:54:13
Hallo,

ich habe hier https://forum.fhem.de/index.php/topic,82883.0.html (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
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 17 Januar 2018, 06:30:17
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.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 17 Januar 2018, 11:19:39
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.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: pula am 17 Januar 2018, 14:32:43
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
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 17 Januar 2018, 14:57:25
Das mit dem FHEMWEB Widget hatte jetzt gar nichts mit deiner Anfrage zu tun. Das habe ich schon vorher auf den Zettel gehabt. Es ist auch nicht fertig. Über das Attribut denke ich nach.

Was ich an deinen Ausführungen nicht verstanden habe: Warum macht das Komma für das Event, das du benötigst, ein Problem? Ich verstehe zwar, dass es ein Problem bei der Ansicht macht, aber nicht warum, das Event nicht für das Widget verwendet werden kann?!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: pula am 17 Januar 2018, 15:01:45
Hi,

technisch macht das Komma kein Problem. Aber ich habe bedenken, weil man schnell mal ein Komma eingibt und dann kommt es zu Problemen...
Cheers,
Puls
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 17 Januar 2018, 15:41:07
Die neue Version im git hat das gewünschte Attribut und auch das neue Widget ist eingebaut. Die Datei todoist.js muss nach

<FHEMPFAD>/www/pgm2/

kopiert werden.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: pula am 17 Januar 2018, 16:41:04
Wow, danke sehr!
Werde in der Nacht das ftui Widget anpassen...
Cheers,
Pula
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: pula am 18 Januar 2018, 00:13:29
Hi,

habe das widget angepasst, ist hier https://forum.fhem.de/index.php?topic=82883.msg750237#msg750237 (https://forum.fhem.de/index.php?topic=82883.msg750237#msg750237) zu finden.
@marvin78: Danke nochmal für das neue attr. Funktioniert wunderbar, das widget kommt mir jetzt (da nur noch auf das listText-Reading und nicht mehr auf die ganzen Task_-Readings geprüft wird schneller und stabiler vor).

Cheers,

Pula
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 18 Januar 2018, 09:10:52
Es gibt eine neue Version im git:


Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste)
Beitrag von: marvin78 am 18 Januar 2018, 16:19:51
Es gibt in der neuen Version ein zweites weblink-Widget, welches alle todoist-Listen im System nebeneinander anzeigt.

Usage:

defmod <NAME> weblink htmlCode {todoist_AllHtml()}

Edit: Als Hinweis: Es können nicht beide widget-Typen in einem Raum verwendet werden.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: pula am 18 Januar 2018, 22:30:08
Mann, Du bist schnell :-)
Da komm ich mit dem ftui-widget nicht hinterher :-(
Danke für Deine Arbeit!

Cheers,

Pula
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 18 Januar 2018, 22:59:17
Ach so schnell war das gar nicht.  ;) Läuft bei mir schon eine Weile. Ich habe vor der Veröffentlichung nur noch ein paar Kleinigkeiten gefixt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 19 Januar 2018, 14:32:27
In der neuen Version (0.7.7) kann das Widget für mehrere Listen mit einem Filter versehen werden. Beispiel

define Einkaufslisten weblink htmlCode {todoist_AllHtml('NAME=Einkauf.*')}

oder auch

define Einkaufslisten weblink htmlCode {todoist_AllHtml('listType=Einkaufen')}

wobei in Beispiel 2 "listType" bspw. ein userattr ist.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 21 Januar 2018, 11:57:30
In der Version 0.8.0 ist es möglich, tasks in den weblink widgets per Drag&Drop zu sortieren.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 21 Januar 2018, 20:57:30
In Version 0.8.1 sind einige Bugs bei der Sortierung gefixt und es kann nur noch über ein Symbol verschoben werden, dass vor der jeweiligen Zeile bei mouseover erscheint.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 22 Januar 2018, 15:00:50
Version 0.8.4: Widgets mit weniger Bugs und flexiblen Inputfeldern, flexible Tabellenbreite.

Konnte schon jemand die Widgets testen?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: sprudelverduenner am 22 Januar 2018, 16:05:54
Danke für deine tolle Arbeit.

Ich hatte gestern Abend die 0.81 bei mir drauf geschmissen und nur kurz getestet.

Ich habe noch einen Wetter Weblink bei mir am laufen - beide wurden nebeneinander bei mir dargestellt was sehr unschön aussah.
Gibt es dafür evt. eine Lösung?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 22 Januar 2018, 16:07:01
Welches Widget hast du verwendet? AllHtml oder Html?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: sprudelverduenner am 22 Januar 2018, 16:11:32
Ich meine ich hatte AllHTML ...
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 22 Januar 2018, 16:31:54
Hast du denn mehrere Listen?

Ich habe eine neue Version 0.8.7 eingecheckt, in der das in beiden Widget-Versionen nicht mehr passieren sollte.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: sprudelverduenner am 22 Januar 2018, 21:41:08
ja geilo.... jetzt ist es schön untereinander!

Ich habe dem Weblink per attr alias einen anderen Namen gegeben - in der Überschrift des Widgets wird aber trotzdem immer nur der Name des todoist Devices angezeigt..

Bug oder Feature ??
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 22 Januar 2018, 22:32:22
Dem weblink einen alias zu geben, hat keine Auswirkungen auf die Anzeige. Aber ganz unrecht hast du nicht. Wenn das Todoist device einen alias hat, sollte der als Titel über der jeweiligen Liste erscheinen. Aktuell steht dort immer der Name. Also beides. Bug und Feature ;)
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 23 Januar 2018, 20:09:15
in Version 0.9.0 wird der Alias aus dem entsprechenden todoist-Device als Titel für die Liste verwendet, falls vorhanden. Falls nicht, wird der Name verwendet.

Es ist nicht mehr nötig, zwischen AllHtml und Html zu unterscheiden. Es gibt nur noch ein widget, welches so definiert wird:

define Einkaufslisten weblink htmlCode {todoist_Html('NAME=Einkauf.*')}

wobei der Angabe eines Namens, devspec oder Regex optional ist. Gibt man nichts an, werden einfach alle Listen dargestellt.

Auch

define Einkaufslisten weblink htmlCode {todoist_AllHtml('NAME=Einkauf.*')}

funktioniert noch, ist aber nur ein Verweis auf das Standardwidget. Es gibt keinen Unterschied mehr.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: sprudelverduenner am 23 Januar 2018, 21:24:14
Super... alias geht nun auch.

Noch ein kleiner BUG:

wenn ich in einen Raum den Weblink von todoist und wetter habe dann kommt auf meinen iOS Geräten folgende Fehlermeldung:

Siehe das angehängte Foto.

Ich kann nicht beurteilen, ob das mit Deinem Widget zu tun hat ....
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 23 Januar 2018, 22:35:56
Hm. Aktuell fehlt mir eine Idee. Ich vermute, dass ein HTML Element im Wetter weblink von sortable angesprochen wird, was aber eigentlich nicht sein sollte. Ich muss das mal nachstellen. Hast du hier eine DEF für mich?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 24 Januar 2018, 06:58:31
Ich habe versucht, das nachzustellen und alle weather widgets durchprobiert. Ich erhalte den genannten Fehler nicht. Deshalb benötigt ich mehr Informationen.

Welches widget für weather wird verwendet? (bitte eine DEF in Code-Tags posten)
Bitte in die Javascript Konsole schauen und mögliche Fehler oder Meldungen hier posten (in Code-Tags)?
Gibt es ggf. Einträge im Log?

Bitte demnächst Fehlermeldungen nicht (nur) als Screenshot, sondern auch als Text hier posten. Das macht es leichter.

BTW: Eine neue Version 0.9.1 im git lädt immer den aktuellen JS Code damit nicht ggf. noch altes js aus dem Cache des Browsers verwendet wird.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 24 Januar 2018, 15:07:50
Update funktioniert nun auch über:

update all https://raw.githubusercontent.com/marvin78/FHEM-todoist/master/controls_todoist.txt

oder

update add https://raw.githubusercontent.com/marvin78/FHEM-todoist/master/controls_todoist.txt

(fügt todoist dauerhaft zu update hinzu und macht bei "update" ein update von todoist, wenn verfügbar).
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: mahowi am 25 Januar 2018, 08:00:00
Super, daß man jetzt das Modul jetzt ins normale Update einbinden kann. Heute scheint aber noch was schief gelaufen zu sein:

2018.01.25 07:56:23.667 1 : todoist
2018.01.25 07:56:24.039 1 : UPD FHEM/98_todoist.pm
2018.01.25 07:56:24.241 1 : Got 58268 bytes for FHEM/98_todoist.pm, expected 58404
2018.01.25 07:56:24.243 1 : aborting.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 25 Januar 2018, 08:08:53
Die Methode mit der ich die controls Datei automatisch erstelle ist noch nicht perfekt. Ich muss das noch als pre-commit hook bauen. Aktuell kann das manchmal hinterherhinken, auch weil raw durch git manchmal verzögert aktualisiert wird. Jetzt sollte es funktionieren.

Es gibt allerdings keine großen Änderungen. Nur etwas aufgeräumteren Code und ein wenig verbesserte commandref.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: sprudelverduenner am 25 Januar 2018, 08:17:15
Zitat von: marvin78 am 24 Januar 2018, 06:58:31
Welches widget für weather wird verwendet? (bitte eine DEF in Code-Tags posten)
Bitte in die Javascript Konsole schauen und mögliche Fehler oder Meldungen hier posten (in Code-Tags)?
Gibt es ggf. Einträge im Log?

Ich hoffe das hilft Dir:

Internals:
   CFGFN      /opt/fhem/FHEM/sub_cfg/sub_externe-geraete.cfg
   DEF        htmlCode {WeatherAsHtmlH("wetter.yahoo",5)}
   LINK       {WeatherAsHtmlH("wetter.yahoo",5)}
   NAME       weblink.wetter
   NR         187
   STATE      initialized
   TYPE       weblink
   WLTYPE     htmlCode
Attributes:
   room       3.0_Aussen,Home


Internals:
   DEF        htmlCode {todoist_Html()}
   LINK       {todoist_Html()}
   NAME       weblink.einkaufszettel
   NR         723
   STATE      initialized
   TYPE       weblink
   WLTYPE     htmlCode
Attributes:
   room       9.6_TodoIst,Home


Vielen Dank für Deine Mühen vorab.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 25 Januar 2018, 08:24:25
@sprudelverduenner

Ich kann das leider noch immer nicht nachvollziehen. Welche Version verwendest du (get DEV version)? Ist deine todoist.js aktuell?

Mache bitte mal ein update über den oben beschriebenen Weg, lösche deinen Browser-Cache und starte FHEM neu.

update all https://raw.githubusercontent.com/marvin78/FHEM-todoist/master/controls_todoist.txt

Falls der Fehler dann noch immer auftritt, bitte die Javascript-Konsole bei Laden der Seite anschauen und ggf. Inhalt hier posten. Welchen Browser verwendest du?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: sprudelverduenner am 25 Januar 2018, 08:45:06
Ich habe eben noch die 2 aktuellen Dateien gezogen und manuell eingespielt.
Dann Neustart von FHEM.

Falls Du es überlesen haben solltest: auf meinem Windows PC ist alles ok - auf meinen iOS Geräten (iPhone / iPad mit dem Safari Browser) habe ich das Problem ... 
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 25 Januar 2018, 08:55:46
Ich kann es auch auf meinem iOS Testdevice (das ich sonst nur mit der Kneifzange anfasse ;) - unglaublich wie schlecht so teure Dinger sind) nicht nachvollziehen. Auch hier kann es jedoch helfen, den Browser Cache zu löschen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 27 Januar 2018, 14:53:44
Im widget der neuen Version (0.9.5) können items zwischen 2 Listen verschoben werden. Dabei wird das item aber in der aktuellen Variante stets ans Ende der neuen Liste verschoben, nicht an die Stelle, an der man es fallen lässt. Ich muss mal sehen, ob ich das noch "verbessere".
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Widget
Beitrag von: marvin78 am 31 Januar 2018, 13:58:30
In Version 0.9.6 hat das widget in leeren Listen eine zusätzliche Zeile, die es ermöglichst, auch Elemente in leere Listen zu schieben. Keine große Änderung, sie verbessert nur das Handling mehrerer Listen, die per Drag&Drop Daten untereinander austauschen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 02 Februar 2018, 09:42:08
In Version 0.9.8 kann nun die parent_id direkt bei addTask gesetzt werden und nicht mehr nur bei update.

Die API gibt das zwar immer noch nicht her, das Modul feuert jetzt aber direkt nach dem addTask ein updateTask mit parent_id hinterher.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 05 Februar 2018, 12:10:34
Neue version 0.9.10: Wenn ein Task mit parent_id und indent abgehakt wird, wird dieser nicht aus der Liste entfernt (auch im original Todoist-Frontend nicht). Um das (in möglichen Frontend und zu Informationszwecken) abbilden zu können, wird nun auch der checked (oder isDeleted) Status solcher Tasks mit dem Wert 1 als Reading aufgenommen. Das kann per Attribut verhindert werden. Ggf. wird diese Funktion demnächst auch im weblink Frontend verwendet.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 05 Februar 2018, 17:07:59
In Version 0.9.11 aktualisiert sich das Widget bei einem getTasks (auch das interne getTasks im Interval) selbständig. Das heißt, Änderungen, die außerhalb von FHEM gemacht werden, erscheinen auch ohne Seitenaktualisierung im weblink Widget.

Ich bin mir im Übrigen bewusst darüber, dass ich mit mir selbst rede ;)
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 06 Februar 2018, 12:38:19
Das Widget in Version 0.9.14 kommt mit 2 neuen Icons in der Titelzeile jeder Liste. Es gibt einen Mülleimer für "clearList" und ein "refresh"-Icon für "getTasks".
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 Februar 2018, 08:51:25
In Version 1.0.6 nutzt das Weblink Widget nun das Attribut language des global Devices um die Meldungen und Titel in der eingestellten Sprache darzustellen. Das Frontend kann also vollständig in Deutsch oder in Englisch verwendet werden.

Außerdem gibt es eine detailFn. Das widget wird über der Detailansicht eines todoist-Devices angezeigt (mit allen Funktionen des weblink-Widgets). Diese Funktion ist durch Attribut abschaltbar.

Die Doku für das Widget wurde verbessert.

Dass es wenige Meldungen in diesem Thread gibt, kann heißen, dass nur wenige Leute das Modul nutzen (wahrscheinlich) oder dass es perfekt ist (;)). Ich habe mich entschlossen, die Versionsnummer 1.0.x zu verwenden, da das Modul nun schon mehr enthält, als ich mir für eine "fertige" erste Version vorgestellt habe und es einige Testverfahren durchlaufen hat. Es können noch Funktionen integriert werden (Beispielsweise die Unterstützung von indents, parent_ids und ggf. anderen Informationen im Widget). Allerdings hängt es nun von den Nutzern ab, ob es eine Weiterentwicklung gibt. Gemeldete Bugs werden in jedem Fall entfernt, Wünsche, wenn sinnvoll, auch umgesetzt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 12 Februar 2018, 20:01:01
Hallo,

will dich nicht bei deinen Selbstgesprächen stören ;D, aber DANKE für das tolle Modul!!!

Hab das Modul heute erst installiert, und bin begeistert.

Was mir mal so aufgefallen ist bzw. bei mir nicht richtig funktioniert:
Umlauten werden nicht korrekt gespeichert, und ein Task der Umlaute hat und verschoben wird passt dann auch nicht mehr. (UTF8?)

Allgemein wird bei mir die Anzeige nicht upgedated, muss immer einen Reload im Browser machen. Fehlt mir da eventuell noch ein attr. in FHEMWEB?

Ebenso geht Drag and Drop am Tablet nicht.

Indents im Widget und diese auch als checked anzuzeigen wäre noch toll!

Wäre es über die Api prinzipiell auch möglich Projekte, bzw. Subprojekte anzulegen?

Oder wie machst du das z.B. mit den Listen für Einkauf.
Lebensmittel, Drogerie,... hat man ja immer, aber wie macht man das am besten mit Listen die man nur einmal oder ab und zu hat wie z.B. Obi, Ikea,...?

Danke,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 12 Februar 2018, 20:18:29
Du müsstest mir etwas mehr zu deiner Umgebung sagen. Was für einen Browser benutzt du? IE habe ich ehrlicherweise nicht sehr lange getestet und Safari könnte Probleme machen. In Chrome und Firefox sollte alles funktionieren. Mobil sollte drag&drop funktionieren, wenn der style f18 verwendet wird, andernfalls ggf. nicht, da entsprechende JS Komponenten nicht vorhanden sind.

Um Fehler einzugrenzen:  Hast du mal den Cache im Browser gelöscht? Gibt es Fehler in der Browserkonsole (JS Konsole)? Wenn ja, diese bitte in Code-Tags hier posten.

Umlautprobleme hatte ich in einer relativ alten Version einmal. Ich nehme an, dass du auf einem alten Stand bist. Poste bitte mal das Ergebnis von

get DEVICE version

Aktuell ist die Version 1.0.9.

Falls kleiner, mache bitte ein update per

update all https://raw.githubusercontent.com/marvin78/FHEM-todoist/master/controls_todoist.txt

Unlautprobleme können auch an deiner Einstellung im Browser legen. UTF 8 Probleme sollte es im Modul keine geben.

Indent im Widget ist im aktuellen Tabellendesign (übernommen von FHEMWEB) ein wenig problematisch. Ich müsste auf unsortierte Liste umstellen. Das habe ich auch schon getestet und ich war wenig erfolgreich. Die Haptik geht dabei komplett verloren. Wenn ich mal viel Zeit habe, gehe ich das Thema ggf. nochmal an.

Eigentlich bildet ein todoist Dervice genau eine Liste ab. Eine Projektverwaltung wäre übergeordnet. Die API gibt das her, ob es Sinn macht, bezweifel ich aktuell noch. Bei mir sind mögliche Listen einfach immer angelegt aber ggf. leer. Wenn ich wirklich mal eine neue brauche, lege ich diese in der Todoist Web- oder Mobilapp an. Die Oberfläche ist gut und muss aus meiner Sicht nicht zwingend ersetzt werden. Ggf. könnte man überlegen, ob man das define entsprechend erweitert. Das wäre jedoch ein relativ großer Umbau.

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 12 Februar 2018, 21:28:38
Puh das ging schnell! Falls du meinen Post schon gelesen hattest bevor ich ihn editieren konnte, verschieben funktioniert jetzt nachdem ich die devices mal gelöscht und neu angelegt hatte. Davor hatte ich den Weblink mit Einkauf.*, da kam dann immer please define Einkauf first.

Modul sollte aktuell sein, habe es ja gerade erst per update installiert und auch FHEM komplett upgedated.

Hatte es mit IE und Firefox probiert. Die paar komischen Verhalten von vorhin muss ich mir nochmals in Ruhe ansehen, aber FHEMWEB wird bei mir auf jeden Fall nicht refreshed. Weder mobil mit Chrome, noch am PC mit Firefox. Muss erst F5 drücken damit ich z.B. einen neu erstellten Task sehe.

Okay, style nutze ich momentan den darktouch, mit bisschen angepasstem CSS. Das mit JS muss ich mir dann auch erst ansehen. Hab gestern erst ein Tablet an die Wand gehängt und bis jetzt FHEM nur über PC oder smartphone bedient.

Umlaute dürfte wirklich am IE gelegen haben.

Indent ist wohl für eine Einkaufsliste ohnehin nicht geeignet. War gestern mal mein erster Ansatz nachdem ich mich bei todoist eigentlich erst wegen deinem Modul regstriert habe um unsere Einkäufe zu verwalten. Also ein Projekt Einkauf und darunter dann DM, OBI,... und die eigentlichen artikel dann als mit indent darunter. Als ich das heute bei Hofer (Aldi) mal testen wollte und mir dachte man kann die Liste ja gleich so anordnen wie die Artikel auch ungefähr in den Gängen liegen, hab ich bemerkt das dass verschieben in Listen mit Indent in der App eher keine gute Idee ist und man sich damit eher seine ganze Anordnung versaut.  :-\

Aber für andere Tasks wäre es sicher praktisch darunter einr Checkliste zu haben, welche man abhakt ohne das diese ganz verschwinden, sondern nur checked sind.

Ja, für den Einkauf kann ich eigentlich auch alle möglichen Listen anlegen und einfach leer lassen, oder dann vielleicht sogar ausblenden. War nur mal so eine Idee. Meine Frau arbeitet momentan noch mit Zetteln am Kühlschrank, und da werden hald immer wieder Listen hinzugefügt und auch wieder weg geschmissen.
Man müsste sie ja nicht in FHEM anlegen, aber gäbe es eventuell die Möglichkeit diese automatisch zu importieren/anzulegen?
Man kann ja in todoist auch Projekte unter Projekten anlegen, könnte man die z.B. über die Api abfragen und anlegen?
Also man legt z.B. ein Projekt FHEMlist in todoist an, unf in FHEM dann ein Device auf dieses Projekt, und alle Projekte darunter werden automatisch unter dem/durch das Device angelegt.

Ist jetzt nur mal eine Idee, ob das überhaupt geht weiß ich nicht, habe mir die API auch noch gar nicht angesehen, und wenn es ginge, wäre das natürlich sehr viel Arbeit das umzusetzen.

Danke auf jeden Fall schon mal, ich werde mich morgen näher mit deinem Modul und eventuellen Browser Problemen auseinandersetzen
Crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 07:59:26
Für die Probleme mit dem update der Tabellen müsstest du mir einen Auszug aus der Javascriptkonsole schicken. In Chrome geht das sehr einfach. Du rufst die Konsole über "Menü-> weitere Tools > Eintwicklertools" auf.  Dann stellst du unten auf Konsole und testest die Dinge, die nicht funktionieren. Wenn in der Konsole rote Zeilen auftauchen, sind diese auf jeden Fall beachtenswert aber auch andere Zeilen, die während des Testvorgangs in den todoist Listen auftauchen, sind interessant.

Du hast mir noch immer nicht geschrieben, welche Version du hast ;) todoist kommt und aktualisiert sich NICHT per fhem-update.

Das ist natürlich alles umsetzbar aber das wäre dann in Teilen eine ganz andere Art Modul. Ich müsste das Modul zweistufig aufbauen. Das ist mir, wenn ich ehrlich bin, aktuell zu viel Arbeit. Wie schon gesagt, wenn ich mal viel Zeit habe, sehe ich mir das aber an. Die API gibt das alles her. Automatisch geht das anlegen aber nur mit einem webhook und dann würde jeder User einen Developer Account benötigen. Das möchte ich ehrlich gesagt vermeiden.

Wegen der touch Inhalte überlege ich mal, ob ich diese mit ausliefere, wenn diese nicht schon durch f18 geladen sind. Da muss ich mal schauen, ob die FHEM API das per loadScript schon her gibt oder ob ich das selbst bauen muss.

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 08:54:08
Hallo,

Ich hoffe ich komme am Abend dazu mir das nochmal in Ruhe mit Chrome anzusehen und eventuell einen Auszug der Javascriptkonsole zu posten. Bin mit Javascript nicht, oder noch nicht wirklich vertraut, verwende FHEM primär zur Automatisierung, da war mir das Frontend bis jetzt nicht so wichtig und die paar sachen die ich zur Steuerung fürs smartphone optimiert habe sind rein html+perl.

Sorry, version ist die 1.0.9, habe deine Quelle für die updates hinzugefügt.  ;)

Okay, hab mir gestern Abend auch noch bisschen die Api angesehen, machbar ist darüber wohl alles, aber wie du schon sagst, wäre das wohl ein komplett Umbau und eher ein neues zweistufiges Modul.
Mich würde es ja reizen, mich selbst an soetwas zu versuchen, aber da mangelt es wohl dann doch bisschen an Programmierkenntnissen und das würde wohl nie fertig werden. Hab zwar letztes Jahr mal ein mini Modul gemacht, aber das hat schon eine Ewigkeit gedauert.

Werde es jetzt dann mal einfach versuchen so umzusetzen wie du es wohl auch machst, einfach alle möglichen Listen anlegen, und einfach leer lassen.
Könnte sie dann im Frontend auch nur anzeigen wenn sie einen Inhalt haben.

Was braucht es denn alles für die touch Inhalte?

Danke
Crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 08:59:38
Ggf. kann man aus Liste, die ein indent=1 haben und keine parent_id demnächst die "Tochterlisten" automatisch erstellen lassen. Das ist nicht ganz so einfach, da man nicht nach parent_id filtern kann. Die parent_id wird von der API aktuell noch recht stiefmütterlich behandelt. Da muss man aktuell noch viel tricksen. Besserung wurde versprochen. Bis dahin würde ich wohl warten, bis ich an das Thema gehe.

Bezüglich nicht anzeigen, wenn sie keinen Inhalt haben: Das ist wohl möglich. Ich könnte das per Attribut konfigurierbar machen. Dass das auch ohne Aktualisierung der Seite geht, kann ich noch nicht versprechen.

Für touch benötigt man das hier: http://touchpunch.furf.com/

Das ist in f18 schon drin. Man kann es jedoch über das FHEMWEB Attribut JavaScripts auch selbst einbinden.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 09:29:09
Die neue Version 1.0.10 kennt das Attribut hideListIfEmpty. Setzt man das auf 1, wird diese Liste im Widget ausgeblendet, wenn sie leer ist. Das passiert allerdings erst bei einem Neuladen der Seite. Das macht aus meiner Sicht auch Sinn. In der Detailansicht wird die Liste nicht ausgeblendet.

Edit: Eine weitere Alternative wäre natürlich, das Device auf inactive zu setzen. Dann wird es aber nicht automatisch wieder aktiv, wenn ein neuer Eintrag von außen hinzu kommt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 10:33:59
Wow, das ging schnell! Super danke!

Teste es spätestens morgen Vormittag, und melde mich wieder.

Lg
Crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 12:02:58
Ich habe mir das mit der Kodierung und UTF 8 noch einmal angesehen. Das passiert tatsächlich NUR im IE (auch wenn er auf UTF 8 eingestellt ist). Was der da macht, ist mir schleierhaft. Es passiert in keinem anderen Browser, auch nicht in Edge. Also werde ich dem Thema nicht weiter nachgehen. Es ist ja sehr leicht, einen richtigen Browser zu verwenden und auf die Krücke IE zu verzichten.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 12:14:08
Ja war eigentlich nur Zufall oder Versehen das ich es mit dem IE getestet habe. War/ist immer noch der haupt Browser in der Arbeit da bei uns schon lange auf Sharepoint und co. gesetzt wird. Mittlerweile funktioniert aber eigentlich auch alles mit Firefox und Chrome und VMware Vcenter, iLO,... geht dann sowieso wieder nicht vernünftig mit IE.

Sollte es eigentlich mit Fully am Tablet und Chrome am Smartphone testen, das sind dann eigentlich auch die einzigen Browser die es nutzen werden.

Lg
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 12:16:49
Ich mag Fully nicht und sehe in Zeiten von WebApps den Grund für einen solchen Browser nicht. Aber bei Gelegenheit werde ich auch das mal testen (im Grunde ist da Chrome drunter, weshalb ich mir da wenig sorgen mache. Fully hat ja keine eigene Engine).

Edit: Auf meinem Smartphone funktioniert in Fully alles einwandfrei.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 12:51:15
Okay, hatte ihn eigentlich ausser zu Testzwecken noch nicht im Einsatz, dachte nur es wäre für das Wandtablet dann praktisch da er Bewegungserkennung integriert hat.
Kommt aber ohnehin auch Automagic auf das Tablet, wahrscheinlich mit AMAD, da ich aus FHEM gerne das Webradio, Tunein,... auf dem Tablet steuern möchte.

Ist zwar jetzt off topic, aber vorschläge wie man das am besten umsetzt sind natürlich immer sehr willkommen. Wie gesagt, hat FHEM be mir, bis auf ein paar Schalter und das Garagentor das ich über eine FHEMWEB Instanz fürs Smartphone gesteuert habe eher im Hintergrund gearbeitet und einfach nur vieles automatisiert und aufgezeichnet. Jetzt soll eben endlich auch ein Tablet an die Wand, welches primär als Statusanzeige inkl. Verkehr, Wetter..., aber eben auch ein paar Schalter, LED Stripes, Radio und eben als Ersatz für die vielen Zettel am Kühlschrank dienen soll.

Lg
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 13:39:17
Ich brauche das Frontend für todoist selbst nicht. Es ist eher ein Abfallprodukt eines anderen Moduls, das bei uns die Überwachung der Technik für die Schildkröten übernimmt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 14:11:55
Naja, brauchen tu ich es wohl auch nicht, muss/will aber meiner Frau auch den Sinn des Tablets an der Küchenwand erklären.  ;D
Ihr zu zeigen wann sie wie viel Wasser verbraucht,... kommt nämlich nicht so gut an.  :-\

Nein im Ernst, das die Automatisierung mit FHEM einiges erleichtert und auch viel Geld/Energie einspart weiß sie eh, finde die Idee der Einkaufsliste selbst gut und verleiht meiner FHEM installation wieder etwas Mehrwert.

Todoist irgendwie als Schnittstelle zur Überwachung der Schildkrötenzucht?! Das interessiert mich jetzt aber auch wie du das umgesetzt hast, und wozu du dabei todoif brauchst.

Lg
Crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 14:18:15
Neinnein. Nur die Technik des weblink-Widgets ist daraus abgeleitet. Das "schildi" Modul ist ein ganz individuelles Modul aber mit einem Frontend für meine Frau für die Konfiguration.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 14:30:03
Achso, hab mich schon gewundert in welcher Weise man da todoif brauchen könnte.
Ich versuche FHEMWEB hauptsächlich über Weblinks zu gestalten, paar Sachen wie wie Heizung, Garagentorsteuerung und Wetter habe ich so auch schon recht schön umgesetzt. Eventuell das ich mir vom DOIF uitable noch ansehe, aber weiß nicht ob ich das überhaupt brauche.
Wollte erst Tablet UI verwenden, aber finde FHEMWEB lässt sich auch recht schön fürs Tablet anpassen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 15:27:39
Um wieder auf das Modul zurück zu kommen, ich habe mir gerade angesehen wie der API Token gespeichert wird, da man den ja für jede Liste/jedes Device extra eingeben muss.
Wenn ich das richtig sehe wird er base64 encoded mit setKeyValue im filesystem oder eben in der configDB abgespeichert.
Wozu ist da $key nötig wenn nicht verschlüsselt wird?
my $key = getUniqueId().$index;

Überlege ob man das Anlegen neuer Projekte/Devices automatisieren oder vereinfachen könnte, da ist mir das eben aufgefallen und nicht ganz klar.

Lg
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 16:01:30
Du hast vollkommen recht. Da ist irgendwann mal was verloren gegangen. Vermutlich, weil ich etwas getestet habe. Interessant, dass mir das bisher nicht aufgefallen ist. Danke für's Melden.

Die neue Version 1.0.11 verschlüsselt den Token "besser". Das Perl Modul Digest::MD5 muss vorhanden sein.

ACHTUNG: Der Access Token MUSS nach dem update neu gespeichert werden. Andernfalls kann der Zugriff auf die API nicht mehr erfolgen. Einen neuen Access Token hinterlegt man per:

set DEVICE newAccessToken TOKEN

Zusatz: Einfaches Anlegen einer neuen Liste, geht übrigens per fhem copy Befehl. Es wird dann die Liste kopiert und auch der Token wird übernommen. Da eine frisch kopierte Liste inaktiv ist, hat man die Zeit, noch eine neue Projekt-ID ins DEF zu schreiben (oder man macht es direkt im copy Befehl) und kann die Liste dann aktivieren. Das gilt nicht mehr für den neuen Token...
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 16:34:44
Der letzte Zusatz ist wieder repariert (1.0.13). copy und rename sind wieder funktionsfähig.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 17:34:34
Super danke!

Das war jetzt ein großer Zufall das mir das aufgefallen ist, kannte nur setKeyValue noch nicht, und hab mir das daher genauer angeseen.

Hab es jetzt nochmal versucht und die Chrome Konsole dabei offen gehabt.

Auf der detail Page mit dem Widget aktiv habe ich einen eintrag3 in dei Liste einkauf3 hinzugefügt, aber der neue Eintrag erscheint im Widget erst nach einem Reload der Seite.
Die Timestamps aller Readings werden aktualisiert, aber auch die neuen Readings für den neuen Eintrag erscheinen erst nach einem reload der Seite.

Anbei mal die abgespeicherte Chrome console.

Danke
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 18:10:30
Hast du wirklich die aktuelle Version der js Datei? Bitte mit der aus dem git vergleichen. Browsercache hattest du gelöscht?

Das mit den readings in der Detail Ansicht ist Standard-Verhalten  und hat nichts mit dem Modul zu tun.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 18:31:20
Ja, ist die aktuelle js, rechte sollten auc passen und den cache habe ich immer wieder mal gelöscht.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 18:34:34
Ich kann das nicht nachvollziehen. Das Verhalten kann ich mir nur durch das nicht zusammen passen von Modul und js erklären.

Eine Idee habe ich noch. Kannst du mal das FHEMWEB Attribut longpoll auf websocket stellen und es dann noch einmal probieren?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 18:45:19
Sicherheitshalber habe ich nochmal ein update gemacht und auch nochmal die files überprüft, aber die sind jetzt sicher der Letztstand.

Websocket hatte ich bereits ausprobiert, aber auch keine Änderung dadurch.

Keine Ahnung, was da bei mir anders ist das es nicht geht.  :(
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 19:48:29
Wie heißt deine FHEMWEB Instanz?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 20:00:56
"web" und "webPhone"
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 20:11:26
Probiere bitte mal die neue Version 1.0.14 aus dem git.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 20:23:30
Funkt!  :) :) :)

Was war es? Der Name meiner FHEMWEB Instanzen (das "web")?

Danke!!!
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Februar 2018, 20:26:55
Ja, ein dämlicher Fehler  8)

Das Modul ging davon aus, dass alle FHEMWEB Instanzen, die es informieren muss im Namen WEB enthalten. Das habe ich mal zum Testen eingebaut, als ich die ersten Versuche mit FW_directNotify gemacht habe und nie geändert. Da meine und sicher viele andere FHEMWEB-Instanzen tatsächlich WEB beinhalten, ist das bisher nicht aufgefallen. Sorry dafür. Es wird jetzt über TYPE=FHEMWEB nach Instanzen gesucht.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 13 Februar 2018, 21:12:54
Na da muss man dann auch mal erst drauf kommen.  ;)

Danke! Hätte da es bei allen, oder zumindest den meisten anderen funktioniert wohl den Fehler in meiner Installation gesucht.

Lg
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 14 Februar 2018, 09:57:30
@crispyduck: Im devel Zweig im git gibt es eine neue Version, die den Befehl cChildProjects kennt. Damit lassen sich (fehlende) untergeordnete  Projekte automatisch anlegen. Dabei werden alle eigenen Projekte durchsucht und daraufhin überprüft, ob ihre parent_id der aktuellen id entspricht. Ist das der Fall und gibt es noch keine Liste mit dieser ID, wird ein neues todoist Device angelegt. Allerdings muss dort noch der Access Token gesetzt werden. Auch ist die neu angelegte Liste erst einmal inaktiv.

Wenn du mal Zeit und Lust hast, kannst du ja mal testen, ob das so praktikabel ist:

https://github.com/marvin78/FHEM-todoist/tree/devel
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 14 Februar 2018, 10:38:02
Du bist ein Wahnsinn!

Wollte, mir jetzt eine sub in my_Utils schreiben die eigentlich genau das macht.

Dachte an alle Projekte via Api abfragen und dann alle Namen und IDs die eine gewisse parent_id haben mit allen todoist devices vergleichen. Gibt es eines welches nicht mit abgefragten Namen und ID übereinstimmt, wird es gelöscht, anschließend werden alle Projekte wo es noch kein device mit gleichem Namen und ID gibt angelegt. Devicename sollte man eventuell aus Parentname_Projektname zusammen stellen um Konflikte mit anderen FHEM devices zu verhindern. Zusätzlich könnte man auch gleich Attribute und den Token kopieren.
Soweit hab ich mir das mal überlegt, beim umsetzen warst du wieder schneller.

Schau mir dein neues Modul sobald ich Zeit habe an.

Danke
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 14 Februar 2018, 10:58:37
Ich habe nochmal eine neue Version eingecheckt (nur im devel-Zweig), die einfach X_Copy aufruft und damit auch den Token kopiert.

Edit: noch einmal eine Änderung. Die neue Version nutzt dann direkt copy um die neuen Listen anzulegen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 14 Februar 2018, 13:08:41
Hallo eben getestet und für gut befunden!  ;)

Kommt delete auch noch mit rein? Sollte dann vielleicht aber uChildProjects heißen.

Was vielleicht auch noch schön wäre; die devices umzubenennen, oder eben löschen und neu anlegen wenn sich der name geändert hat, und alias = Projektname setzen.

Spricht was dagegen auch gleich ein save auszuführen und die devices gleich aktiv zu schalten?

Könnte man im Widget Tasks mit Intend z.B. pro intend ein "-" vor setzen, und diese wenn sie checked sind irgendwie markieren oder wie in todoist den text durchstreichen?
Wäre glaube ich eine einfache Art den Intend dar zu stellen.

auf jeden Fall 1000 dank!
Lg, crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 14 Februar 2018, 13:17:21
Delete möchte ich nicht in ein Modul bauen. Das sollte immer vom User selbst gemacht werden.  Wofür würde man das benötigen?

alias ist ein Attribut und das gehört dem User. Der Name des Devices im Grunde auch. Hier möchte ich im Modul nicht eingreifen, wenn es nicht sein muss. Der Name des Projekts steht in den Internals. Es ist kein Problem, ihn regelmäßig von dort auszulesen und als alias zu setzen (per at).

save wird definitiv nicht ins Modul kommen. Das kann unvorhersebare Probleme mit sich bringen.

Du kannst ein Makro bauen, wie

define einkauflisten_makro notify einkauflisten_makro set Einkaufslisten cChildProjects;sleep 3;set Einkaufslisten_.*:FILTER=state!=active active;save

Das Makro kannst du dann per

trigger einkauflisten_makro

anstoßen. Es muss nicht alles ins Modul. Viel ist auch mit FHEM Bordmitteln sehr leicht machbar.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 14 Februar 2018, 14:16:54
Passt!

Wollte nur nachfragen, nicht das ich mir das jetzt in FHEM zusammen bastel und 3 min später kommt von dir schon eine neue Version die das macht.  ;)

Automatisch will ich das ohnein nicht laufen lassen, sondern bei bedarf über einen Link im Webiif.

An delete dachte ich damit wenn in todoist ein Projekt, da abgeschlossen,... gelöscht wird, dieses nicht unnötig als aktives device in FHEM bestehen bleibt.

Wäre das mit dem Intend im Widget möglich?

danke,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 14 Februar 2018, 14:20:24
Ich habe im devel Zweig ein Attribut (delDeletedLists) eingebaut. Steht dieses auf 1, werden in einem cChildProjects-Lauf die überflüssigen Listen gelöscht. Das bitte einmal auf Herz und Nieren testen, bevor ich das mit dem master Zweig merge. Die zu löschenden Listen müssen in den Internals die PROJECT_PARENT eingetragen haben.

Ich möchte nun keine Krücke für indents einbauen. Ich möchte das (irgendwann) vernünftig lösen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 14 Februar 2018, 15:05:09
Super Danke!

Paar Bier, Kaffee,... gehen auf mich! Ein Wansinn wie schnell du das alles gleich umsetzt!

Ich werde das morgen in Ruhe intensiv testen!

Das mit dem Intend war jetzt nur mal so eine Idee um in todoist angelegte intend Tasks im Widget zumindest von den anderen Tasks unterscheiden zu können.

Lg,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 14 Februar 2018, 20:26:49
Der indent reicht aber nicht. Sie müssten dann ja auch noch richtig einsortiert werden ;) Ich gehe da irgendwann ran, ich weiß aber noch nicht wann.

Die Änderungen, die ich in den letzten Tagen gemacht habe, waren alle Kleinigkeiten und jeweils in 5 Minuten gemacht, mit den indents sieht es ein wenig anders aus. Ich frickel auch nicht gerne ;)
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 14 Februar 2018, 22:02:23
Ja, stimmt, es gibt ja keinen parent dafür in der Api.
Finde das in todoist oder zumindest in der app auch schlecht gelöst. Tasks in einer Liste mit Intends am Smartphone zu verschieben erfordert richtig Geschick, das diese dann auch wieder den richtigen intend haben.

Aktuell ginge das wohl nur in dem man als parent immer den Task nimmt, bei welchem intend um 1 weniger ist und der in der order als nächstes davor liegt.
Das müsste dann natürlich beim Verschieben,... mit beachtet werden, und damit auch aufwändig.

Die V8 der Api dürfte das wohl leider auch noch nicht beachten.

Fürs Erste reicht das so ja mal vollkommen.

Lg,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 14 Februar 2018, 22:13:57
Touch Devices sind eben nicht wirklich userfreundlich. Das will man uns nur weiß machen. In vielen Bereichen ist das Gegenteil der Fall. Da kann die Software nur bedingt etwas tun. Haptik ist nicht ersetzbar.

Edit: die parent_id ist nur bedingt ein Problem.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 15 Februar 2018, 12:10:54
Hallo,

ich bin gerade am Testen und es dürfte irgendwo ein Problem mit der richtigen Zuordnung der Listen geben.

Ich habe eine Parent Liste "Einkauf", darunter dann die automatisch erstellten Listen "Einkauf_DM", "Einkauf_Lidl".

Wenn man nun einen Task von "Einkauf_DM" in "Einkauf_Lidl" verschieben will, landet dieser im Parent "Einkauf".

Ebenso lassen sich die Tasks in "Einkauf_DM" und "Einkauf_Lidl" nicht sortieren, bzw. wird dabei "Einkauf" aktualisiert.

Erstellen und Löschen schaut momentan gut aus.

Ist es absicht das leere Listen einen Log2 Eintrag Error Message: no data generieren?

Lg,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Februar 2018, 12:14:56
Das ist tatsächlich mehr oder weniger Absicht, wenn auch nicht ganz glücklich. Das Problem hier ist, dass das eigentlich kein Fehler ist (in der Regel zumindest), es aber so interpretiert wird, da das JSON anders aussieht. Da gehe ich nochmal ran, wenn ich Zeit habe.

Das mit dem Sortieren kann ich mir aktuell nicht erklären. Das muss ich später mal testen.

Edit: Ich sehe schon, der Unterstrich als Trenner ist das Problem. Da muss ich mir was überlegen. Ich komme aber nicht sehr schnell dazu. Wenn du andere Namen für die Devices verwendest (rename) sollte aber alles funktionieren.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 15 Februar 2018, 12:18:22
Okay, danke. Könnte man hierfür eventuell einen höheren verbose level nehmen? Ich habe FHEM in der Regel auf verose 2 laufen, da ich hier bei gewissen Modulen gerade noch relevante Info bekomme, ohne mir den Log zu zu müllen.

Lg,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Februar 2018, 12:30:52
Nein. Fehler gehören in kleiner als 3. Aber das hier muss von Fehlern getrennt werden.


Ich sehe schon, der Unterstrich als Trenner ist das Problem. Da muss ich mir was überlegen. Ich komme aber nicht sehr schnell dazu. Wenn du andere Namen für die Devices verwendest (rename) sollte aber alles funktionieren.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 15 Februar 2018, 12:37:14
Ja, ich weiß, aber ist ja eigentlich kein Fehler.

Okay, bitte keinen Stress! Ich hab gesagt ich teste, also mach ich das jetzt auch ordentlich.  ;)
Der underscore war dann wohl auch bei meinem ersten Kontakt mit dem Modul mit ein Problem das nichts richtig ging. Hatte da auch alle Listen mit Einkauf_ benannt.

Edit: Im Projektnamen darf dann eigentlich auch kein underscore sein, und bei Projektnamen mit Leerzeichen wird alles nach dem Leerzeichen abgeschnitten.

Bei der Übersetzung könnte man vielleicht noch "No data for this list." --> "Liste ist leer." mit rein nehmen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Februar 2018, 13:26:32
Danke für's Testen. Genau wegen solcher "Folgefehler" (der hier ja eigentlich keiner ist) hatte ich das jetzt in einen devel-Zweig gepackt. Das mit dem Unterstrich ist natürlich aber ein Fehler, der mir nicht so schnell aufgefallen wäre, weil ich persönlich niemals auf die Idee kommen würde, Unterstriche im Devicenamen zu verwenden. Ich weiß aber auch, dass das ein häufig verwendetes Zeichen ist, sodass ich hier ein wenig umbauen muss.

Die Übersetzung ist kein Problem. Das baue ich ein.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 15 Februar 2018, 14:02:57
Löschen funktioniert ansich, allerdings darf kein FHEM Restart zwischen löschen eines Projektes in todoist und dem ausführen fon cChildObjects stattfinden, da es sonst das Internal PROJECT_PARENT nicht mehr gibt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Februar 2018, 19:43:03
Das stimmt. Daran kann ich aktuell auch nicht viel machen. Wie oft startet man fhem neu?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 15 Februar 2018, 20:23:25
Bei jedem Update und ich momentan ein paar mal die Woche, das aber auch nur weil ich an einem Modul rum bastel.
Aber ja, abhängig wie oft man Projekte löscht und wie oft man cChildProjects ausführt ist die chance vermutlich gering das dass passiert.

Man könnte doch ein device reading project parent id machen?

Lg
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 16 Februar 2018, 08:12:04
Im devel Zweig ist eine neue Version. Hier habe ich einem HTML Element eine neue ID geben müssen. Zudem wird der Split mit einem etwas "intelligenteren" Regex gemacht. Bitte alles einmal ausprobieren. Ich bin nur zu 95% sicher, dass ich alles nachgezogen habe.

Die Parent ID wird nun als unsichtbares Reading zusätzlich abgespeichert. Für den Abgleich beim Löschen, wird dieses Reading verwendet. Aber auch jetzt muss die Liste zumindest einmal aktiv gewesen sein damit das Reading vorhanden ist.

Die Übersetzung ist drin.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 16 Februar 2018, 13:35:44
Danke dir, werde ich heute oder morgen noch ausgibig testen.

Frage noch zum Touch am Tablet:

ZitatFür touch benötigt man das hier: http://touchpunch.furf.com/

Sollte es nicht reichen die Files die bei einer aktuellen FHEM Installation dabei sind in FHEMWEB einzubinden?

attr WEBtablet JavaScripts pgm2/jquery.min.js pgm2/jquery-ui.min.js

Irgendwie will das drag and drop bei mir am Tablet nicht.

Danke,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 16 Februar 2018, 13:44:56
Nein. Das reicht nicht. Touch funktioniert im style f18, da dort das genannte JS eingebunden ist. Ich habe aktuell keinen Plan, das ins Modul einzubauen.  Aber wenn man das vorgeschlagene js in Javascripts einbindet, sollte es funktionieren. Bei mir funktioniert es mit allen mobilen devices und style f18 (ich sehe aktuell nicht einen einzigen Grund ein anderes style zu verwenden, da dieses auf einfache Art und Weise anpassbar ist und ich habe auch, wenn ich ehrlich bin, kein Problem damit, alte oder schlechte Zöpfe auszuschließen).
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 16 Februar 2018, 13:55:52
Sorry, wollte gerade editieren; natürlich muss man jquery.ui.touch-punch.min.js einbinden.  :-[

Ja, hab mir den neuen style bereits angesehen, und werde wohl auch bei Zeiten wechseln.
Aktuell will ich aber noch auf meinen angepassten darkstyle bleiben.

Funktioniert jetzt, aber mit den Fingern ist das echt schwer zu bedienen. (für mich zumindest)  ???
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 16 Februar 2018, 14:03:07
Das weiß ich. Touch devices sind eben nicht benutzerfreundlich. Man müsste den handler Bereich vergrößern, wenn es sich um ein mobiles Device handelt. Ggf. schaue ich mir das irgendwann mal an aber das Frontend hat nun keine hohe Prio. Ich sehe das nicht als so wichtig an. Es geht um Automation. Und das beinhalten für mich eher Sprachbedienung und/oder eventbasierte Aktionen, als ein Frontend. Aus meiner Sicht sind Frontends schön für die Anzeige. Den Lichtschalter damit zu ersetzen oder eine funktionierende App (bspw. todoist) ist quatsch.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 16 Februar 2018, 14:18:03
Gebe dir vollkommen recht. Hatte ja bis jetzt nichteinmal ein Tablet mit FHEM in betrieb, und auch dieses soll primär der Anzeige der Graphen, Temperaturen,... dienen.
Meine Lichtschalter habe ich sowieso an der Wand, dazu brauche ich das Tablet ja nicht.
Direkte Eingabe für todoist finde ich aber dennoch sehr praktisch, vorallem da das Tablet neben dem Kühlschrank hängt. Aber da braucht man auch kein drag and drop.

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 16 Februar 2018, 15:53:39
Hallo,

Habe jetzt noch ein bisschen herum getestet, und soweit funktioniert alles bei deinem Modul.

Was ich jetzt allerdings wieder mehrfach gesehen habe ist das die todoist Api nicht zuverlässige Daten lifert.
Ich habe aktuell wieder 2 Subprojekte in todoist angelegt, welche auch richtig in todoist gespeichert sein müssen da ich sie auch korrekt mit Parent in der Android App sehe, aber in JSON steht bei beiden parent-id undef.

Mir ist das gestern schon ein paar mal aufgefallen, dachte aber dann es liegt vielleicht daran das ich mehrere Browser Tabs mit todoif offen hatte.

Aber jetzt ist es definitiv so das die daten der Api nicht mit der Anzeige in todoif übereinstimmen.

Werde mal todoif dazu kontaktieren.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 16 Februar 2018, 15:56:42
Das habe ich schon. Die parent_id ist schlicht nicht richtig implementiert. Das sieht man auch daran, dass sie in der Doku an vielen Stelle nicht erwähnt ist, obwohl sie als Feld mitgeliefert wird. Grundsätzlich ist die Hierarchie "schwammig" .
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 16 Februar 2018, 15:58:58
Okay, konnte bis jetzt nochnicht nachvollziehen, warum diese manchmal sofort korrekt gesetzt/geliefert wird, und manchmal ewig nur undef ist.

Lg,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 16 Februar 2018, 19:26:34
Ob es hier seitens todoist überhaupt eine Verbesserung geben wird?

Habe mir gerade die V8 REST Api angesehen, da gibt es überhaupt keine parent-id mehr, rein nur noch order und indent.

Im prinzip weiß man damit auch welche intends zu welchem Projekt gehören, genau so wie bei den Tasks, da die order immer eingehalten wird.
Also alle von der order her aufeinanderfolgende Projekte oder Tasks mit z.B. intend 2 gehören jeweils zu dem direkt davor liegenden Projekt/Task mit intend 1.

Echt blöd das die Api nicht zuverlässig die parent id liefert.

Hatte das jetzt fertig in FHEMWEB integriert, einmal Einmal Einlauf als parent und einmal ToDo lists als Parent.

Jeweils mit button um manuell den Projektimport anzuwerfen. Das ganze mit todoist der Frau verbunden, und wie es sein musste, liefert die Hälfte ihrer Listen keine parent-id.  :-\
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 16 Februar 2018, 20:04:18
Die REST API ist ohnehin kaum brauchbar bzw. nur eingeschränkt. Für so ein umfangreiches Modul geht das gar nicht. Sie ist, obwohl V8, nicht wirklich aktueller als die sync API in V7. Das Modul hier nutzt die sync-API.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 16 Februar 2018, 20:38:39
Ja, ist mir beim durchsehen aufgefallen, das dass eine sehr abgespeckte Version ist.

Das es hier nichts besseres gibt; todoist gibt es ja doch schon eine ganze Weile und das auch achon lange mit Api.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 16 Februar 2018, 21:03:05
Dein Problem habe ich in der Form allerdings auch nicht reproduzieren können. Die API an sich ist sehr gut und besser als bei der Konkurrenz (ich habe einige getestet) . Lediglich wunderlist kommt ran, ist aber deprecated.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 16 Februar 2018, 22:08:29
Ich hatte das wie gesagt auch schon gestern beim testen.
Aktuell ist es immer noch so das ich bei zwei sub Projekten parent-id undef habe. Schätze mal wenn ich sie nach parent verschiebe und wieder retour passt es?!

Wenn du magst kann ich dir den account auch übertragen oder auf eine dummy email ändern.
Hatte da nur paar Testtermine drinnen und die aktuellen sub Projekte heißen auch nur Ggggg und Frodo.  :P

Edit: anbei ein screenshot wo man sieht das die Projekte zwar indent 2 haben, aber keine parent_id.

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 17 Februar 2018, 09:16:39
Um nicht dauernd tatenlos zuzusehen wie du alles gleich umsetzt, habe ich jetzt mal angefangen ein bisschen was umzubauen und nur mit order + indent zu arbeiten ohne parent_id.

Habe jetzt nur mal in deiner sub cChildProjects bisschen was geändert und das anlegen aller child Projekte funktioniert damit zumindest mal zuverlässig.

Ist natürlich noch nicht sauber und es fehlt auch noch das löschen,... dauert mit meinen Kenntnissen alles eine Weile, bis ich verstehe wie was funktioniert und das dann entsprechend umsetze.  ;D

Komme leuider erst am Abend dazu da weiter zu machen.

Hoffe es ist in Ordnung das ich in und anhand deines codes ein bisschen herum bastle. Falls nicht gewünscht bitte einfach bescheid geben.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 17 Februar 2018, 11:02:11
Du kannst den Code gerne ändern und auch für dich ein neues Modul daraus basteln. Am besten wäre es natürlich, wenn du das über einen pull request machen würdest.

Ich möchte aber von der parent_id nicht weg. Das hat mehrere Gründe:

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 17 Februar 2018, 11:20:20
Ich habe soeben mal mehrfach neue Listen mit Kindern angelegt und dieser über cChildProjects importiert. Auch wenn ich vorher in der todoist-Webapp wild rumsortiert habe, habe ich nie das Problem gehabt, dass die Projekte in FHEM nicht angelegt werden oder in parent_id undef steht.

Wie genau gehst du vor, wenn sowas passiert?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 17 Februar 2018, 11:46:02
Ich habe die Zweige wieder zusammen geführt und den devel Zweig gelöscht.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 17 Februar 2018, 13:48:59
Eigenes Modul will und kann ich wohl auch nicht daraus basteln.

Kann wie gesagt nicht wirklich Programmieren und Perl kenne ich seit dem ich mich mit FHEM beschäftige. Man lernt aber auch sehr viel wenn man sich mit dem code von jemanden anderes beschäftigt und verstehen will wie was funktioniert. Bei dir ist alles sehr strukturiert, und gut Kommentiert, das macht es etwas einfacher.
Wie man einen pull request macht muss ich mir erst ansehen. Sollte vielleicht auch einmal einen Git account erstellen.  ;)

Ja, die parent_id macht auch sinn, habe ich vielleicht etwas blöd geschrieben, aber hätte die jetzt auch nicht ganz weg gelassen, sondern in der for Schleife über order und indent gesetzt und nicht durch den Api response. Somit war das heute morgen auch nur eine kleine Änderung in der for schleife "walk through projects".

Ich hab das jetzt auch nochmal versucht nachzustellen, und wie es scheint wird beim anlegen, verschieben,... die parent id immer richtig gesetzt.
Darauf dann nochmal die Android App gestartet, und gleich beim hinzufügen des ersten Projektes welchem ein anderes als Hauptaufgabe zugewiesen hat fehlt im Api response die parent_id (undef).

Beim weiter herum spielen ist mir auch noch aufgefallen das wenn ich in der Android App ein Haupt Projekt, also ohne indent anlege es korrekt die parent_id null bekommt; verschiebe ich dieses aber so das es indent 2 oder höher bekommt, bleibt die parent_id null.

Ändert man danach z.B. einfach nur die order in der Webapp passt wieder alles.

Scheint also ein Bug in der Android App zu sein, bzw. eigentlich auch in todoist allgemein. Wenn die parent_id mandatory ist, sollte todoist keine client eingabe ohne akzeptieren, wenn sie es nicht ist, sollte sie zumindest vom system generiert werden.
Ist doch auch seltsam das die Api zulässt zweimal die selbe order und indent zu vergeben?!

Kann man dann wohl wirklich nur hoffen das todoist da was ändert.  :-[

Lg,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 17 Februar 2018, 17:32:11
Ich nehme an, die App nutzt die eigene API  8)

Der Support ist nett und sie nehmen Vorschläge gut auf. Du solltest das Problem im Detail melden.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 17 Februar 2018, 19:37:45
Habe ich eben gemacht.  ;)

Bis da eventuell was gefixt ist, muss man wenn es neue Projekte gibt diese eben über web anlegen.

Frage noch zur Sprache, könnte man die auch woanders setzen? Ich hätte mein FHEM gerne weiterhin auf english und nur das Frontend für das Tablet auf deutsch.

Und noch eine Frage, was nicht direkt was mit dem Thema zu tun hat. Ich verwende folgendes cmdalias um cChildProjects aufzurufen und die devices aktiv zu schalten:
defmod c_reload_todoist_projects cmdalias reload_todoist_projects .* AS set $EVENT cChildProjects;;sleep 3;;set $EVENT.*:FILTER=state!=active active;;save

Rufe ich dann über einen Button mit "reload_todoist_projects Einkauf" oder "reload_todoist_projects ToDo" auf und es funktioniert auch bestens.
Zum aktiv schalten wollte ich aber ursprünglich auf Einkauf_ oder ToDo_ filtern und wollte das so anlegen: $EVENT._.* was aber nicht funktioniert hat. Geht das, und wenn ja, wie ist die korrekte Schreibweise?

Danke,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 18 Februar 2018, 09:43:56
Nein. Die Sprache wird in global gesetzt. Ich könnte im Modul noch ein eigenes language Attribut unterbringen, welches, wenn gesetzt, die global Einstellung überschreibt. Ich sehe aber den Sinn noch nicht. In FHEM ändert sich durch global language DE nur in sehr wenigen Modulen etwas. Es gibt nicht viele Module, die das Attribut überhaupt nutzen. Es hat zwar auch Auswirkungen auf die Sprache, die in der lokalen commandref verwendet wird, das kann man aber durch eigene menuEntries einfach lösen. Der Rest bleibt in englisch, auch wenn man DE setzt.

Der erste Punkt ist zuviel. Ein . ersetzt in einer Regex genau ein beliebiges Zeichen. Wenn du also einen . vor das _ setzt, wird dort auch ein Zeichen erwartet. Dein Regex müsste also $EVENT_.* lauten.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 18 Februar 2018, 10:09:18
Ja, mir geht es eigentlich um die lokale commandref, speziell eigentlich um die Device specific help bei device details. Nutze die eigentlich recht oft um einfach schnell mal nachzusehen wie ein Attribut,... richtig zu nutzen ist. Mit global DE ist dies natürlich deutsch, was bei vielen Modulen unvollständig oder überhaupt nicht vorhanden ist.

Ja, ohne Punkt hatte ich es natürlich auch als erstes versucht da die korrekte Regex ja .* ist, aber dann erwartet sich FHEM eine Variable "EVENT_". da z.B. $EVENT._Obi funktioniert hab ich es unter anderem mit dem Punkt als verbindung probiert. Das auch noch mit anfürungszeichen,... aber hab es nicht hin bekommen.



Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 18 Februar 2018, 10:37:00
Du hast recht. Du müsstest zu Perl wechseln. GGf. in eine eigene sub auslagern. Oder

defmod c_reload_todoist_projects cmdalias reload_todoist_projects .* AS {fhem("set $EVENT cChildProjects;sleep 3;set ".$EVENT."_.*:FILTER=state!=active active;save")}

Ungetestet.

In der neuen Version im git gibt es ein lokales language Atribut, welches, wenn gesetzt das globale überschreibt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 18 Februar 2018, 17:26:04
Danke!

Ja klar in Perl geht es ohne probleme; geht aber auch in FHEM, ein \ gehörte als escape vor den underscore.  ;D

Habe mir jetzt 3 cmdalias gemacht, eines zum aktualisieren der Tasks, eines um das Attribut alias zu setzen und eines um die Projekte anzulegen.

get_todoist_tasks
defmod c_get_todoist_tasks cmdalias get_todoist_tasks .* AS set $EVENT\_.* getTasks

setalias
defmod c_setalias cmdalias setalias .* AS { for my $name (devspec2array("$EVENT\_.*:FILTER=alias=")){my $alias = $name;; $alias =~ s/$EVENT\_//;; fhem("attr $name alias $alias")} }

attr c_setalias comment Sets alias of all $EVENT\_.* named devices which dont have a attr alias to devicename =~ s/$EVENT\_//\
e.g. command "setalias Einkauf" sets the attr alias of the device "Einkauf_Obi" to "Obi"


reload_todoist_projects
defmod c_reload_todoist_projects cmdalias reload_todoist_projects .* AS trigger WEBtablet JS:FW_okDialog('Todoist Projekte werden aktualisiert! Bitte warten...');;set $EVENT cChildProjects;;sleep 3;;set $EVENT\_.*:FILTER=state!=active active;;setalias $EVENT;;save;;trigger WEBtablet JS:location.reload()

attr c_reload_todoist_projects comment Loads all todoist child projects of the device $EVENT, sets them active, the alisa name and saves the config.


bei letzterem sollte man wohl noch statt "trigger WEBtablet JS:" FW_directNotify verwenden, allerdings weiß ich dann nicht wie man das in einem cmdalias mit dem fhem sleep unter bringt.

Fürs Erste funktioniert das mal recht gut. Einkauf ist in einem eigenem room, welcher bei Aufruf "get_todoist_tasks Einkauf" aufruft, in diesem gibt es neben einem Zurück button auch noch einen button um "reload_todoist_projects Einkauf" aufzurufen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 18 Februar 2018, 17:52:14
Das freut mich.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: mahowi am 19 Februar 2018, 10:52:24
Ich habe vorher schon das Wunderlist-Modul eingesetzt und finde auch das hier super.  :)

Einen kleinen Kritikpunkt habe ich noch. Könntest Du die deutsche Commandref nicht einfach löschen? Ich habe in global language auf DE gesetzt. So wird einem dann aber nur angezeigt, daß man sich die englische Version ansehen soll, ohne Verlinkung. Wenn keine deutsche Version vorhanden ist, wird einem über help todoist oder "Device specific help" direkt die englische Commandref angezeigt. Ich persönlich fände das wesentlich praktischer als der Verweis auf die englische Version.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 19 Februar 2018, 10:56:03
Ich bin da leidenschaftslos. Die deutsche Version ist für diejenigen, die nicht help verwenden, sondern die komplette Commandref. Da ich nicht plane, die deutsche Commandref nachzuziehen, wenn es nicht jemand für mich macht und pflegt, kann sie auch raus. Ich bemühe mich, daran zu denke, das für die nächste Version zu machen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 19 Februar 2018, 11:03:49
Hallo,

habe jetzt eine Antwort von Todoist bezüglich parent_id erhalten:

ZitatHere's the reply from our dev:
There's no official parent_id attribute for projects (ref: https://developer.todoist.com/sync/v7/#add-a-project).
There could be one when "Real hierarchies" are implemented, but for now we rely on the <indent, item_order> attribute pair to get the correct hierarchical order of a project (and task, for the matter).
I'm unsure if the web app sets/sends a parent_id attribute (but I don't think it should).

Die Android Entwickler/todoist setzen anscheinend wirklich nur auf indent und item_order. Dürfte dort damit ja auch funktionieren.
Du meintest das dies nicht zuverlässig ist, weshalb? Was passiert wenn man zwei Tasks die selbe order und indent gibt?

lg,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 19 Februar 2018, 11:09:17
Probier es aus ;) Du kannst mit dem Modul hier indent und order explizit setzen. Allerdings natürlich nur für Tasks. Für Projekte habe ich das nicht probiert.

Edit: Ach und sie senden die parent_id über die API. Sie ist nur nicht dokumentiert. Wie anders könnte ich sie auslesen?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 19 Februar 2018, 11:18:58
Kein Edit, da echte Zusatzinfo: Sie nutzen in der Web-App selbst die API in der Version 7.1 (diese ist nicht dokumentiert aber wohl im Einsatz). Sie nutzen als Kommando nur das (auch empfohlene) project_update_orders_indents, welches bis zu einer Anfrage von mir gar nicht dokumentiert war. Beim Auslesen aber bekommen sie auch in Version 7 die parent_id zurück und nutzen diese auch für die Darstellung, wenn ich das richtig sehe.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 19 Februar 2018, 12:11:03
Okay, danke und gut zu wissen.

Aus der Antwort lese ich zumindest auch raus das geplant ist das zu implementieren. (There could be one when "Real hierarchies" are implemented)

Bis dahin werde ich mir wohl doch noch einen Workaround einbauen um die parent_id per indent und order zu bestimmen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 19 Februar 2018, 12:14:19
@mahowi:

Die deutsche commandref fehlt bei sehr vielen Modulen, daher kam auch mein Wunsc die Sprache nicht per global language zu setzen.

marvin78 hat das auch gleich als lokales language Attribut implementiert, somit kann FHEM einfach auf english bleiben und die Sprache setzt du einfach per attribut.

Lg,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 19 Februar 2018, 12:18:05
Das Problem, das ich sehe, dass eine Umsetzung über project_update_orders_indents und die Nutzung dieser Daten statt parent_id voraussetzt, dass man ein echtes parent-Device hat, welches alle Infos zu den Kindprojekten enthält. Es geht zwar auch anders, aber es macht die Dinge unnötig kompliziert und anfällig. Dazu bin ich aktuell nicht bereit. Ich wollte im Grunde nie mehr, als EINE Liste abbilden. Ggf. baue ich noch eine einfache Variante, die dann aber nur ein max indent von 2 zulässt (gefällt mir aber nicht).

@mahowi: Ich habe erstmal eine neue Version ohne deutsche commandref eingecheckt.

@crispyduck: Das Attribut hilft ihm bei seinem Anliegen nicht.

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: mahowi am 19 Februar 2018, 12:25:28
@crispyduck: Eine fehlende deutsche Hilfe ist für mich eigentlich kein Problem, da dann automatisch die englische angezeigt wird, sowohl bei "help" als auch in der "Device specific help". In der kompletten Commandref steht ja der Link. Meistens möchte ich was nachlesen, wenn ich gerade im Device bin.

@marvin78: Danke!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 19 Februar 2018, 12:54:52
Ah, wusste nicht das wenn keine deutsche Hilfe verfügbar ist bei "Device specific help" automatisch die englische angezeigt wird.
Habe nämlich ein paar Module, bei denen es eine deutsche commandref gibt, in der aber nur steht das es keine deutsche gibt.
Daher kam eigentlich der Wunsch das system global auf englisch zu lassen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: mahowi am 19 Februar 2018, 13:04:40
Zitat von: crispyduck am 19 Februar 2018, 12:54:52
Ah, wusste nicht das wenn keine deutsche Hilfe verfügbar ist bei "Device specific help" automatisch die englische angezeigt wird.
Habe nämlich ein paar Module, bei denen es eine deutsche commandref gibt, in der aber nur steht das es keine deutsche gibt.
Daher kam eigentlich der Wunsch das system global auf englisch zu lassen.
Ja, es kommt dann einfach der Satz "Keine deutsche Hilfe gefunden!" und dann die englische Hilfe, z.B. bei MilightDevice:
Module: 31_MilightDevice.pm Maintainer: mattwire Forum: Beleuchtung

Keine deutsche Hilfe gefunden!

MilightDevice

This module represents a Milight LED Bulb or LED strip controller. [...]
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Brockmann am 24 Februar 2018, 14:08:36
Ich habe mir das todoist-Modul auch mal installiert, nachdem ich todoist bislang am PC und am Smartphone genutzt haben.
Hat soweit gut geklappt, Danke dafür.

Was ich insbesondere damit umsetzen wollte, war eine eigenen FHEM-ToDo-Liste, wo automatisch Tasks eingetragen werden, wenn beispielsweise ein Device "battery low" meldet, ein Fenster zu lange offensteht und ähnliches.
Dazu suche ich eine Möglichkeit, Tasks durch FHEM auch automatisch wieder löschen zu lassen, wenn sich der Auslöser eines Tasks erledigt hat, beispielsweise wenn die Batterie ersetzt wurde und wieder "ok" meldet oder wenn das Fenster geschlossen wurde.
Die Logik dafür habe ich, allerdings kann ich einen Task ja nur unter Angabe der ID erledigen oder löschen. Ich kenne aber nur den Task-Namen und müsste daraus durch eine eigene Funktion aus den Readings die passende ID ermitteln?

Oder habe ich eine andere Möglichkeit übersehen?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 24 Februar 2018, 15:06:31
Genau so wirst du es machen müssen. Das sollte kein Problem sein, da die ID ja in den Readings steht.  Du kannst dir die ID pro Task auch per notify in ein dummy schreiben. Ohne deine jetzige Logik zu kennen, ist es schwer, dir entsprechende Tipps zu geben.

Tasks über den Namen erledigen habe ich noch auf dem Zettel, löschen bisher nicht.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 25 Februar 2018, 10:47:19
complete, close und delete, sowie auch alle anderen updates eines Tasks funktionieren nun auch über den Titel eines Tasks.

set Einkaufsliste deleteTask TITLE:Brot
set Einkaufsliste updateTask TITLE:Brot dueDate=heute

Das macht natürlich nur bei eingeschaltetem avoidDuplicates Sinn. Andernfalls wird bei gleichem Titel nur einer der Tasks bearbeitet.

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 25 Februar 2018, 10:58:22
Super!

Komme gerade nicht dazu mit FHEM und todoist weiter zu machen; ausserdem warte ich auch noch auf eine Antwort von den todoif devs, wie man nun einen Task oder ein Projekt mit gleichem indent und order behandeln soll.

Da du gerade das avoidDuplicates Attribut erwähnst, fällt mir noch eine Beobachtung die ich letzte Woche gemacht habe auf. Wenn das avoidDuplicates Attribut gesetzt ist und man verschiebt einen Task von einer Liste in eine andere, wo schon ein Task mit selben Namen existiert, kommt zwar die Fehlermeldung das der Task bereits vorhanden ist, aber er wird trotzdem von der source Liste gelöscht.

Gewolltes feature oder bug? Ich hätte mir eigentlich erwartet des nichts passiert.

Lg,
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 25 Februar 2018, 11:09:09
Das ist ein Feature. Im Grunde wird hier ja ein deleteTask und ein addTask ausgeführt. Wer einen Task aus einer Liste heraus holt, möchte ihn dort löschen, wenn er in einer anderen Liste vorhanden ist, führt addTask zur Meldung und zum nicht hinzufügen. Das ist so gewollt und aus meiner Sicht auch genau so korrekt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 25 Februar 2018, 11:18:21
Ist natürlich auch korrekt.  ;)
Weiß ja das der Task gelöscht und in der anderen Liste hinzu gefügt wird, daher wollte ich nur nachfragen ob das löschen in dem Fall auch gewollt ist.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Brockmann am 25 Februar 2018, 14:02:06
Zitat von: marvin78 am 25 Februar 2018, 10:47:19
complete, close und delete, sowie auch alle anderen updates eines Tasks funktionieren nun auch über den Titel eines Tasks.
Danke, das ist perfekt!  :)
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 26 Februar 2018, 09:03:01
Wenn ein Task über den Titel nicht gefunden wird, gibt es nun das entsprechende error-Event.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: noshi21 am 01 Juli 2018, 00:18:32
Hi,
ich würde das Modul gern nutzen, scheitere aber leider schon bei der Einbindung.

Fehler im FHEM-Log:

2018.07.01 00:04:54 1: reload: Error:Modul 98_todoist deactivated:
Can't locate Data/UUID.pm in @INC (you may need to install the Data::UUID module) (@INC contains: . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/arm-linux-gnueabihf/perl5/5.20 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl ./FHEM) at ./FHEM/98_todoist.pm line 11.
BEGIN failed--compilation aborted at ./FHEM/98_todoist.pm line 11.


Aber cpan shell-Ausgabe:

cpan[1]> install Data::UUID
Reading '/home/pi/.cpan/Metadata'
  Database was generated on Sat, 30 Jun 2018 09:41:03 GMT
Data::UUID is up to date (1.221).


System ist eine Raspi3 mit Jessie.

Hat jemand eine Idee?

Danke.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Christoph Morrison am 01 Juli 2018, 17:45:17
Was sagt
perl -MData::UUID -le 'print $INC{"Data/UUID.pm"}'; perl -v?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: noshi21 am 02 Juli 2018, 13:47:46
Zitat von: Christoph Morrison am 01 Juli 2018, 17:45:17
Was sagt
perl -MData::UUID -le 'print $INC{"Data/UUID.pm"}'; perl -v?


/home/pi/perl5/lib/perl5/arm-linux-gnueabihf-thread-multi-64int/Data/UUID.pm

This is perl 5, version 20, subversion 2 (v5.20.2) built for arm-linux-gnueabihf-thread-multi-64int
(with 102 registered patches, see perl -V for more detail)

Copyright 1987-2015, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Christoph Morrison am 02 Juli 2018, 14:00:09
Ich glaube Perl sucht an der falschen Stelle nach Modulen. $INC findet sich nirgendwo oben in deiner Fehlermeldung.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: noshi21 am 02 Juli 2018, 14:08:29
Ok das klingt plausibel.
Ich habe jetzt erstmal ein cpan upgrade gestartet, vielleicht richtet sich da ja noch was.

Hast du da einen Ansatz für mich?


edit:
Ausgabe von: perl -e "print \"@INC\""
/home/pi/perl5/lib/perl5/5.20.2/arm-linux-gnueabihf-thread-multi-64int /home/pi/perl5/lib/perl5/5.20.2 /home/pi/perl5/lib/perl5/arm-linux-gnueabihf-thread-multi-64int /home/pi/perl5/lib/perl5 /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/arm-linux-gnueabihf/perl5/5.20 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.20 /usr/share/perl/5.20 /home/pi/perl5/lib/perl5/5.20.1 /home/pi/perl5/lib/perl5/5.20.0 /usr/local/lib/site_p


Ausgabe von: find / -name UUID.pm
/home/pi/.cpan/build/Data-UUID-1.221-fKRsHr/UUID.pm
/home/pi/.cpan/build/Data-UUID-1.221-fKRsHr/blib/lib/Data/UUID.pm
/home/pi/perl5/lib/perl5/arm-linux-gnueabihf-thread-multi-64int/Data/UUID.pm



jeweils immer vorhanden: /home/pi/perl5/lib/perl5/arm-linux-gnueabihf-thread-multi-64int

also müsste es doch eigentlich auffindbar sein? imho
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Christoph Morrison am 03 Juli 2018, 19:43:54
Mach die CPAN-Installation mal als Benutzer root, nicht als Benutzer pi.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: stoniii am 04 Juli 2018, 22:39:27
Hallo,

langsam bin ich total am verzweifeln. ich bekomme des Modul einfach nicht zum laufen und habe auch keine idee mehr wo und was ich noch versuchen kann.

anbei mein angelegtes device zum modul

Internals:
   .triggerUsed 1
   DEF        2F2189301888
   INTERVAL   1800
   NAME       todoliste
   NOTIFYDEV  global
   NR         375
   NTFY_ORDER 50-todoliste
   PID        2F2189301888
   STATE      active
   TYPE       todoist
   VERSION    1.1.72
   mayBeVisible 1
   .attraggr:
   .attrminint:
   READINGS:
     2018-07-04 22:26:29   countUsers      0
     2018-07-04 22:26:29   error           none
     2018-07-04 22:26:26   lastError       GetTasks: Response was damaged or empty. See log for details.
     2018-07-04 22:26:26   listText        -
     2018-07-04 22:26:25   state           active
   helper:
     errorData 
     errorMessage
     TIDS:
Attributes:
   room       0.0.0 Testing


in der FHEM Logfile steht
todoist (todoliste): Error Message: GetTasks: Response was damaged or empty. See log for details.

API Key habe ich aus todoist in Fhem eingetragen. Habe ein neues Projekt "NEU" in todoist angelegt und versucht wie in der Anleitung beschrieben einzubinden.
Fhem Logfile sagt dazu folgendes:
ERROR evaluating {todoist_Html("todoist_NEU")}: Illegal division by zero at ./FHEM/98_todoist.pm line 1905.


wo liegt der Fehler bzw. was mache ich falsch?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: crispyduck am 05 Juli 2018, 05:42:13
Hallo,

Sicher das de Project ID stimmt (2F2189301888)?

define <name> todoist <PROJECT-ID>

Access Token wird dann mt einem set gesetzt:

set <name> accessToken <API-KEY>

Ich nutze zwar das Modul aktuell nicht aktiv, habe aber immer noch ein paar Devices angelegt, welche brav syncen.

Werde da wohl erst im Winter wieder drann weiter basteln.

Lg
crispyduck
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 05 Juli 2018, 06:40:09
Wie dokumentiert, beginnt die Projekt-ID erst hinter dem F.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: stoniii am 05 Juli 2018, 10:07:34
Zitat von: marvin78 am 05 Juli 2018, 06:40:09
Wie dokumentiert, beginnt die Projekt-ID erst hinter dem F.

vielen Dank! hatte ich die ganze Zeit übersehen.
Jetzt geht es wunderbar :)

nochmal vielen Dank!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: KOAL am 08 Juli 2018, 17:58:37
Hallo,
DANKE an den/die Entwickler!! Das funktioniert echt 1A :)



LG
KOAL
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: noshi21 am 09 Juli 2018, 22:51:20
Zitat von: Christoph Morrison am 03 Juli 2018, 19:43:54
Mach die CPAN-Installation mal als Benutzer root, nicht als Benutzer pi.

Funktioniert leider auch nicht. Gleiches Ergebnis. Irgendwas ist richtig faul.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 10 Juli 2018, 06:24:47
Vermutlich ist grundsätzlich in cpan etwas schief. Nutze ggf. das entsprechende Perl Debian Paket.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: noshi21 am 13 Juli 2018, 13:01:00
Zitat von: marvin78 am 10 Juli 2018, 06:24:47
Vermutlich ist grundsätzlich in cpan etwas schief. Nutze ggf. das entsprechende Perl Debian Paket.

schon läuft es, Danke.

Mir war nicht bewusst, dass es die cpan install Pakete auch als deb gibt. Vielen Dank!

Falls jemand das Paket sucht:
sudo apt install libdata-uuid-perl
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 28 Juli 2018, 18:28:23
Hey Marvin,

cooles Modul.  8)

Ich bekomme, seit ich es eingebunden habe, aber nach dem Laden der Seite immer ein Popup mit dem Fehler:


sorttable.js line 283:
TypeError: node.getAttribute is not a function


Hast du eine Idee was da schief läuft?

VG, Thomas
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 29 Juli 2018, 07:20:50
Wie aktuell ist dein FHEM?

Welcher Browser?

Gibt es eine Ausgabe auf der Konsole?

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 29 Juli 2018, 08:16:24
Guten Morgen.

Version ist aktuell:

Latest Revision: 17039

File Rev   Last Change

fhem.pl 17007 2018-07-20 14:38:12Z rudolfkoenig
57_ABFALL.pm 11023 2018-06-13 12:34:34Z uniqueck
# $Id: 60_airquality.pm 00000 2017-04-08 $$$
95_Alarm.pm 16368 2018-03-10 07:01:51Z phenning
# $Id: 98_todoist.pm  $
doif.js 15546 2017-12-03 09:57:42Z Ellert
f18.js 17006 2018-07-20 09:51:50Z rudolfkoenig
fhemweb.js 16727 2018-05-11 09:12:01Z rudolfkoenig
fhemweb_fbcalllist.js 16054 2018-01-31 12:38:33Z markusbloch
fhemweb_readingsGroup.js 15189 2017-10-03 17:53:27Z justme1968



Ich nutze Firefox Version 61.0.1


Die Console liefert folgendes:

[Mitteilungsdetails anzeigen/ausblenden] TypeError: node.getAttribute is not a function[Weitere Informationen] sorttable.js:283:9
getInnerText
http://192.168.152.250:8083/fhem/pgm2/sorttable.js:283:9
getInnerText
http://192.168.152.250:8083/fhem/pgm2/sorttable.js:308:26
guessType
http://192.168.152.250:8083/fhem/pgm2/sorttable.js:242:14
makeSortable
http://192.168.152.250:8083/fhem/pgm2/sorttable.js:97:46
init/<
http://192.168.152.250:8083/fhem/pgm2/sorttable.js:45:9
forEach self-hosted:268:13 forEach self-hosted:279:5 forEach
http://192.168.152.250:8083/fhem/pgm2/sorttable.js:564:3
init
http://192.168.152.250:8083/fhem/pgm2/sorttable.js:43:5
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15
openRemotePrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:508:5
openPrompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:542:17
nsIPrompt_prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:730:9
prompt
jar:file:///C:/Program Files (x86)/Mozilla Firefox/omni.ja!/components/nsPrompter.js:583:20
retrieveJsMessages
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:4173:16
pollOnce
http://192.168.178.250:8083/fhem/pgm2/cordova-2.3.0.js:1077:15


VG, Thomas
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 29 Juli 2018, 14:27:18
Ich kann das nicht nachvollziehen. Sag doch etwas mehr über dein Setup (lists oder RAW der todoist Devices etc.). Etwas das ich nachstellen kann.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 29 Juli 2018, 14:53:28
Hallo Marwin,

was ich noch rausgefunden habe, ist dass sobald ich folgende Definition lösche, das Problem beseitigt ist:
define todoist_AllProjects_weblink weblink htmlCode {todoist_Html()}
Also muss der Fehler wohl irgendwo darin liegen.
Ich könnte zur Not auch darauf verzichten. Also keine Eile. Helfe aber gerne beim Fehler suchen.


Meine todoist - Projekte sind relativ simpel gehalten (Projekt-ID geändert):


defmod todoist_work todoist 12345678910
attr todoist_work DbLogExclude .*
attr todoist_work group todoist
attr todoist_work room Allgemein


defmod todoist_FHEM todoist 10987654321
attr todoist_FHEM DbLogExclude .*
attr todoist_FHEM group todoist
attr todoist_FHEM room Allgemein


Was noch zu erwähnen ist: in meiner work - Liste sind einige Projekte mit Unterprojekten angelegt.

VG, Thomas
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 29 Juli 2018, 15:09:33
Gibt es eine leere Liste?

Ich hätte gerne immer lists!!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 29 Juli 2018, 15:38:41
Von was genau willst du denn ein list? Von den einzelnen Projekten?
Es kommt nur die Fehlermeldung.
Selbst mit
define todoist_AllProjects_weblink weblink htmlCode {todoist_Html()}
wird die Seite nach der Fehlermeldung korrekt angezeigt. Auch mit Daten usw.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 29 Juli 2018, 15:53:53
list von den beteiligten Devices. Wie es üblich ist.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 29 Juli 2018, 19:05:14
Hi Marvin,

sorry hat bisschen länger gedauert. Ich wollte meine Original-Projekte aufgrund der vielen Namen die darin vorkommen, hier nicht posten. Daher habe ich jetzt diese vorübergehend rausgeschmissen und ein Test-Projekt hierfür angelegt mit dem ich den Fehler nachstellen kann.

Ich bekomme abwechselnd entweder den Fehler wie bereits erwähnt oder beim Klick auf den Raum "Unsorted" auch eine andere Fehlermeldung. Nach einem Reload geht's dann und es taucht Fehler2 auf. Beide Fehler hängen als Screenshot dran.

Zusäztlicher Fehler: Wenn ich mein neues TEST-Projekt über den Aktualisieren-Knopf aktualisieren möchte (siehe Screenshot Fehler3), bekomme ich folgende Error-Meldung:
GetTasks: Response was damaged or empty. See log for details.
und im Log steht:
2018.07.29 18:53:08 1: PERL WARNING: Use of uninitialized value $eo in concatenation (.) or string at /opt/fhem/FHEM/98_todoist.pm line 2109.
   
Und hier ein list des Test-Projekts:

Internals:
   CFGFN     
   DEF        1532882821565
   INTERVAL   1800
   NAME       todoist_TEST
   NOTIFYDEV  global
   NR         23404
   NTFY_ORDER 50-todoist_TEST
   PID        1532882821565
   STATE      active
   TYPE       todoist
   VERSION    1.1.72
   mayBeVisible 1
   READINGS:
     2018-07-29 19:00:23   countUsers      0
     2018-07-29 19:00:23   error           none
     2018-07-29 19:00:20   lastError       GetTasks: Response was damaged or empty. See log for details.
     2018-07-29 19:00:20   listText        -
     2018-07-29 18:53:02   state           active
   helper:
     errorData 
     errorMessage
     TIDS:
Attributes:
   DbLogExclude .*


Anbei auch noch ein Screenshot meines Test-Projekts.

Hoffe, das hilft dir weiter.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 29 Juli 2018, 20:23:42
Erscheint der Fehler auch, wenn du einen oder mehrere Einträge in der Liste hast?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 29 Juli 2018, 20:39:22
Fehler 1 und 2 ja.

Fehler 3 konnte ich gerade eliminieren. Das war mein Fehler - ich hatte mich in der ProjektID vertan.
Jetzt zeigt er die Aufgaben korrekt an und auch Klick auf Reload läuft ohne Fehler.

Somit ist nur noch Fehler 1 und 2. Diese bestehen weiterhin.

VG, Thomas
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 29 Juli 2018, 20:55:07
Ich weiß noch nicht was "Fehler 2" mit todoist zu tun haben soll.

Fehler 1 kommt von sortable, ich kann es aber nicht nachvollziehen. Kommt die Meldung auch in einem anderen Browser?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 29 Juli 2018, 21:10:44
Fehler 1 kommt auch im Opera und Chrome sobald ich folgendes verwende:
define todoist_AllProjects_weblink weblink htmlCode {todoist_Html()}

Fehler 2 ist mir auch nicht klar. Der könnte theoretisch auch von irgendwas anderem kommen - war mir nur zeitgleich aufgefallen. Da dieser jedoch nicht ständig auftritt, sondern nur manchmal, ist dies schwer nachzuvollziehen. Habe aber eben festgestellt dass Fehler 2 auch auftreten kann wenn obige Defintion gelöscht ist.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 29 Juli 2018, 21:25:45
Der Fehler kommt aus dem widget. Das ist klar.

Taucht er auch auf, wenn du keinen weblink definiert hast und in die Detailssicht des todoist Devices wechselst?

Hast du mehrere weblinks im gleichen Raum definiert?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 29 Juli 2018, 22:43:58
Nein, er taucht nur auf wenn ich diesen Weblink wie angegeben definiert habe. Unabhängig davon wieviele sonstige Weblinks ich habe.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 Juli 2018, 06:37:11
Wenn der Fehler nur auftaucht, wenn du einen Raum aufrufst, der den weblink enthält (in der Detailansicht des todoist devices, wird das Widget verwendet), dann muss es an der Interaktion mit anderen Elementen liegen.

Kannst du den weblink mal in einen leeren Raum legen und schauen, ob der Fehler noch immer auftauscht?

Wie viele Listen hast du definiert?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 30 Juli 2018, 07:48:01
Guten Morgen Marvin,

ich habe aktuell nur die eine Test-Liste und das Widget im Raum "Unsorted".
Als mir der Fehler jedoch ursprünglich aufgefallen war, hatte ich das Widget im Raum "Allgemein" und bekam dann immer beim Aufruf dieses Raums den Fehler.

Also tritt der Fehler immer in dem Raum auf in dem das Widget ist.

VG, Thomas
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 Juli 2018, 08:19:27
Die Frage war, ob es auch in einem sonst leeren Raum auftritt!?

Edit: Welche todoist Version verwendest du eigentlich? Aktuell ist 1.1.72
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 30 Juli 2018, 08:37:52
ZitatDie Frage war, ob es auch in einem sonst leeren Raum auftritt!?
Müsste ich heute Abend mal testen wenn ich daheim bin.

Kannst du den Fehler nicht reproduzieren wenn du den Weblink anlegst?
define todoist_AllProjects_weblink weblink htmlCode {todoist_Html()}

Evtl. noch zu erwähnen: Ich verwende den neuen f18 Style für mein FHEMWEB.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 Juli 2018, 08:54:00
Wie schon gesagt, kann ich das auf keinem meiner Systeme und in keinem Browser reproduzieren. Es gab einen ähnlichen Bug in einer alten Version aber das ist lange raus. Deshalb die Frage nach deiner todoist Version.

f18 nutze ich auch. Das ist kein Problem bei mir.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 30 Juli 2018, 09:17:06
Es ist die aktuelle Version. Steht auch in meinem list von gestern.

VERSION    1.1.72

Ich teste es heute Abend gerne nochmal mit einem leeren Raum. Interessanterweise wird es ja dennoch angezeigt. Trotz Fehlermeldung. nach einem Klick auf Ok lädt er die Seite ja korrekt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 Juli 2018, 09:22:40
Ja der Fehler macht auch nix kaputt. Du kannst generell die Fehler aus FHEMWEB im Popup mit einem Attribut (confirmJSError) abstellen. Wenn du mal nach Teilen des Fehlers im Forum suchst, finden sich weitere, ähnliche Probleme. Stellst du das Popup ab, werden auch keine weiteren Fehler mehr angezeigt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 Juli 2018, 10:57:06
Frage: Kannst du in der Liste sortieren (per drag&drop)?

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 31 Juli 2018, 19:02:01
Hi Marvin,

sorry bin gestern Abend aus gesundheitlichen Gründen nicht mehr zu gekommen.

Nun aber das Ergebnis:
1. Sortieren per Drag&Drop geht nachdem ich die Fehlermeldung weggedrückt habe und wird auch übernommen.
2. Wenn ich das Widget (weblink) in einen neuen leeren Raum lege, bekomme ich auch keine Fehlermeldung. Somit scheint sich da wohl in den anderen Räumen irgendwas zu beißen.
Also habe ich es mal von Raum zu Raum durchgehangelt um dem Fehler näher zu kommen. Dabei ist mir aufgefallen dass es in manchen Räumen keinen Fehler gibt.
Der Übeltäter scheint die readingsGroup zu sein. Denn es taucht nur in den Räumen auf wo ich readingsGroups definiert habe. Also habe ich auch eine in den leeren Test-Raum erstellt. Und schon taucht der Fehler auch dort auf.
Ich habe jedoch auch einen Raum für meine Sonos-Geräte und dort habe ich auch readingsGroups definiert. Dort kommt der Fehler aber nicht.
Der Unterschied zu meinen normalen readingsGroup-Devices und derer im Raum "Sonos" ist der, dass im Raum "Sonos" Funktionen aufgerufen werden die ich aus dem Sonos-Wiki übernommen habe. Also so:


defmod test_rg readingsGroup Sonos_Badezimmer:<{SONOS_getListRG($DEVICE,"Radios",1)}@Radios>
attr test_rg DbLogExclude .*
attr test_rg room test2


Während bei den Seiten auf denen die Fehlermeldung kommt, readingsGroup-Devices enthalten die z.B. so ausssehen:


defmod FlowerReadingsGroup readingsGroup <Pflanze>,<Bodenfeuchte>,<Dünger>,<Temperatur> Pflanze_\d{1,2}:moisture,fertility,temperature
attr FlowerReadingsGroup DbLogExclude .*
attr FlowerReadingsGroup mapping %ALIAS
attr FlowerReadingsGroup notime 1
attr FlowerReadingsGroup room FlowerSens
attr FlowerReadingsGroup valueFormat {'moisture' =>'{my $min = AttrVal($name, "minMoisture", 0);; my $max = AttrVal($name, "maxMoisture", 0);; my $val = $value . "%" . " (" . $min . "-" . $max . ")";; return $val;;}'}


Evtl. kannst du das mit readingsGroups nachstellen. Der Fehler tritt auch bei einer ganz simplen readingsGroup auf.

VG, Thomas
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 31 Juli 2018, 19:49:21
Danke für die Analyse. Ich habe mir schon gedacht, dass sich hier irgendwie verschiedene widgets in die Quere kommen. Ich muss mal schauen ob und wie readingsGroup sortable nutzt. Es kann etwas dauern, bis ich dazu komme.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ToM_ToM am 31 Juli 2018, 19:51:17
Mach dir keinen Stress. ;)
Es funtkioniert ja an sich. Und auf das eine Widget kann ich auch so lange verzichten.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: WBraun2014 am 17 Dezember 2018, 13:37:20
@Marvin78: kannst du bitte deine controls_todoist.txt aktualisieren?
Ich bekomme beim Update " Got 85746 bytes for FHEM/98_todoist.pm, expected 85629"
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 17 Dezember 2018, 14:00:37
Hm. Es sollte aktuell sein. Ich habe es nochmal neu gebaut. Bitte testen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: WBraun2014 am 17 Dezember 2018, 14:13:17
Jetzt passt es, vielen Dank für den schnellen Support !
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Januar 2019, 09:09:54
Das Modul 98_todoist wird nun über das FHEM-Update ausgeliefert. Eine Ankündigung dazu erfolgt, sobald/wenn ich Zugriff auf das Forum erhalte.

Danke an alle, die sich hier eingebracht haben. Die Anzahl der User, die das Modul verwenden, macht es nun nötig, dass das Modul offiziell wird. Sonst wird es sicher irgendwann schwer, das ganze vernünftig zu supporten.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: devien am 15 Januar 2019, 18:14:27
Hallo,

habe die Tage das Modul installiert und heute nachdem es eingecheckt ist auch gleich upgedated.
Das Modul funktionierte leider vor als auch nach dem Update nicht, im Log steht:

2019.01.15 18:01:15 2: AttrTemplates: got 45 entries
2019.01.15 18:01:17 1: PERL WARNING: Use of uninitialized value $eo in concatenation (.) or string at ./FHEM/98_todoist.pm line 2122.
2019.01.15 18:01:23 2: todoist (Wartung): Error Message: no data
2019.01.15 18:01:23 1: readingsUpdate(Wartung,listText,-) missed to call readingsBeginUpdate first.
2019.01.15 18:01:23 1: stacktrace:
2019.01.15 18:01:23 1:     main::readingsBulkUpdate            called by ./FHEM/98_todoist.pm (996)
2019.01.15 18:01:23 1:     main::todoist_GetTasksCallback      called by FHEM/HttpUtils.pm (420)
2019.01.15 18:01:23 1:     main::__ANON__                      called by fhem.pl (740)
2019.01.15 18:01:26 2: todoist (Wartung): Error Message: no data
2019.01.15 18:01:31 2: todoist (Wartung): Error Message: no data
2019.01.15 18:01:31 1: readingsUpdate(Wartung,listText,-) missed to call readingsBeginUpdate first.
2019.01.15 18:01:31 1: stacktrace:
2019.01.15 18:01:31 1:     main::readingsBulkUpdate            called by ./FHEM/98_todoist.pm (996)
2019.01.15 18:01:31 1:     main::todoist_GetTasksCallback      called by FHEM/HttpUtils.pm (420)
2019.01.15 18:01:31 1:     main::__ANON__                      called by fhem.pl (740)
2019.01.15 18:01:34 2: todoist (Wartung): Error Message: no data


hier ein List:
Internals:
   CHANGED   
   DEF        2203523604
   INTERVAL   1800
   MID        da39a3ee5e634fdss43434bf3457bdbfef95601890afd80709
   NAME       Wartung
   NOTIFYDEV  global
   NR         675
   NTFY_ORDER 64-Wartung
   PID        2203523604
   STATE      active
   TYPE       todoist
   VERSION    1.2.0.1
   mayBeVisible 1
   Helper:
     DBLOG:
       state:
         myDbLog:
           TIME       1547571690.65658
           VALUE      getTasks
   READINGS:
     2019-01-15 18:01:34   error           no data
     2019-01-15 18:01:34   lastError       no data
     2019-01-14 23:26:09   state           active
   helper:
     errorData 
     errorMessage
     TIDS:
Attributes:
   event-on-update-reading state
   room       Wohnzimmer


und falls noch erforderlich ein komplettes List
Type list <name> for detailed info.

Global:
  global               (no definition)

RPII2C:
  rpi2c                (Ok)

FHEMWEB:
  WEB                  (Initialized)
  WEB_192.168.0.106_43846 (Connected)
  WEB_192.168.0.121_51474 (Connected)
  WEB_192.168.0.121_51622 (Connected)
  WEB_192.168.0.121_51674 (Connected)
  WEB_192.168.0.121_51676 (Connected)

FRM:
  Arduino_01           (Initialized)
  Arduino_02           (Initialized)
  Arduino_03           (Initialized)
  Arduino_03_192.168.0.51_49161 (Connected)

OWServer:
  ows                  (Initialized)

OWDevice:
  DS18B20_PSP_1_01     (64.0&deg;C)
  DS18B20_PSP_1_02     (73.5&deg;C)
  DS18B20_PSP_1_03     (74.0&deg;C)
  DS18B20_PSP_1_04     (74.0&deg;C)
  DS18B20_PSP_2_01     (32.0&deg;C)
  DS18B20_PSP_2_02     (37.0&deg;C)
  DS18B20_PSP_2_03     (38.5&deg;C)
  DS18B20_PSP_2_04     (50.0&deg;C)
  DS18B20_Ruecklauf_S  (7.8&deg;C)
  DS18B20_Ruecklauf_S_WT (12.1°C)
  DS18B20_Vorlauf_S    (7.8&deg;C)
  DS18B20_Vorlauf_S_WT (12.0°C)

FRM_AD:
  Solar_temp_01        (1.0°C)
  Solar_temp_02        (-158.5°C)
  Solar_temp_03        (-249.3°C)
  Solar_temp_04        (-159.4°C)
  Solar_temp_05        (-161.0°C)
  Solar_temp_06        (-157.4°C)
  Solar_temp_07        (-159.9°C)
  Solar_temp_08        (-158.5°C)

FRM_OUT:
  A03_out01_HKV1       (on)
  A03_out02_HKV1       (on)
  A03_out03_HKV1       (off)
  A03_out04_HKV1       (off)
  A03_out05_HKV1       (off)
  A03_out06_HKV1       (off)
  A03_out07_HKV1       (off)
  A03_out08_HKV1       (off)
  A03_out09_HKV1       (off)
  A03_out10_HKV1       (off)
  A03_out11_HKV1       (off)
  A03_out12_HKV1       (off)
  A03_out13_HKV1       (off)
  A03_out14_HKV1       (off)
  A03_out15_HKV1       (off)
  A03_out16_HKV1       (off)
  Relay01              (off)
  Relay02              (off)

FRM_PWM:
  Licht_WZ_01_B        (255)
  Licht_WZ_01_G        (255)
  Licht_WZ_01_R        (255)
  Pumpe_01             (0)
  Pumpe_02             (71)
  Pumpe_03             (0)
  Pumpe_04             (0)
  Pumpe_05             (0)
  Pumpe_06             (28)
  Pumpe_07             (0)
  Pumpe_08             (0)

SYSSTAT:
  BBxM                 (0.09 0.05 0.05)

readingsGroup:
  zaehler              (Initialized)
  zaehler2             (Initialized)

NotifyAndroidTV:
  AF01                 (INITIALIZED)

TelegramBot:
  SR01CADO_Heat_bot    (Polling)

RPI_GPIO:
  i01                  (V: 1721.65m3 E: 0.14kWh P: 0.00 kW)
  i02                  (off)
  i03                  (off)
  i04                  (off)
  i05                  (off)
  i06                  (off)
  i07                  (off)
  i08                  (off)
  i09                  (off)
  i10                  (off)
  i11                  (off)
  i12                  (off)

I2C_MCP23008:
  relays0              (Ok)

I2C_MCP342x:
  ai                   (Ok)

at:
  S_SOLARCNTSCHEDULER  (Next: 00:00:00)

eventTypes:
  eventTypes           (active)

notify:
  initialUsbCheck      (2019-01-15 18:00:31)
  n_Relay1             (active)
  n_Relay2             (active)
  n_Relay3             (active)
  n_Relay4             (active)
  n_Relay5             (active)
  n_Relay6             (2019-01-15 18:09:46)
  n_Relay7             (active)
  n_Relay8             (active)
  n_pwm_unipi1.1       (active)
  notify_PS_kalt       (inactive)
  notify_check_tele    (active)
  notify_fhem_reload   (2019-01-15 18:00:31)
  testnotify           (inactive)

FileLog:
  Logfile              (active)

DbLog:
  myDbLog              (connected)

FHEM2FHEM:
  F2F_02               (connected)
  F2F_03               (connected)

PWMR:
  PW_RoomBA            (From DS18B20_FL)
  PW_RoomFL            (From DS18B20_FL)
  PW_RoomKU            (From DS18B20_FL)
  PW_RoomKZ            (From DS18B20_KZ)
  PW_RoomSZ            (From DS18B20_SZ)
  PW_RoomWZ            (From DS18B20_WZ)

PWM:
  PWM.FussbodenHeizung (lastrun: 2019-01-15 18:10:46)

FLOORPLAN:
  Erdgeschoss          (Defined)
  HWR3                 (Defined)
  Heizung              (Defined)
  Hundezwinger         (Defined)
  Solar                (Defined)

allowed:
  allowed_WEB          (validFor:WEB)
  allowed_telnetPort   (validFor:telnetPort)

DOIF:
  DI_EG.HWR.FussbodenpumpeAnforderung (cmd_2)
  DI_PW_BApause        (cmd_1)
  DI_PW_FLpause        (cmd_1)
  DI_PW_KUpause        (cmd_1)
  DI_PW_KZpause        (cmd_1)
  DI_PW_SZpause        (cmd_1)
  DI_PW_WZpause        (cmd_1)
  Holzvergaserkessel   (disabled)
  LichtWZ              (cmd_1)
  PW_Frost_Protect     (cmd_1)
  Pelletkessel         (cmd_1)
  Pumpe_FBHZ_EG        (cmd_2)
  Solar_on_off         (cmd_1)
  W_Ventil_Puffer      (cmd_1)
  Waermetauscher_on_off (cmd_1)

DOIFtools:
  DI_tool              (initialized)

Heating_Control:
  HC_FL                (active)
  HC_KU                (active)
  HC_KZ                (active)
  HC_SZ                (active)
  HC_WZ                (active)

SVG:
  SVG_myDbLog_1        (initialized)
  SVG_myDbLog_10       (initialized)
  SVG_myDbLog_11       (initialized)
  SVG_myDbLog_12       (initialized)
  SVG_myDbLog_13       (initialized)
  SVG_myDbLog_14       (initialized)
  SVG_myDbLog_2        (initialized)
  SVG_myDbLog_3        (initialized)
  SVG_myDbLog_4        (initialized)
  SVG_myDbLog_5        (initialized)
  SVG_myDbLog_6        (initialized)
  SVG_myDbLog_7        (initialized)
  SVG_myDbLog_8        (initialized)
  SVG_myDbLog_9        (initialized)

alarmclock:
  Licht_WZ_morning     (OK)

autocreate:
  autocreate           (active)

dummy:
  DS18B20_FL           (19.1°C)
  DS18B20_HKV1_01      (25.9°C)
  DS18B20_HKV1_02      (24.9°C)
  DS18B20_HKV1_03      (21.8°C)
  DS18B20_HKV1_04      (21.5°C)
  DS18B20_HKV1_05      (21.6°C)
  DS18B20_HKV1_06      (21.1°C)
  DS18B20_HKV1_07      (20.1°C)
  DS18B20_HKV1_08      (19.4°C)
  DS18B20_HKV1_09      (19.0°C)
  DS18B20_HKV1_10      (19.4°C)
  DS18B20_HKV1_Ruecklauf (26.1°C)
  DS18B20_HKV1_Vorlauf (33.2°C)
  DS18B20_KU           (19.4°C)
  DS18B20_KZ           (20.6°C)
  DS18B20_SZ           (20.1°C)
  DS18B20_WZ           (21.6°C)
  D_EG.HWR.FussbodenAnforderung (on)
  D_EG.HWR.FussbodenPumpeAnforderung (on)
  D_Fussbodenpumpe01_Wartung (off)
  D_LichtWZ            (on)
  D_PW_BApause         (off)
  D_PW_FLpause         (off)
  D_PW_KUpause         (off)
  D_PW_KZpause         (off)
  D_PW_SZpause         (off)
  D_PW_Standart        (off)
  D_PW_WZpause         (off)
  D_Pelletkessel_Wartung (off)
  D_SOLARCNTAT1STDAYOFMONTH (1652.87208619287)
  D_SOLARCNTAT1STDAYOFYEAR (659.403668090063)
  D_SOLARCNTATMIDNIGHT (1680.8434980115)
  D_Solarertrag        (2.79kWh)
  GY30_HZ_01           (0.0 Lux)
  HZ_Licht_links_innen (off)
  PWM_UniPi1.1         (0)
  Relay1               (off)
  Relay2               (on)
  Relay3               (off)
  Relay4               (off)
  Relay5               (off)
  Relay6               (on)
  Relay7               (off)
  Relay8               (off)
  htu21d_HZ_01         (6.5°C   111.4 RH)
  modulhtu21d          (T: 36.8 H: 57.2)
  solarzaehlerstand_dummy (V: 0m3)

freezemon:
  freezes              (inactive)

ping:
  kuhnapf              (disabled)

structure:
  struc_PW_RoomWZ      (on)

telnet:
  telnetPort           (Initialized)
  telnetPort_10.10.21.121_40005 (Connected)

todoist:
  Wartung              (active)


und version:
Latest Revision: 18263

File                  Rev   Last Change

fhem.pl               18259 2019-01-14 20:35:10Z rudolfkoenig
98_alarmclock.pm      16981 2018-07-14 09:35:07Z FlorianZ
96_allowed.pm         17613 2018-10-24 15:37:39Z rudolfkoenig
90_at.pm              17561 2018-10-18 14:45:30Z rudolfkoenig
98_autocreate.pm      18091 2018-12-30 09:57:04Z rudolfkoenig
93_DbLog.pm           17772 2018-11-18 07:42:15Z DS_Starter
98_DOIF.pm            18023 2018-12-21 15:07:36Z Damian
98_DOIFtools.pm       18206 2019-01-10 18:18:10Z Ellert
98_dummy.pm           16965 2018-07-09 07:59:58Z rudolfkoenig
91_eventTypes.pm      14888 2017-08-13 12:07:12Z rudolfkoenig
93_FHEM2FHEM.pm       17361 2018-09-17 11:44:10Z rudolfkoenig
01_FHEMWEB.pm         18111 2019-01-01 14:41:21Z rudolfkoenig
92_FileLog.pm         18224 2019-01-12 18:48:47Z rudolfkoenig
95_FLOORPLAN.pm       13735 2017-03-19 12:43:53Z UliM
98_freezemon.pm       18238 2019-01-13 13:40:53Z KernSani
10_FRM.pm             15941 2018-01-20 21:20:20Z jensb
20_FRM_AD.pm          15932 2018-01-19 21:19:00Z jensb
20_FRM_OUT.pm         15928 2018-01-19 21:07:42Z jensb
20_FRM_PWM.pm         15929 2018-01-19 21:11:06Z jensb
98_Heating_Control.pm 16005 2018-01-27 06:05:51Z igami
52_I2C_MCP23008.pm    17863 2018-11-27 23:28:39Z klausw
52_I2C_MCP342x.pm     17863 2018-11-27 23:28:39Z klausw
No Id found for 99_myFloorplanList.pm
91_notify.pm          17225 2018-08-29 12:34:29Z rudolfkoenig
37_NotifyAndroidTV.pm 16138 2018-02-09 20:36:36Z justme1968
11_OWDevice.pm        14523 2017-06-16 05:15:56Z neubert
10_OWServer.pm         8629 2015-05-24 20:31:31Z borisneubert
98_ping.pm            10939 2016-02-25 22:30:46Z mattwire
94_PWM.pm             16090 2018-02-05 11:04:56Z jamesgo
93_PWMR.pm            16121 2018-02-08 14:55:52Z jamesgo
33_readingsGroup.pm   16299 2018-03-01 08:06:55Z justme1968
00_RPII2C.pm          16799 2018-05-29 23:14:28Z klausw
51_RPI_GPIO.pm        16687 2018-05-04 19:02:38Z klausw
98_structure.pm       18182 2019-01-08 18:34:06Z rudolfkoenig
99_SUNRISE_EL.pm      16632 2018-04-17 19:00:21Z rudolfkoenig
98_SVG.pm             17779 2018-11-18 17:49:14Z rudolfkoenig
32_SYSSTAT.pm         10567 2016-01-18 21:34:09Z justme1968
50_TelegramBot.pm     16382 2018-03-11 13:20:55Z viegener
98_telnet.pm          17529 2018-10-14 12:57:06Z rudolfkoenig
98_todoist.pm         18263 2019-01-15 06:26:31Z marvin78
59_Twilight.pm        16005 2018-01-27 06:05:51Z igami
99_Utils.pm           15713 2017-12-28 11:01:02Z rudolfkoenig
98_version.pm         15140 2017-09-26 09:20:09Z markusbloch
98_WeekdayTimer.pm    16005 2018-01-27 06:05:51Z igami
98_XmlList.pm         13128 2017-01-17 21:40:09Z rudolfkoenig

AttrTemplate.pm       17973 2018-12-14 18:19:05Z rudolfkoenig
No Id found for Base.pm
Blocking.pm           17553 2018-10-17 15:56:35Z rudolfkoenig
Color.pm              11159 2016-03-30 16:08:06Z justme1968
No Id found for Constants.pm
DevIo.pm              17994 2018-12-17 14:32:10Z rudolfkoenig
No Id found for Firmata.pm
GPUtils.pm             6653 2014-10-02 11:59:37Z ntruchsess
HttpUtils.pm          17831 2018-11-24 15:09:17Z rudolfkoenig
myUtilsTemplate.pm     7570 2015-01-14 18:31:44Z rudolfkoenig
myUtilsTemplate.pm     7570 2015-01-14 18:31:44Z rudolfkoenig
myUtilsTemplate.pm     7570 2015-01-14 18:31:44Z rudolfkoenig
# $Id: OWNet.pm,v 1.24 2013/02/02 11:41:28 alfille Exp $
No Id found for Platform.pm
No Id found for Protocol.pm
RTypes.pm             10476 2016-01-12 21:03:33Z borisneubert
SetExtensions.pm      18197 2019-01-09 20:50:34Z rudolfkoenig
TcpServerUtils.pm     17529 2018-10-14 12:57:06Z rudolfkoenig

doif.js                    15546 2017-12-03 09:57:42Z Ellert
fhemweb.js                 17826 2018-11-23 10:40:33Z rudolfkoenig
fhemweb_readingsGroup.js   15189 2017-10-03 17:53:27Z justme1968



ich komme aktuell auf keinen grünen Zweig, bei euch dürfte wahrscheinlich jemand die Fehlermeldung im Log zuordnen können.

Wo hängt es bei mir?
Brauchts noch was von mir?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Januar 2019, 19:11:11
Ist die Projekt-ID korrekt? Hast du den korrekten API key hinterlegt?

Bitte mal ein Log mit mindestens verbose 4 posten.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Januar 2019, 20:25:12
@devien: Ich habe soeben ein paar Dinge gecheckt. Aus meiner Sicht, ist entweder die Projekt-ID falsch oder du hast den API-Token nicht korrekt eingetragen. Ob es doch ggf. noch ein anderes Problem gibt, kann ich erst sagen mit einem Log verbose 4 oder besser 5.

Ggf. verbaue ich noch eine Verprobung auf korrekte Länge des Tokens ein (dürfte immer 40 Zeichen lang sein).
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: devien am 15 Januar 2019, 21:33:11
hier ein Verbose 4:
2019.01.15 21:31:33 4: todoist (Wartung): Curl Data: $VAR1 = {
          'project_id' => '2203523604',
          'token' => '9642c38e4ee7cc7923c267e2f3ab64acc01245e7'
        };

2019.01.15 21:31:34 2: todoist (Wartung): Error Message: no data
2019.01.15 21:31:34 4: todoist (Wartung): Api-Error Callback-data: https://todoist.com/api/v7/projects/get_data: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
2019.01.15 21:31:34 1: readingsUpdate(Wartung,listText,-) missed to call readingsBeginUpdate first.
2019.01.15 21:31:34 1: stacktrace:
2019.01.15 21:31:34 1:     main::readingsBulkUpdate            called by ./FHEM/98_todoist.pm (996)
2019.01.15 21:31:34 1:     main::todoist_GetTasksCallback      called by FHEM/HttpUtils.pm (420)
2019.01.15 21:31:34 1:     main::__ANON__                      called by fhem.pl (740)
2019.01.15 21:31:36 2: todoist (Wartung): Error Message: no data
2019.01.15 21:31:36 4: todoist (Wartung): Api-Error Callback-data: https://todoist.com/api/v7/sync: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure


ein verbose 5 kommt gleich nach.

bevor jemand fragt, Port 443 ist für das subnetz tcp und udp freigegeben, hab ich gecheckt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: devien am 15 Januar 2019, 21:39:02
hier noch das verbose 5:
2019.01.15 21:38:06 4: todoist (Wartung): set getTasks manually. Timer restartet.
2019.01.15 21:38:07 5: Wartung: hash: $VAR1 = {
          '.attreour' => [
                           'state'
                         ],
          '.attrminint' => [],
          'DEF' => '2203523604',
          'Helper' => {
                        'DBLOG' => {
                                     'state' => {
                                                  'myDbLog' => {
                                                                 'TIME' => '1547584686.17139',
                                                                 'VALUE' => 'getTasks'
                                                               }
                                                }
                                   }
                      },
          'INTERVAL' => 1800,
          'MID' => 'da39a3ee5e634fdss43434bf3457bdbfef95601890afd80709',
          'NAME' => 'Wartung',
          'NOTIFYDEV' => 'global',
          'NR' => 675,
          'NTFY_ORDER' => '64-Wartung',
          'PID' => '2203523604',
          'READINGS' => {
                          'error' => {
                                       'TIME' => '2019-01-15 21:31:36',
                                       'VAL' => 'no data'
                                     },
                          'lastError' => {
                                           'TIME' => '2019-01-15 21:31:36',
                                           'VAL' => 'no data'
                                         },
                          'state' => {
                                       'TIME' => '2019-01-14 23:26:09',
                                       'VAL' => 'active'
                                     }
                        },
          'STATE' => 'active',
          'TYPE' => 'todoist',
          'VERSION' => '1.2.0.1',
          'helper' => {
                        'TIDS' => [],
                        'errorData' => '',
                        'errorMessage' => ''
                      },
          'mayBeVisible' => 1
        };

2019.01.15 21:38:07 4: todoist (Wartung): Curl Data: $VAR1 = {
          'project_id' => '2203523604',
          'token' => '9642c38e4ee7cc7923c267e2f3ab64acc01245e7'
        };

2019.01.15 21:38:07 5: todoist (Wartung): Param: $VAR1 = {
          'callback' => sub { "DUMMY" },
          'completed' => 0,
          'data' => {
                      'project_id' => '2203523604',
                      'token' => '9642c38e4ee7cc7923c267e2f3ab64acc01245e7'
                    },
          'hash' => {
                      '.attreour' => [
                                       'state'
                                     ],
                      '.attrminint' => [],
                      'DEF' => '2203523604',
                      'Helper' => {
                                    'DBLOG' => {
                                                 'state' => {
                                                              'myDbLog' => {
                                                                             'TIME' => '1547584686.17139',
                                                                             'VALUE' => 'getTasks'
                                                                           }
                                                            }
                                               }
                                  },
                      'INTERVAL' => 1800,
                      'MID' => 'da39a3ee5e634fdss43434bf3457bdbfef95601890afd80709',
                      'NAME' => 'Wartung',
                      'NOTIFYDEV' => 'global',
                      'NR' => 675,
                      'NTFY_ORDER' => '64-Wartung',
                      'PID' => '2203523604',
                      'READINGS' => {
                                      'error' => {
                                                   'TIME' => '2019-01-15 21:31:36',
                                                   'VAL' => 'no data'
                                                 },
                                      'lastError' => {
                                                       'TIME' => '2019-01-15 21:31:36',
                                                       'VAL' => 'no data'
                                                     },
                                      'state' => {
                                                   'TIME' => '2019-01-14 23:26:09',
                                                   'VAL' => 'active'
                                                 }
                                    },
                      'STATE' => 'active',
                      'TYPE' => 'todoist',
                      'VERSION' => '1.2.0.1',
                      'helper' => {
                                    'TIDS' => [],
                                    'errorData' => '',
                                    'errorMessage' => ''
                                  },
                      'mayBeVisible' => 1
                    },
          'header' => 'Content-Type: application/x-www-form-urlencoded',
          'method' => 'POST',
          'timeout' => 7,
          'url' => 'https://todoist.com/api/v7/projects/get_data'
        };

2019.01.15 21:38:07 5: todoist (Wartung):  Task Callback data-raw: $VAR1 = '';

2019.01.15 21:38:07 5: todoist (Wartung):  Task Callback param: $VAR1 = {
          'NAME' => '',
          'addr' => 'https://todoist.com:443',
          'auth' => 0,
          'callback' => sub { "DUMMY" },
          'completed' => 0,
          'compress' => 1,
          'conn' => undef,
          'data' => {
                      'project_id' => '2203523604',
                      'token' => '9642c38e4ee7cc7923c267e2f3ab64acc01245e7'
                    },
          'displayurl' => 'https://todoist.com/api/v7/projects/get_data',
          'hash' => {
                      '.attreour' => [
                                       'state'
                                     ],
                      '.attrminint' => [],
                      'DEF' => '2203523604',
                      'Helper' => {
                                    'DBLOG' => {
                                                 'state' => {
                                                              'myDbLog' => {
                                                                             'TIME' => '1547584686.17139',
                                                                             'VALUE' => 'getTasks'
                                                                           }
                                                            }
                                               }
                                  },
                      'INTERVAL' => 1800,
                      'MID' => 'da39a3ee5e634fdss43434bf3457bdbfef95601890afd80709',
                      'NAME' => 'Wartung',
                      'NOTIFYDEV' => 'global',
                      'NR' => 675,
                      'NTFY_ORDER' => '64-Wartung',
                      'PID' => '2203523604',
                      'READINGS' => {
                                      'error' => {
                                                   'TIME' => '2019-01-15 21:31:36',
                                                   'VAL' => 'no data'
                                                 },
                                      'lastError' => {
                                                       'TIME' => '2019-01-15 21:31:36',
                                                       'VAL' => 'no data'
                                                     },
                                      'state' => {
                                                   'TIME' => '2019-01-14 23:26:09',
                                                   'VAL' => 'active'
                                                 }
                                    },
                      'STATE' => 'active',
                      'TYPE' => 'todoist',
                      'VERSION' => '1.2.0.1',
                      'helper' => {
                                    'TIDS' => [],
                                    'errorData' => '',
                                    'errorMessage' => ''
                                  },
                      'mayBeVisible' => 1
                    },
          'header' => 'Content-Type: application/x-www-form-urlencoded',
          'host' => 'todoist.com',
          'hu_blocking' => 0,
          'hu_port' => 443,
          'hu_portSfx' => '',
          'loglevel' => 4,
          'method' => 'POST',
          'path' => '/api/v7/projects/get_data',
          'protocol' => 'https',
          'redirects' => 0,
          'sslargs' => {},
          'timeout' => 7,
          'url' => 'https://todoist.com/api/v7/projects/get_data'
        };

2019.01.15 21:38:07 2: todoist (Wartung): Error Message: no data
2019.01.15 21:38:07 4: todoist (Wartung): Api-Error Callback-data: https://todoist.com/api/v7/projects/get_data: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
2019.01.15 21:38:07 1: readingsUpdate(Wartung,listText,-) missed to call readingsBeginUpdate first.
2019.01.15 21:38:07 1: stacktrace:
2019.01.15 21:38:07 1:     main::readingsBulkUpdate            called by ./FHEM/98_todoist.pm (996)
2019.01.15 21:38:07 1:     main::todoist_GetTasksCallback      called by FHEM/HttpUtils.pm (420)
2019.01.15 21:38:07 1:     main::__ANON__                      called by fhem.pl (740)
2019.01.15 21:38:09 5: Wartung: hash: $VAR1 = {
          '.attreour' => [
                           'state'
                         ],
          '.attrminint' => [],
          'CHANGED' => undef,
          'DEF' => '2203523604',
          'Helper' => {
                        'DBLOG' => {
                                     'state' => {
                                                  'myDbLog' => {
                                                                 'TIME' => '1547584686.17139',
                                                                 'VALUE' => 'getTasks'
                                                               }
                                                }
                                   }
                      },
          'INTERVAL' => 1800,
          'MID' => 'da39a3ee5e634fdss43434bf3457bdbfef95601890afd80709',
          'NAME' => 'Wartung',
          'NOTIFYDEV' => 'global',
          'NR' => 675,
          'NTFY_ORDER' => '64-Wartung',
          'PID' => '2203523604',
          'READINGS' => {
                          'error' => {
                                       'TIME' => '2019-01-15 21:38:07',
                                       'VAL' => 'no data'
                                     },
                          'lastError' => {
                                           'TIME' => '2019-01-15 21:38:07',
                                           'VAL' => 'no data'
                                         },
                          'state' => {
                                       'TIME' => '2019-01-14 23:26:09',
                                       'VAL' => 'active'
                                     }
                        },
          'STATE' => 'active',
          'TYPE' => 'todoist',
          'VERSION' => '1.2.0.1',
          'helper' => {
                        'TIDS' => [],
                        'errorData' => '',
                        'errorMessage' => ''
                      },
          'mayBeVisible' => 1
        };

2019.01.15 21:38:09 5: todoist (Wartung): Param: $VAR1 = {
          'callback' => sub { "DUMMY" },
          'data' => {
                      'resource_types' => '["collaborators"]',
                      'sync_token' => '*',
                      'token' => '9642c38e4ee7cc7923c267e2f3ab64acc01245e7'
                    },
          'hash' => {
                      '.attreour' => [
                                       'state'
                                     ],
                      '.attrminint' => [],
                      'CHANGED' => undef,
                      'DEF' => '2203523604',
                      'Helper' => {
                                    'DBLOG' => {
                                                 'state' => {
                                                              'myDbLog' => {
                                                                             'TIME' => '1547584686.17139',
                                                                             'VALUE' => 'getTasks'
                                                                           }
                                                            }
                                               }
                                  },
                      'INTERVAL' => 1800,
                      'MID' => 'da39a3ee5e634fdss43434bf3457bdbfef95601890afd80709',
                      'NAME' => 'Wartung',
                      'NOTIFYDEV' => 'global',
                      'NR' => 675,
                      'NTFY_ORDER' => '64-Wartung',
                      'PID' => '2203523604',
                      'READINGS' => {
                                      'error' => {
                                                   'TIME' => '2019-01-15 21:38:07',
                                                   'VAL' => 'no data'
                                                 },
                                      'lastError' => {
                                                       'TIME' => '2019-01-15 21:38:07',
                                                       'VAL' => 'no data'
                                                     },
                                      'state' => {
                                                   'TIME' => '2019-01-14 23:26:09',
                                                   'VAL' => 'active'
                                                 }
                                    },
                      'STATE' => 'active',
                      'TYPE' => 'todoist',
                      'VERSION' => '1.2.0.1',
                      'helper' => {
                                    'TIDS' => [],
                                    'errorData' => '',
                                    'errorMessage' => ''
                                  },
                      'mayBeVisible' => 1
                    },
          'header' => 'Content-Type: application/x-www-form-urlencoded',
          'method' => 'POST',
          'timeout' => 7,
          'url' => 'https://todoist.com/api/v7/sync'
        };

2019.01.15 21:38:10 5: todoist (Wartung): User Callback data: $VAR1 = '';

2019.01.15 21:38:10 2: todoist (Wartung): Error Message: no data
2019.01.15 21:38:10 4: todoist (Wartung): Api-Error Callback-data: https://todoist.com/api/v7/sync: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Januar 2019, 21:39:11
Schau mal hier: https://forum.fhem.de/index.php/topic,78572.msg723052.html#msg723052

und lösche mal deinen API Token aus deinem Beitrag.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: devien am 15 Januar 2019, 21:42:23
Zitat von: marvin78 am 15 Januar 2019, 21:39:11
Schau mal hier: https://forum.fhem.de/index.php/topic,78572.msg723052.html#msg723052

und lösche mal deinen API Token aus deinem Beitrag.

ich hab die Vorraussetzungen gemäß erstem Thread installiert
check:
root@unipi:~# apt-get install libio-socket-ssl-perl
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libio-socket-ssl-perl is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@unipi:~#


musste extra Perl manuell kompilieren und installieren um auf eine Supportette Version zu kommen dafür.
Ich glaub daran liegts nicht.

bzgl. Token, den erneuere ich sobald es funktioniert ohnehin, aktuell ist nur bisl Testfüllung im todoist, habe keine Sorge das mir da wichtige daten wegkommen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Januar 2019, 21:47:36
Ich glaube aber, dass hier das Problem liegt. Der Fehler deutet auf Probleme mit der SSL Verbindung hin, hier vermutlich aufgrund einer veralteten Version. Sag mal etwas über dein System.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: devien am 15 Januar 2019, 22:14:52
unipi unter raspberrypi v2b+
betriebssystem unipian v 0.3 (Debian wheezy)

root@unipi:~# perl -v

This is perl 5, version 14, subversion 2 (v5.14.2) built for arm-linux-gnueabihf-thread-multi-64int
(with 89 registered patches, see perl -V for more detail)

Platform:
    osname=linux, osvers=3.0.90, archname=arm-linux-gnueabihf-thread-multi-64int


apt-get update und upgrade laufen sauber durch ohne fehlermeldung ( aber die ziehen wohl auch nur über port 80)

wie kann ich ssl funktionalität via Komandozeile checken, ein grafisches Interface ist nicht drauf?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 15 Januar 2019, 22:19:34
Ich müsste mal genauer schauen. Der erste Test, der mir einfällt: httpmod und eine SSL geschützte Seite.

Hast du ggf. ein weiteres System, auf dem du testen kannst?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 16 Januar 2019, 07:36:33
@devien: Ich habe ins git (https://github.com/marvin78/FHEM-todoist) (nicht im FHEM SVN) eine Version mit dem Attribut sslVersion eingecheckt. Mit dem könntest du mal ein wenig rumspielen und testen, ob man damit das Verhalten beeinflussen kann. httpUtils (Grundlage der Verbindung im todoist Modul) verwendet default "SSLv23:!SSLv3:!SSLv2".

Ich würde aber gerne auch mal ein Ergebnis eines Tests mit httpmod sehen.

define testSSL HTTPMOD https://todoist.com/api/v7/projects/get_data 60

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: devien am 16 Januar 2019, 09:35:21
hab gestern noch ein httpmod mit sparkasse.de gesetzt, da konnte fhem sogar den body laden. die Antwort von todoist.com sah hingegen nicht so toll aus:

2019.01.16 09:14:19 3: thtpspk: Defined with URL https://www.sparkasse.de/ and interval 120
2019.01.16 09:14:21 3: thtpspk: Read response to update didn't match any Reading
2019.01.16 09:16:21 3: thtpspk: Read response to update didn't match any Reading
2019.01.16 09:18:21 3: thtpspk: Read response to update didn't match any Reading
2019.01.16 09:20:32 3: thtpspk: Read response to update didn't match any Reading
2019.01.16 09:22:32 3: thtpspk: Read response to update didn't match any Reading
2019.01.16 09:24:32 3: thtpspk: Read response to update didn't match any Reading
2019.01.16 09:26:32 3: thtpspk: Read response to update didn't match any Reading
2019.01.16 09:27:28 3: testSSL: Defined with URL https://todoist.com/api/v7/projects/get_data and interval 60
2019.01.16 09:27:30 3: testSSL: Read callback: Error: https://todoist.com/api/v7/projects/get_data: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
2019.01.16 09:28:30 3: testSSL: Read callback: Error: https://todoist.com/api/v7/projects/get_data: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
2019.01.16 09:28:32 3: thtpspk: Read response to update didn't match any Reading
2019.01.16 09:29:30 3: testSSL: Read callback: Error: https://todoist.com/api/v7/projects/get_data: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure


hier ein List vom testSSL mit show error:
Internals:
   BUSY       0
   CFGFN     
   DEF        https://todoist.com/api/v7/projects/get_data 60
   Interval   60
   LASTSEND   1547627610.76735
   MainURL    https://todoist.com/api/v7/projects/get_data
   ModuleVersion 3.5.4 - 9.11.2018
   NAME       testSSL
   NR         1043
   STATE      ???
   TRIGGERTIME 1547627670.76524
   TRIGGERTIME_FMT 2019-01-16 09:34:30
   TYPE       HTTPMOD
   addr       https://todoist.com:443
   auth       0
   compress   1
   conn       
   data       
   displayurl https://todoist.com/api/v7/projects/get_data
   header     
   host       todoist.com
   httpbody   
   httpversion 1.0
   hu_blocking 0
   hu_port    443
   hu_portSfx
   ignoreredirects 0
   loglevel   4
   path       /api/v7/projects/get_data
   protocol   https
   redirects  0
   timeout    2
   url        https://todoist.com/api/v7/projects/get_data
   value      0
   Helper:
     DBLOG:
       LAST_ERROR:
         myDbLog:
           TIME       1547627610.95441
           VALUE      https://todoist.com/api/v7/projects/get_data: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
   QUEUE:
   READINGS:
     2019-01-16 09:33:30   LAST_ERROR      https://todoist.com/api/v7/projects/get_data: Can't connect(2) to https://todoist.com:443:  SSL connect attempt failed with unknown error error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
   REQUEST:
     data       
     header     
     ignoreredirects 0
     retryCount 0
     type       update
     url        https://todoist.com/api/v7/projects/get_data
     value      0
   sslargs:
Attributes:
   enableControlSet 0
   enableCookies 0
   room       Wohnzimmer
   showBody   1
   showError  1


google sagt Openssl aktualisieren und net::SSLLeay neu kompilieren..
ich schau mal wie ich das hinbekomme ohne meine ganze Haussteuerung abzuschießen.

aktuell hab ich
root@unipi:~# openssl version
OpenSSL 1.0.1t  3 May 2016

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 16 Januar 2019, 09:38:17
Ich besitze kein System, mit dem ich das nachstellen kann. Ich kann dir nur einmal empfehlen, verschiedene sslVersion Einträge in HTTPMOD auszuprobieren oder die Testversion von todoist aus dem git zu laden und direkt dort das Attribut sslVersion auszutesten.

Edit: Ach und poste hier mal ein list vom global Device.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: devien am 16 Januar 2019, 10:24:07
hab Net::SSLeay neu installiert, lief sauber durch
cpan[1]> install Net::SSLeay
.
.
Appending installation info to /usr/lib/perl/5.14/perllocal.pod
  MIKEM/Net-SSLeay-1.85.tar.gz
  make install  -- OK


ich checke mal wie ich verschiedene sslVersionen in httpmod testen kann...
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: devien am 16 Januar 2019, 13:07:50
so, habe nun OpenSSL 1.1.0f  25 May 2017
installiert um TLSv1.3 Unterstützung zu bekommen.
der Eintrag vom httpmod Test ist nun sauber im Log

2019.01.16 12:52:57 3: testSSL: Read response to update didn't match any Reading
2019.01.16 12:53:45 1: PERL WARNING: Argument " >40" isn't numeric in numeric lt (<) at fhem.pl line 4712.
2019.01.16 12:53:57 3: testSSL: Read response to update didn't match any Reading
2019.01.16 12:54:49 1: PERL WARNING: Use of uninitialized value $eo in concatenation (.) or string at ./FHEM/98_todoist.pm line 2122.
2019.01.16 12:54:57 3: testSSL: Read response to update didn't match any Reading


und auch todoist funktioniert nun nach der reaktivierung.

Es war also die OpenSSL version an der es lag weil hier nicht TLS1.3 unterstützt wurde.

Vielen Dank für eure Unterstützung.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 16 Januar 2019, 13:09:27
Sehr gut. Mich hätte noch interessiert, ob das Attribut sslVersion auch schon hätte Besserung bringen können. Denke aber, dass das nicht der Fall ist.

Viel Spaß mit dem Modul.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: devien am 16 Januar 2019, 13:16:58
Zitat von: marvin78 am 16 Januar 2019, 13:09:27
Sehr gut. Mich hätte noch interessiert, ob das Attribut sslVersion auch schon hätte Besserung bringen können. Denke aber, dass das nicht der Fall ist.

Viel Spaß mit dem Modul.

hatte ich gecheckt, hatte jedoch weder bei v23 , v2 noch bei v3 einen Unterschied gemacht, naja bei v2 besagte die errormeldung das v2 nicht unterstützt wird....
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: FoChris am 28 Januar 2019, 18:44:05
Hallo Marvin,

mein Update Prozess läuft leider nicht durch, erhalte folgende Meldung:
2019.01.28 18:41:59 1 : todoist
2019.01.28 18:41:59 1 : UPD FHEM/98_todoist.pm
2019.01.28 18:41:59 1 : Got 85905 bytes for FHEM/98_todoist.pm, expected 85747
2019.01.28 18:41:59 1 : aborting.


Mache ich hier etwas falsch?

Gruß Christian
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 28 Januar 2019, 18:46:27
Das Modul gibt es mittlerweile per FHEM Update. Das Update aus dem git ist nicht mehr nötig und auch nicht empfohlen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: FoChris am 28 Januar 2019, 20:31:47
ah, das wars. Hab den Update Link zum git wieder raus genommen, nun läuft das Update durch.

Irgendwie läuft's trotzdem nicht. Ich scheitere schon am definieren. :-[

Ich hab mich auf der todoist Seite registriert und das ProjektID rauskopiert.
Wenn ich die Liste definieren möchte, also mittels define td todoist 22******** bekomme ich sofort die Antwort Cannot load module todoist

Welchen Schritt habe ich vergessen?
Hoffe, du hast einen Tipp für mich.

Vielen Dank schon mal!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 28 Januar 2019, 20:35:09
Hast du nach dem update FHEM neu gestartet?

Für das Modul todoist sind gewisse Perl-Module als Voraussetzung genannt. Diese findest du in der Doku (help todoist) oder im ersten Post dieses Threads. Hast du diese installiert?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: FoChris am 28 Januar 2019, 21:01:59
Ich habe einen Neustart nach dem Update gemacht.
Dir geht's um folgende Pakete: JSON, Data::Dumper, Digest::MD5, Date::Parse and Data::UUID

Ich habe folgende installiert:
sudo apt-get install libdata-uuid-libuuid-perl
sudo apt-get install libdatetime-format-dateparse-perl
sudo apt-get install libdigest-md5-perl
sudo apt-get install libdata-dumper-simple-perl
cpan install JSON


Wie kann ich prüfen, ob die Pakete wirklich installiert wurden bzw. habe ich die Richtigen erwischt?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 29 Januar 2019, 08:10:50
Es sollte

sudo apt-get install libdata-uuid-perl

sein.

Ich werde noch eine Ausgabe ins Modul bauen, die eine Aussage darüber trifft, warum das Modul nicht geladen werden kann. Das dauert aber noch ein wenig.

Warum JSON über CPAN?

Edit: Ach und bitte IO::Socket::SSL nicht vergessen. Ohne kann die SSL Verbindung zur todoist API nicht aufgebaut werden.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 29 Januar 2019, 21:24:30
@marvin78

Hallo Marvin,

ich nutze dein todoist Modul schon länger mit dem todoist-Widget innerhalb der TabletUI.

Mir ist eben aufgefallen, dass es zu einem Fehler kommt, wenn man innerhalb der TabletUi einen Artikel auf die Liste setzt.
Sobal ich das + Zeichen drücke wechselt die Seite und es erscheint die Meldung:
File not found: ./www/tablet/active


Der Fehler ist auch bei meinem Freund auf seinem System.
Jetzt weiss ich allerdings nicht ob das ein Problem von dem Widget oder dem Todoist-Modul ist ??

Vielen Dank vorab für Deine Hilfe.

LG, Sprudelverduenner
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 29 Januar 2019, 21:58:05
Ich kenne das Widget nicht und ich supporte es nicht. Gibt es Fehler im Log? Dieser Fehler kommt nicht aus dem Modul.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: FoChris am 29 Januar 2019, 22:27:00
Zitat von: marvin78 am 29 Januar 2019, 08:10:50
Es sollte

sudo apt-get install libdata-uuid-perl

Das wars, nun läuft es!. Dankeschön für die Hilfe

@Sprudelverduenner
bei mir ist es ebenfalls so
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 Januar 2019, 06:18:07
Woher habt ihr denn das Tablet UI Widget?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 30 Januar 2019, 06:59:50
Moin marvin78,

Ich habe einfach den Code aus diesem Beitrag eingebunden...

https://forum.fhem.de/index.php?topic=82883.0

Ich habe Pula mal in diesem Beitrag angeschrieben....
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 Januar 2019, 07:07:23
Ich kann dieses Widget nicht supporten, da müsstet ihr euch an pula wenden. Es kommt nicht von mir und ich verwende kein TabletUI

Ein Versuch aber: Was sagt denn die Javascript Console, wenn der Fehler auftritt?

Edit: Ach und bitte mal ein list vom todoist-Device. Ich habe so das Gefühl, dass der Fehler kommt, wenn die Liste leer ist.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 30 Januar 2019, 07:23:21
Ich komme erst heute Abend an den Rechner für weitere Infos.

Aaaaaaber:
Bei TabletUI taucht der Fehler auch auf wenn der Zettel nicht leer ist.

Und wir haben das Problem: seit todoist im offiziellen Update ist ( gefühlt ) synchronisiert sich todoist nicht immer vollständig.
Ein get tasks behebt dann das Problem.

Ich hatte 3 Artikel per todoist App zugefügt. 2 standen gestern morgen bei FHEM drin.
Zufällig hat meine Frau genau diese gestern eingekauft und auch per App gelöscht.
Beide Artikel sind in FEHM dann auch weg aber der 3. Artikel war nicht da.

Und bei meinem Freund musste ich gestern auch mit einem get tasks wieder alles auf normal synchronisieren.
Evtl. kommt das Problem erst nach einem Neustart?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 Januar 2019, 07:32:21
An dem Modul hat sich vor dem Einchecken jedenfalls nichts geändert.

Gibt es denn irgendwas verwertbares im Log? Ggf. mal das Log mit todoist verbose 4 laufen lassen. Wenn dort nichts auftaucht, dann mit verbose 5.

Was heißt "nicht immer"? Gibt es ein Muster? Synchronisiert es sich denn manchmal? Bitte ein list.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 Januar 2019, 10:36:01
Ich habe soeben eine Version eingecheckt, welche die fehlenden Perl-Module beim define besser anmahnt ("Missing Perl Module ..."). Außerdem kommt die Version ohne Data::UUID aus.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: pflock_y am 12 April 2019, 20:51:03
Hallo zusammen,
bin grad dabei mein log aufzuräumen und hab beim erstellen eines neuen Eintrages diese Meldung:
PERL WARNING: Use of uninitialized value $eo in concatenation (.) or string at ./FHEM/98_todoist.pm line 2124.

nach stacktrace = 1, kommt das im log:

stacktrace:
2019.04.12 20:41:57 1:     main::__ANON__                      called by ./FHEM/98_todoist.pm (2124)
2019.04.12 20:41:57 1:     main::todoist_Html                  called by ./FHEM/98_todoist.pm (1894)
2019.04.12 20:41:57 1:     main::todoist_detailFn              called by ./FHEM/01_FHEMWEB.pm (1471)
2019.04.12 20:41:57 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1115)
2019.04.12 20:41:57 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (567)
2019.04.12 20:41:57 1:     main::FW_Read                       called by fhem.pl (3698)
2019.04.12 20:41:57 1:     main::CallFn                        called by fhem.pl (745)
2019.04.12 20:41:57 1: PERL WARNING: Use of uninitialized value $eo in concatenation (.) or string at ./FHEM/98_todoist.pm line 2124.
2019.04.12 20:41:57 1: stacktrace:
2019.04.12 20:41:57 1:     main::__ANON__                      called by ./FHEM/98_todoist.pm (2124)
2019.04.12 20:41:57 1:     main::todoist_Html                  called by ./FHEM/98_todoist.pm (1894)
2019.04.12 20:41:57 1:     main::todoist_detailFn              called by ./FHEM/01_FHEMWEB.pm (1471)
2019.04.12 20:41:57 1:     main::FW_doDetail                   called by ./FHEM/01_FHEMWEB.pm (1115)
2019.04.12 20:41:57 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (567)
2019.04.12 20:41:57 1:     main::FW_Read                       called by fhem.pl (3698)
2019.04.12 20:41:57 1:     main::CallFn                        called by fhem.pl (745)



Vielleicht hat einer eine Idee

Dank und Grüße
pflock_y
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 12 April 2019, 21:00:17
Sollte in der aktuellen Version nicht vorhanden sein. Welche Version nutzt du? Aktuelle Version gibt's per FHEM Update.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: pflock_y am 12 April 2019, 21:07:29
VERSION
1.2.0.7

wahrscheinlich zu alt  :o
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 12 April 2019, 22:07:51
Muss ich mir ansehen. Poste bitte mal noch ein list.

Es ist jedoch nur eine Warning aus dem widget. Nicht wichtig.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: pflock_y am 12 April 2019, 22:32:07
OK, hier das list:


Internals:
   DEF        2xxxxxxxxx6
   FUUID      5c8218fa-f33f-6019-e474-6492df383c760e6b
   INTERVAL   1800
   MID        todoist_2xxxxxxxxx6
   NAME       todoDiePflocks
   NOTIFYDEV  global
   NR         631
   NTFY_ORDER 64-todoDiePflocks
   PID        2xxxxxxxxx6
   PROJECT_COLOR 7
   PROJECT_INDENT 1
   PROJECT_NAME Inbox
   PROJECT_ORDER 0
   STATE      active
   TYPE       todoist
   VERSION    1.2.0.7
   mayBeVisible 1
   OLDREADINGS:
   READINGS:
     2019-04-12 22:22:35   Task_000        test
     2019-04-12 22:22:35   Task_000_ID     3148907397
     2019-04-12 22:22:35   count           1
     2019-04-12 22:22:38   countUsers      0
     2019-04-12 22:22:38   error           none
     2019-04-12 21:22:33   lastCompletedTask ./'* - 3148954825
     2019-04-12 21:22:02   lastCreatedTask ./'* - 3148954825
     2019-04-12 21:10:54   lastDeletedTask test 2 - 3148940157
     2019-04-12 20:35:55   lastError       no data
     2019-04-12 22:22:35   listText        test
     2019-03-08 08:26:01   state           active
   helper:
     ASSIGNEDBY_UID:
       3148907397 21959416
     IDS:
       Task_0     3148907397
     INDENT:
       3148907397 1
     INDENTS:
       1:
         3148907397
     ORDER:
       3148907397 1
     PRIORITY:
       3148907397 1
     TIDS:
       3148907397
     TITLE:
       3148907397 test
     TITLES:
       test       3148907397
     TITS:
       test
     WID:
       3148907397 0
Attributes:



Grüße
pflock_y
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 April 2019, 14:24:56
Ehrlich gesagt, bin ich etwas überfragt, weshalb die Warnung an der Stelle erscheint. Ich habe sie nicht. Ich tippe ein wenig auf die Perl-Version.

Ich habe trotzdem eine Änderung vorgenommen. Diese kommt morgen mit dem Update.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: netdom am 08 Juni 2019, 17:16:42
Hallo,

ich habe seit heute auch das ToDoist Modul im Einsatz (danke dafür :-) und bekomme seitdem immer:

sorttable.js line 283:
TypeError: node.getAttribute is not a function

Es tritt scheinbar nur auf, wenn in den Räumen noch weitere (potentiell) sortierbare Dinge wie ReadingGroups angelegt sind, in einem Raum ohne so etwas nicht. Kann ich da irgendwas gegen tun ?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 09 Juni 2019, 07:05:37
Das Problem ist bekannt. Ich bin leider noch nicht dazu gekommen, nach der genauen Ursache zu forschen.

Aktuell ist der Workaround, das Widget nicht in einen Raum zusammen mit einer ReadingsGroup oder ähnlichem zu packen.

Aus meiner Sicht, liegt das Problem in readingsGroup. Es verwendet sorttable. todoist verwendet sortable.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: netdom am 09 Juni 2019, 09:54:46
Ah ok, danke für die Info.

Eine weitere Frage, kann ich mir beim Weblink (nutze das in einem Dashboard) irgendwie die Due Dates anzeigen lassen ? Er liest das ja aus, aber wie bekomme ich das in die Ansicht ?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 24 Juni 2019, 06:53:37
Sorry für die späte Antwort, ich befinde mich im Urlaub.

Das ist aktuell nicht möglich. Es war mal angedacht und es gab auch eine Version, bei der man das mit einem Attribut einstellen konnte. Leider hat das Widget in der Version nicht besonders gut funktioniert und eine Nachfrage bei den Usern erbrachte, dass das Feature ohnehin nicht gefragt war, also habe ich es ausgebaut und nicht weiter verfolgt.

Ich nehme das mal wieder auf die Liste, glaube aber nicht, dass ich vor Herbst dazu komme, das Modul in höherem Umfang zu erweitern.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Junior am 08 September 2019, 11:02:01
Hallo,
ich habe im Moment 3 Listen in FHEM definiert. Bisher funktionierte alles bestens. Seit etwa einer Woche bekomme ich auf allen Listen die Fehlermeldung:
Response was damaged or empty. See log for details.
Die Projekt-ID hat sich nicht geändert. Zum Testen hatte ich den API Token mal erneuert und natürlich auch eingepflegt... jedoch keine Änderung.
Ebenso habe ich die benötigten Perl Module kontrolliert, sind auf dem aktuellen Stand. Das Modul selbst natürlich auch (1.2.0.8 ).

Hat jemand zufällig ne Idee, wo ich ansetzen könnte, bzw. werden noch weitere Infos benötigt?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: TimTim am 08 September 2019, 16:06:18
Hallo,

ich habe heute ebenfalls festgestellt, dass ich bei den ToDo Listen auch die Fehlermeldung bekomme:
Response was damaged or empty. See log for details

Mit Verbose 5 kommt im Log dieses:
2019.09.08 15:38:45 3: todoist (ToDoListe): Error Message: Response was damaged or empty. See log for details.
2019.09.08 15:38:45 4: todoist (ToDoListe): Api-Error Callback-data: '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>410 Gone</title>
<h1>Gone</h1>
<p>This API endpoint is no longer available. Please refer to our documentation to upgrade your client to use the latest API version: https://developer.todoist.com</p>


heißt für mich, dass das Modul auf die neue API umgestrickt werden müsste, oder?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 09 September 2019, 07:47:17
Ja. Ich bin aber aktuell im Urlaub. Ich kann mich erst in 1 bis 2 Wochen damit beschäftigen. Ich habe das mit der neuen API verschlafen. Ich hoffe, die v8 ist nicht allzu anders als v7.

Danke für die Hinweise.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 09 September 2019, 20:42:39
Ich habe soeben Version 1.2.1 eingecheckt. Das sollte einen Großteil der API Änderungen abdecken. Einiges geht noch nicht (delete zum Beispiel).

Morgen gibt es die Version per Update oder jetzt aus dem SVN. Es wäre nett, wenn einige die Version testen könnten und hier auflisten, was noch nicht funktioniert. Danke!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Junior am 09 September 2019, 21:53:34
Cool, vielen Dank.
Habe es soeben eingespielt und bisschen mit rumgespielt. Ich würde behaupten, dass bei mir alles funktioniert, außer ne Aufgabe zu löschen (was du ja schon erwähnt hattest).
Alles andere, was ich persönlich nutze und getestet habe, klappt super :)
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 10 September 2019, 20:09:16
Danke. Es ist schon noch einiges kaputt. Update ist nur teilweise lauffähig. Das Umsortieren und auch die Anordnung im Projekt ist für die items komplett anders gelöst.

Delete und Update (nur Text) läuft wieder (ab morgen in Version 1.2.2). Um die anderen Dinge kann ich mich erst später kümmern.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: rogerknop am 20 September 2019, 11:40:01
Hallo,
bin auch neu in Sachen todoist unterwegs und bin begeistert! Danke für das Modul.
Eine Sache ist mir aufgefallen.
Bei mir funktionierten die natürlichen Sprachbegriffe wie "Morgen" nicht.
Letztendlich habe ich herausgefunden, dass wohl wegen der Browsereinstellungen bei der Registrierung meine Sprache in den ToDoList Web Einstellungen auf Englisch eingestellt war.
Nachdem ich dies auf Deutsch geändert habe funktioniert es.
Nur falls jemand das gleiche Problem hat.
Danke & Grüße, Roger
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ComputerZOO am 21 September 2019, 12:17:23
Moin,
auch nach dem heutigen Update haut da irgendetwas noch nicht ganz hin  :(
2019.09.21 12:15:34.452 2:  todoist (todoist.fhem): Error Message: no data
2019.09.21 12:15:34.452 1:  readingsUpdate(todoist.fhem,listText,-) missed to call readingsBeginUpdate first.
2019.09.21 12:15:34.452 1:  stacktrace:
2019.09.21 12:15:34.452 1:      main::readingsBulkUpdate            called by ./FHEM/98_todoist.pm (997)
2019.09.21 12:15:34.453 1:      main::todoist_GetTasksCallback      called by FHEM/HttpUtils.pm (421)
2019.09.21 12:15:34.453 1:      main::__ANON__                      called by fhem.pl (757)
2019.09.21 12:15:37.232 2:  todoist (todoist.fhem): Error Message: no data
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 22 September 2019, 14:01:33
Ist die verwendete Liste leer?

Ich brauche IMMER mehr Infos, als nur die Fehlermeldung. Dazu gehört immer ein list und Infos über die Liste.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: ComputerZOO am 22 September 2019, 15:31:29
Hallo Marvin,
die Liste enthält drei Einträge, die aber nicht mehr (seit 4 Tagen) aktualisiert werden.
Hier das List des Todoist-Device:
PID        2208136631
   STATE      3 Einträge, letzer Eintrag:</br><b> Bei gotosleep ein anderes Menu für den fhembot anzeigen </b>
   TYPE       todoist
   VERSION    1.2.3
   mayBeVisible 1
   .attreocr:
     .*
   .attrminint:
   READINGS:
     vor 4 Tagen   Task_000        Bei gotosleep ein anderes Menu für den fhembot anzeigen
     vor 4 Tagen   Task_000_ID     3126485565
     vor 4 Tagen   Task_000_priority 1
     vor 4 Tagen   Task_001        Alarm/Panic Lichtszenen setzen
     vor 4 Tagen   Task_001_ID     3126487097
     vor 4 Tagen   Task_001_priority 1
     vor 4 Tagen   Task_002        Beleuchtung bei Abwesenheit
     vor 4 Tagen   Task_002_ID     3126320937
     vor 4 Tagen   Task_002_priority 2
     vor 4 Tagen   count           3
     vor 4 Tagen   countUsers      0
     vor einer Minute   error           no data
     vor 5 Monaten   lastCompletedTask FW_okDialog für offene Fenster, Türen, Bewegungsmelder - 3145638389
     vor 6 Monaten   lastCreatedTask ReadingsGroup für Pollenvorhersage/Feinstaub - 3127571313
     vor 6 Monaten   lastDeletedTask Laufzeit Waschmaschine/Trockner im Parola-Infomenu - 3126483010
     vor einer Minute   lastError       no data
     vor 6 Monaten   lastUpdatedTask Beleuchtung bei Abwesenheit - 3126320937
     vor 4 Tagen   listText        Bei gotosleep ein anderes Menu für den fhembot anzeigen, Alarm/Panic Lichtszenen setzen, Beleuchtung bei Abwesenheit
     vor 6 Monaten   state           active
   helper:
     errorData 
     errorMessage
     TIDS:
Attributes:
   DbLogExclude .*
   alias      Todoist
   event-on-change-reading .*
   group      40_Kalender_Übersicht
   icon       Todoist
   language   DE
   pollInterval 86400
   room       System->Kalender
   showOrder  0
   showPriority 1
   sortby     30
   stateFormat count Einträge, letzer Eintrag:</br><b> Task_000 </b>
   verbose    2
todoist.fhem
   NOTIFYDEV  global
   NR         527
   NTFY_ORDER 64-todoist.fhem
   PID        2208136631
   STATE      3 Einträge, letzer Eintrag:</br><b> Bei gotosleep ein anderes Menu für den fhembot anzeigen </b>
   TYPE       todoist
   VERSION    1.2.3
   mayBeVisible 1
   .attreocr:
     .*
   .attrminint:
   READINGS:
     2019-09-18 20:21:32   Task_000        Bei gotosleep ein anderes Menu für den fhembot anzeigen
     2019-09-18 20:21:32   Task_000_ID     3126485565
     2019-09-18 20:21:32   Task_000_priority 1
     2019-09-18 20:21:32   Task_001        Alarm/Panic Lichtszenen setzen
     2019-09-18 20:21:32   Task_001_ID     3126487097
     2019-09-18 20:21:32   Task_001_priority 1
     2019-09-18 20:21:32   Task_002        Beleuchtung bei Abwesenheit
     2019-09-18 20:21:32   Task_002_ID     3126320937
     2019-09-18 20:21:32   Task_002_priority 2
     2019-09-18 20:21:32   count           3
     2019-09-18 20:21:35   countUsers      0
     2019-09-22 15:27:36   error           no data
     2019-04-13 10:38:26   lastCompletedTask FW_okDialog für offene Fenster, Türen, Bewegungsmelder - 3145638389
     2019-03-31 22:15:49   lastCreatedTask ReadingsGroup für Pollenvorhersage/Feinstaub - 3127571313
     2019-03-31 01:31:28   lastDeletedTask Laufzeit Waschmaschine/Trockner im Parola-Infomenu - 3126483010
     2019-09-22 15:27:36   lastError       no data
     2019-03-30 17:44:30   lastUpdatedTask Beleuchtung bei Abwesenheit - 3126320937
     2019-09-18 20:21:32   listText        Bei gotosleep ein anderes Menu für den fhembot anzeigen, Alarm/Panic Lichtszenen setzen, Beleuchtung bei Abwesenheit
     2019-04-01 15:17:30   state           active
   helper:
     errorData 
     errorMessage
     TIDS:
Attributes:
   DbLogExclude .*
   alias      Todoist
   event-on-change-reading .*
   group      40_Kalender_Übersicht
   icon       Todoist
   language   DE
   pollInterval 86400
   room       System->Kalender
   showOrder  0
   showPriority 1
   sortby     30
   stateFormat count Einträge, letzer Eintrag:</br><b> Task_000 </b>
   verbose    2

Vielleicht hilft das weiter.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 22 September 2019, 16:23:18
Seit welcher Version ist das so?

Wie sieht die aktuelle todoist Liste aus (Frage stelle ich zum 2. Mal - wie sind die aktuellen Einträge)?

Funktionieren andere Listen?

Mach mal ein verbose 4 oder 5 Log.

P.S.: Ich heiße gar nicht Marvin...
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: knuthp am 14 November 2019, 09:43:56
Hallo!
Möchte mich auch einbringen mit folgendem Problem:
Seit ca. einem halben Jahr habe ich das Modul ToDoIst in FHEM eingebunden und war super zufrieden damit, herzlichen Dank dafür! Ebenfalls hatte ich mir eine grafische Oberfläche "gebastelt" (fhem-tablet-ui), hat auch funktioniert.

Nach der Anpassung auf V8-API funktioniert jetzt zwar das Abholen der Einträge (set <Device> getTasks), aber nicht das Löschen bzw. "completen" (set <Device> completeTask ID:<Task_001_ID>).
Das Löschen über die grafische FHEM-Oberfläche funktioniert (oben auf das kreuz klicken). Was mache ich falsch?
Alle Programme sind per update all aktuell.
Anbei mal die Raw definition
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 14 November 2019, 10:58:44
Was meinst du jetzt? Complete ist ungleich delete. Kreuz im Widget ist delete.

Edit: Bug gefunden. Morgen im Update behoben.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: knuthp am 15 November 2019, 08:58:37
Perfekt!

Alle die Funktionen, die ich nutze, funktionieren wieder.

Super, dass du so schnell reagiert hast, vielen Dank dafür!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 10 Januar 2020, 10:20:18
Nachdem doch noch einige Sachen bezüglich v8 API im argen lagen, habe ich mich noch einmal ran gesetzt und ein paar Sachen angepasst. Die Grundfunktionen sollten nun endgültig alle wieder vorhanden sein.

Auf der ToDo stehen noch die Integration von parent_id und child_order (in v7 noch indent) in das Widget. Ich bin noch unschlüssig, ob das sinnvoll ist. Ich möchte eigentlich nicht ein Frontend ersetzen, sondern nur eine Schnittstelle zu FHEM bieten. In der Diskussion steht auch, dass Widget wieder komplett zu entfernen (da halbherzig). Meinungen dazu sind gerne gesehen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 10 Januar 2020, 10:30:13
Moin Marvin,

Genau das Widget - in der Tabletui- ist das was ich gerne wieder komplett nutzen würde.
Ich liebe diese zentrale Verwaltung durch FHEM.

Wlan Lautsprecher, Einkaufszettel, fritzbox anruferliste etc.
Alles Dinge wofür ich eben nicht immer eine dezidierte APP öffnen muss sondern mit der TABLETUI einen Anlaufpunkt habe.
Innerhalb FHEM selber das Widget das bräuchte ich nicht.
Ich wäre nur froh wenn das Widget der Tablet UI endlich wieder komplett laufen würde....

LG, Sprudelverduenner
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 10 Januar 2020, 11:29:17
Ich meine nicht das Widget für TabletUI. Das ist nicht meine Baustelle. Hier würde ich bei konkreten Fragen des Entwicklers aber zur Verfügung stehen.

Ich rede vom eingebauten Widget für FHEMWEB.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: juergen012 am 10 Januar 2020, 14:02:10
Hallo,
da das Widget zusammen mit ReadingsGroup Probleme macht, habe ich versucht eine ReadingsGroup für Todoist zu basteln. Bin aber wegen mangelnder Kenntnisse gescheitert. Vielleicht findet sich ja jemand, der sich damit auskennt und einen Code zur Verfügung stellt.
Beste Grüße
Jürgen k.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 11 Januar 2020, 10:47:03
Ich habe das TUI Widget geflickt. Siehe dazu den entsprechenden Thread. Damit ist das Thema TUI Widget aber vorerst für mich erledigt. Das Problem lag nicht im todoist Modul.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 11 Januar 2020, 20:59:29
Die neue Version 1.2.12 kennt den neuen Command "moveTask". Das wird in API v8 für Änderung der parent_id und project_id benötigt. Diese Parameter können nicht mehr über updateTask gesetzt werden. Doku ist dementsprechend geändert.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 13 Januar 2020, 21:46:21
In Version 1.3.0 existiert der neue Befehl "reorderTasks". Dieser nimmt kommagetrennte todoist-Task-IDs auf. In der aufgeführten Reihenfolge werden die Tasks sortiert. Der Befehl wird vornehmlich im FHEMWEB-Widget verwendet.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Karsiacar am 06 März 2020, 11:23:47
Hallo,

hab bemerkt, dass die Umlaute nach Modulinstallation nicht mehr angezeigt werden. Und das im kompletten fhem :o
Was kann ich denn da machen?

Beste Grüße
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 06 März 2020, 11:44:06
Zitat von: Karsiacar am 06 März 2020, 11:23:47
Hallo,

hab bemerkt, dass die Umlaute nach Modulinstallation nicht mehr angezeigt werden. Und das im kompletten fhem :o
Was kann ich denn da machen?

Beste Grüße
Das weiß ich nicht. Wenn du mir kein list zeigen kannst oder mir etwas über deine Spracheinstellungen und Co. in fhem oder deine Plattform erzählen kannst, dann kann ich dir leider nicht helfen.

Was meinst du mit Modulinstallation?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Karsiacar am 06 März 2020, 16:41:45
Internals:
   CFGFN     
   DEF        2230690888
   FUUID      5e6221de-f33f-a388-7c06-b39d0335aeb60f69
   INTERVAL   1800
   MID        todoist_2230690888
   NAME       ToDo
   NOTIFYDEV  global
   NR         95
   NTFY_ORDER 64-ToDo
   PID        2230690888
   PROJECT_COLOR 48
   PROJECT_NAME Willkommen 👋
   PROJECT_ORDER 1
   STATE      active
   TYPE       todoist
   VERSION    1.3.5
   mayBeVisible 1
   OLDREADINGS:
   READINGS:
     2020-03-06 16:12:21   Task_000        Setze den Cursor auf diese Aufgabe & klicke auf `(i)`, um die Details zu sehen
     2020-03-06 16:12:21   Task_000_ID     3736112258
     2020-03-06 16:12:21   Task_000_sectionID 7632280
     2020-03-06 16:12:21   Task_001        Hier kannst du Teilaufgaben hinzufügen! ✅
     2020-03-06 16:12:21   Task_001_ID     3736112266
     2020-03-06 16:12:21   Task_001_parentID 3736112258
     2020-03-06 16:12:21   Task_001_sectionID 7632280
     2020-03-06 16:12:21   Task_002        [Starte deine Projekte mit Vorlagen →](https://todoist.com/templates?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
     2020-03-06 16:12:21   Task_002_ID     3736112298
     2020-03-06 16:12:21   Task_002_sectionID 7632281
     2020-03-06 16:12:21   Task_003        Füge eine neue Aufgabe hinzu ➕
     2020-03-06 16:12:21   Task_003_ID     3736112269
     2020-03-06 16:12:21   Task_003_dueDate 2020-03-06 00:00:00
     2020-03-06 16:12:21   Task_003_sectionID 7632280
     2020-03-06 16:12:21   Task_004        [Erfahre mit der Kurzanleitung, wie du Todoist nutzen kannst →](https://todoist.com/guide/getting-started?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
     2020-03-06 16:12:21   Task_004_ID     3736112303
     2020-03-06 16:12:21   Task_004_sectionID 7632281
     2020-03-06 16:12:21   Task_005        Plane diese Aufgabe 📅
     2020-03-06 16:12:21   Task_005_ID     3736112279
     2020-03-06 16:12:21   Task_005_sectionID 7632280
     2020-03-06 16:12:21   Task_006        [Bleibe überall organisiert mit den Apps →](https://todoist.com/downloads?focus=mobile&utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
     2020-03-06 16:12:21   Task_006_ID     3736112310
     2020-03-06 16:12:21   Task_006_sectionID 7632281
     2020-03-06 16:12:21   Task_007        Füge über das Menü oben rechts einen Abschnitt hinzu `...`
     2020-03-06 16:12:21   Task_007_ID     3736112282
     2020-03-06 16:12:21   Task_007_sectionID 7632280
     2020-03-06 16:12:21   Task_008        [Noch Fragen? Weitere Tipps? Besuche das Help Center →](https://get.todoist.help/?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
     2020-03-06 16:12:21   Task_008_ID     3736112312
     2020-03-06 16:12:21   Task_008_sectionID 7632281
     2020-03-06 16:12:21   Task_009        Klicke auf das **+** neben Projekte, um ein eigenes Projekt hinzuzufügen
     2020-03-06 16:12:21   Task_009_ID     3736112290
     2020-03-06 16:12:21   Task_009_sectionID 7632280
     2020-03-06 16:12:21   count           10
     2020-03-06 16:12:23   countUsers      0
     2020-03-06 16:12:23   error           none
     2020-03-06 16:12:21   listText        Setze den Cursor auf diese Aufgabe & klicke auf `(i)`, um die Details zu sehen, Hier kannst du Teilaufgaben hinzufügen! ✅, [Starte deine Projekte mit Vorlagen →](https://todoist.com/templates?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project), Füge eine neue Aufgabe hinzu ➕, [Erfahre mit der Kurzanleitung, wie du Todoist nutzen kannst →](https://todoist.com/guide/getting-started?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project), Plane diese Aufgabe 📅, [Bleibe überall organisiert mit den Apps →](https://todoist.com/downloads?focus=mobile&utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project), Füge über das Menü oben rechts einen Abschnitt hinzu `...`, [Noch Fragen? Weitere Tipps? Besuche das Help Center →](https://get.todoist.help/?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project), Klicke auf das **+** neben Projekte, um ein eigenes Projekt hinzuzufügen
     2020-03-06 11:12:04   state           active
   helper:
     DUE_DATE:
       3736112269 2020-03-06 00:00:00
     IDS:
       Task_0     3736112258
       Task_1     3736112266
       Task_2     3736112298
       Task_3     3736112269
       Task_4     3736112303
       Task_5     3736112279
       Task_6     3736112310
       Task_7     3736112282
       Task_8     3736112312
       Task_9     3736112290
     ORDER:
       3736112258
       3736112266
       3736112269
       3736112279
       3736112282
       3736112290
       3736112298
       3736112303
       3736112310
       3736112312
     PARENT_ID:
       3736112266 3736112258
     PRIORITY:
       3736112258 1
       3736112266 1
       3736112269 1
       3736112279 1
       3736112282 1
       3736112290 1
       3736112298 1
       3736112303 1
       3736112310 1
       3736112312 1
     RESPONSIBLE_UID:
     SECTION_ID:
       3736112258 7632280
       3736112266 7632280
       3736112269 7632280
       3736112279 7632280
       3736112282 7632280
       3736112290 7632280
       3736112298 7632281
       3736112303 7632281
       3736112310 7632281
       3736112312 7632281
     TIDS:
       3736112258
       3736112266
       3736112298
       3736112269
       3736112303
       3736112279
       3736112310
       3736112282
       3736112312
       3736112290
     TITLE:
       3736112258 Setze den Cursor auf diese Aufgabe & klicke auf `(i)`, um die Details zu sehen
       3736112266 Hier kannst du Teilaufgaben hinzufügen! ✅
       3736112269 Füge eine neue Aufgabe hinzu ➕
       3736112279 Plane diese Aufgabe 📅
       3736112282 Füge über das Menü oben rechts einen Abschnitt hinzu `...`
       3736112290 Klicke auf das **+** neben Projekte, um ein eigenes Projekt hinzuzufügen
       3736112298 [Starte deine Projekte mit Vorlagen →](https://todoist.com/templates?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
       3736112303 [Erfahre mit der Kurzanleitung, wie du Todoist nutzen kannst →](https://todoist.com/guide/getting-started?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
       3736112310 [Bleibe überall organisiert mit den Apps →](https://todoist.com/downloads?focus=mobile&utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
       3736112312 [Noch Fragen? Weitere Tipps? Besuche das Help Center →](https://get.todoist.help/?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
     TITLES:
       Füge eine neue Aufgabe hinzu ➕ 3736112269
       Füge über das Menü oben rechts einen Abschnitt hinzu `...` 3736112282
       Hier kannst du Teilaufgaben hinzufügen! ✅ 3736112266
       Klicke auf das **+** neben Projekte, um ein eigenes Projekt hinzuzufügen 3736112290
       Plane diese Aufgabe 📅 3736112279
       Setze den Cursor auf diese Aufgabe & klicke auf `(i)`, um die Details zu sehen 3736112258
       [Bleibe überall organisiert mit den Apps →](https://todoist.com/downloads?focus=mobile&utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project) 3736112310
       [Erfahre mit der Kurzanleitung, wie du Todoist nutzen kannst →](https://todoist.com/guide/getting-started?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project) 3736112303
       [Noch Fragen? Weitere Tipps? Besuche das Help Center →](https://get.todoist.help/?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project) 3736112312
       [Starte deine Projekte mit Vorlagen →](https://todoist.com/templates?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project) 3736112298
     TITS:
       Setze den Cursor auf diese Aufgabe & klicke auf `(i)`, um die Details zu sehen
       Hier kannst du Teilaufgaben hinzufügen! ✅
       [Starte deine Projekte mit Vorlagen →](https://todoist.com/templates?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
       Füge eine neue Aufgabe hinzu ➕
       [Erfahre mit der Kurzanleitung, wie du Todoist nutzen kannst →](https://todoist.com/guide/getting-started?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
       Plane diese Aufgabe 📅
       [Bleibe überall organisiert mit den Apps →](https://todoist.com/downloads?focus=mobile&utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
       Füge über das Menü oben rechts einen Abschnitt hinzu `...`
       [Noch Fragen? Weitere Tipps? Besuche das Help Center →](https://get.todoist.help/?utm_source=todoist&utm_medium=in_app&utm_campaign=welcome_project)
       Klicke auf das **+** neben Projekte, um ein eigenes Projekt hinzuzufügen
     WID:
       3736112258 0
       3736112266 1
       3736112269 3
       3736112279 5
       3736112282 7
       3736112290 9
       3736112298 2
       3736112303 4
       3736112310 6
       3736112312 8
     child_order:
       3736112258 1
       3736112266 1
       3736112269 2
       3736112279 3
       3736112282 4
       3736112290 5
       3736112298 1
       3736112303 2
       3736112310 3
       3736112312 4
     parent_id:
       3736112258
       3736112266 3736112258
       3736112269
       3736112279
       3736112282
       3736112290
       3736112298
       3736112303
       3736112310
       3736112312
     section_id:
       3736112258 7632280
       3736112266 7632280
       3736112269 7632280
       3736112279 7632280
       3736112282 7632280
       3736112290 7632280
       3736112298 7632281
       3736112303 7632281
       3736112310 7632281
       3736112312 7632281
Attributes:
   language   DE

Hallo marvin78,
sonst fux ich mich bis in die tiefe ... aber hier  ::) komm ich nicht weiter. Ist bestimmt die kleinste Kleinigkeit.
In global hab ich DE eingestellt. Änderung auf EN bewirkt leider nichts. Im todoistModul selbst das gleiche.

Meinte natürlich nicht installieren, sondern Modul anlegen.
Ach so, es werden nicht im komplette fhem keine ä, ö usw. angezeigt, wie ich schrieb, sondern nur auf der Modul"seite" ... auch in der Navigation.
Danke fürs drum kümmern.

Beste Grüße
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 06 März 2020, 20:21:45
Bitte Code Tags verwenden. Das hier kann niemand lesen.

Was genau meinst du denn mit der "Modulseite"? Ist damit die Deteilansicht eines todoist-Devices gemeint?

Setze mal bitte das Attribut "showDetailWidget" auf 0 und schaue, ob das Besserung bringt. Falls nicht, bitte auch nach dem Setzen des Attributs, FHEM einmal neu starten und dann nochml schauen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Karsiacar am 06 März 2020, 23:16:03
Sorry, wenn ich zu ungenau mit meinen Formulierungen bin. Ja, meine die Detailansicht des Device.
War auch mit dem Absenden zu voreilig. Code ins Tag gesetzt aber nicht mit "Vorschau" kontrolliert.

Das Attribut "showDetailWidget" auf 0 setzen hat leider nichts gebracht. Auch nach Neustart nicht.


Musste die setstate von den Task´s löschen, sonst - "Textfeld wurde nicht ausgefüllt". Keine Ahnung warum.
Deswegen hat es das letzte Mal auch nicht funktioniert. Muss man auch erst mal raus finden.
defmod ToDo todoist 2230690888
attr ToDo language DE
attr ToDo showDetailWidget 0

setstate ToDo active
setstate ToDo 2020-03-06 22:23:22 count 10
setstate ToDo 2020-03-06 22:23:23 countUsers 0
setstate ToDo 2020-03-06 22:23:23 error none

setstate ToDo 2020-03-06 11:12:04 state active


Beste Grüße

Edit: Hab jetzt noch raus gefunden, wenn ich das language-Attribut lösche und FHEM neu starte, ist das Attribut wieder da(EN) und alles ist gut. Aber wenn ich den Browser refreshe, ist alles wieder futsch.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 März 2020, 11:54:47
Welche Codierung hast du denn im Browser eingestellt?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Karsiacar am 07 März 2020, 13:52:58
Hier ist auf deutsch gestellt
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 März 2020, 18:18:20
Ich habe nicht nach der Sprache gefragt. Die Codierung sollte UTF-8 sein.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Karsiacar am 07 März 2020, 18:50:58
die ist eingestellt.
Mir ist noch aufgefallen, erst wenn ich den Token setzt beginnt das Desaster.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 März 2020, 19:33:07
Ich denke, es liegt an der Liste. Was passiert, wenn du die. Icons raus nimmst (bspw. aus dem Projektnamen "Willkommen 👋")?

Oder probiere mal eine gewöhnliche Liste mit Texten.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Karsiacar am 07 März 2020, 21:27:17
unglaublich! am Icon hats gelegen. Danke dir herzlichst für dein zutun!

Beste Grüße und ein schönes RestWE
Karsiacar
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 09 März 2020, 08:26:45
Ich habe Version 1.3.7 eingecheckt. Mit dieser Version kannst du/könnt ihr auch Icons im Title verwenden.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sxx128 am 25 April 2020, 14:35:30
Hallo zusammen,

ich habe todoist in Fhem integriert. Leider kann ich keinerlei Task sehen oder neu anlegen. Im Log erhalte ich folgende Fehlermeldung.



020.04.25 14:28:40 3 : todoist (todolist): Error Message: GetTasks: Response was damaged or empty. See log for details.
2020.04.25 14:28:40 4 : todoist (todolist): Api-Error Callback-data: $VAR1 = '{"error_tag":"INVALID_ARGUMENT_VALUE","error_code":20,"http_code":400,"error_extra":{"expected":"number","event_id":"f75b0a95f7a740a5a75764156eabf90a","argument":"project_id","retry_after":3},"error":"Invalid argument value"}';



Einen Token habe ich scon mehrfach neu erstellt. Das hat aber nix geholfen.

Könnt ihr mir bitte weiterhelfen wo das Problem ist ?
Das wäre super nett.

Grüße
und Danke im Voraus
sxx128
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 25 April 2020, 15:37:44
Ein list wäre gut.

Sicher, dass du die richtige Project-ID hast?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sxx128 am 25 April 2020, 15:48:03
Hallo Marvin

ja ziemlich sicher. Der State ist auch activ. Hier mein Listning.


nternals:
   CFGFN     
   DEF        XXXXXXXXXXXXXXX
   FUUID      xxxxxxxxxxxxxxxxxxxxxxxx
   INTERVAL   1800
   MID        todoist_XXXXXXXXXXXXXXX
   NAME       todolist
   NOTIFYDEV  global
   NR         297
   NTFY_ORDER 64-todolist
   PID        xxxxxxxxxxxxxxxxxxxxxxx
   STATE      active
   TYPE       todoist
   VERSION    1.3.7
   mayBeVisible 1
   READINGS:
     2020-04-25 15:43:51   countUsers      0
     2020-04-25 15:43:51   error           none
     2020-04-25 15:43:50   lastError       GetTasks: Response was damaged or empty. See log for details.
     2020-04-25 15:43:50   listText        -
     2020-04-25 15:43:25   state           active
   helper:
     errorData 
     errorMessage
     TIDS:
Attributes:


Ich kopiere mir halt aus dem  "Projekt Link" alles zwischen den % Zeichen. Das ist ja die Projekt ID und dann setzte ich den Token.

Grüße
sxx128
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sxx128 am 25 April 2020, 15:52:01
Ach herrje. und das 2F davor. Ich probier es gleich. Sorry


geht. Entschuldige bitte. Man sollte sich einfach konzentrieren. Natürlich muss das 2F davor wegbleiben.

Grüße
und Danke
sxx128
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 25 April 2020, 16:10:34
Das ist sogar so dokumentiert  ;)

Gut, dass es läuft.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sxx128 am 25 April 2020, 16:13:10
Zitat von: marvin78 am 25 April 2020, 16:10:34
Das ist sogar so dokumentiert  ;)

Gut, dass es läuft.

Wie gesagt. Das passiert halt wenn man sich nicht konzentriert :-)
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Christoph Morrison am 30 April 2020, 12:59:20
Mir ist im Log gerade folgendes aufgefallen:

2020.04.30 12:41:47.430 1: readingsUpdate(general.interfaces.todoist.housekeeping,listText,-) missed to call readingsBeginUpdate first.
2020.04.30 12:41:47.430 1: stacktrace:
2020.04.30 12:41:47.430 1:     main::readingsBulkUpdate            called by ./FHEM/98_todoist.pm (1152)
2020.04.30 12:41:47.430 1:     main::todoist_GetTasksCallback      called by FHEM/HttpUtils.pm (416)
2020.04.30 12:41:47.430 1:     main::__ANON__                      called by FHEM/HttpUtils.pm (302)
2020.04.30 12:41:47.431 1:     main::directReadFn                  called by fhem.pl (750)


Im Device wurde no data als last error geloggt.

Ein kurzer Blick in den Code hat mir aber auch nicht klar gezeigt, warum das readingsBeginUpdate in L949 vorher nicht zieht ...
98_todoist.pm 21387 2020-03-09 07:25:00Z marvin78

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 30 April 2020, 13:20:29
Es ist mir ein Rätsel. Nein, stimmt nicht, ich habe es kapiert.

Fehler sollte in der eben eingecheckten Version beseitigt sein.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: blixx am 20 Oktober 2020, 18:12:13
Hm, ich bekomme bei -_>completetask title: Biomuell rausbringen<_- immer "task Biomuell not found"
Wie muss ich das leerzeichen codieren, damit er den gesamten Titel zum löschen nimmt und NICHT nach dem Leerzeichen abschneidet?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 21 Oktober 2020, 06:27:06
Anführungszeichen
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: blixx am 22 Oktober 2020, 11:08:11
leider nein:
---->set FaListe completeTask title:"Biomuell rausbringen"

<task 'Biomuell not found>

bzw.
   
<task "Biomuell not found>
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 22 Oktober 2020, 20:25:23
Spätestens in der Version, die morgen früh per Update kommt, sollte folgendes gehen:

set FaListe completeTask title=Biomuell rausbringen

Ich bin der Meinung, dass das schon jetzt gehen sollte.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: blixx am 23 Oktober 2020, 09:14:35
 :) :D ;D
Es FUNKTIONIERT!
Dankeschön!
Hast du eine Kaffee(Kleingeld)tasse?

Wen es interessiert:
Ich teile mir eine ToDoListe mit meinen Mitbewohnern (Haus) und die vergessen manchmal in der Liste abzuhaken, dass sie den Müll rausgebracht haben.
Darum schließe ich die Einträge, wenn die Abfuhr da war (dann braucht ja auch keiner mehr Muelltonnen rausbringen) und erstelle gleichzeitig neue Einträge: Mülltonnen reinholen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: slupus am 04 Mai 2021, 10:09:49
Hallo zusammen,
ich habe ein Todoist Projekt erfolgreich eingebunden, sehe also die Tasks und kann auch neue Tasks erstellen.
Möchte ich allerdings eine URL im Task haben, in Todoist würde ich [Das ist der Link](https://google.de) eintragen, bekomme ich eine Fehlermeldung, dass das dueDate nicht geparsed werden kann.

Folgendes set nutze ich
set test addTask [Das ist der Link](https://google.de)

Das ist die Fehlermeldung (kommt auch bei jeder anderen Schreibweise der URL, auch wenn ich die Sonderzeichen escape.
todoist (test): got error: Unable to parse "due_string" value | createTask: 0Unknown

Im Log finde ich mit verbose 5 noch folgende Info. Die URL wird immer als dueDate intepretiert. Die Meldung erhalte ich auch, wenn ich ein dueDate explizit mitgebe.
Habe ich irgendetwas übersehen bzw. muss die URL anders mitgeben oder funktioniert das einfach nicht?


2021.05.04 09:37:44 5: todoist (test): Param: {
  'callback' => sub { "DUMMY" },
  'parentId' => 0,
  'header' => 'Content-Type: application/x-www-form-urlencoded',
  'wType' => 'create',
  'tTitle' => 'https',
  'method' => 'POST',
  'timeout' => 7,
  'data' => {
              'project_id' => xxxx,
              'date_string' => '//google.de (Suche)',
              'content' => 'https',
              'token' => 'xxxx'
            },
  'url' => 'https://todoist.com/sync/v8/items/add',
  'hash' => {
              '.triggerUsed' => 0,
              'CL' => {
                        'STATE' => 'Connected',
                        'NR' => 88728,
                        'LASTACCESS' => 1620113864,
                        'FD' => 35,
                        'TYPE' => 'FHEMWEB',
                        'BUF' => '',
                        '.attrminint' => [],
                        'SSL' => undef,
                        'NAME' => 'WEB_192.168.xxx.xxx_55738',
                        'READINGS' => {
                                        'state' => {
                                                     'VAL' => 'Connected',
                                                     'TIME' => '2021-05-04 09:37:16'
                                                   }
                                      },
                        'PEER' => '192.168.xxx.xxx',
                        'FW_ID' => '88444',
                        'TEMPORARY' => 1,
                        'canAsyncOutput' => 1,
                        'SNAME' => 'WEB',
                        '.attraggr' => [],
                        'PORT' => 55738,
                        'Authenticated' => 0,
                        'CD' => bless( \*Symbol::GEN3160496, 'IO::Socket::INET' )
                      },
              'NOTIFYDEV' => 'global',
              'mayBeVisible' => 1,
              'CFGFN' => '',
              'STATE' => 'active',
              'PROJECT_COLOR' => 47,
              'NR' => 88580,
              'TYPE' => 'todoist',
              'VERSION' => '1.3.9',
              'helper' => {
                            'errorData' => '',
                            'TIDS' => [],
                            'errorMessage' => ''
                          },
              '.attrminint' => [],
              'PID' => xxxx,
              'PROJECT_ORDER' => 6,
              'READINGS' => {
                              'countUsers' => {
                                                'VAL' => 0,
                                                'TIME' => '2021-05-04 09:37:32'
                                              },
                              'lastCreatedTask' => {
                                                     'VAL' => 'URL eingetragen - 4798220134',
                                                     'TIME' => '2021-05-04 09:33:10'
                                                   },
                              'listText' => {
                                              'VAL' => '-',
                                              'TIME' => '2021-05-04 09:37:31'
                                            },
                              'state' => {
                                           'TIME' => '2021-05-04 09:31:22',
                                           'VAL' => 'active'
                                         },
                              'count' => {
                                           'VAL' => 0,
                                           'TIME' => '2021-05-04 09:37:31'
                                         },
                              'lastDeletedTask' => {
                                                     'VAL' => 'URL eingetragen - 4798220134',
                                                     'TIME' => '2021-05-04 09:33:46'
                                                   },
                              'error' => {
                                           'VAL' => 'none',
                                           'TIME' => '2021-05-04 09:37:32'
                                         },
                              'lastError' => {
                                               'TIME' => '2021-05-04 09:37:31',
                                               'VAL' => 'no data'
                                             }
                            },
              'NAME' => 'test',
              'FUUID' => 'xxxx',
              'OLDREADINGS' => {},
              'DEF' => 'xxxx',
              'PROJECT_NAME' => 'test',
              '.attraggr' => [],
              'INTERVAL' => 1800,
              'MID' => 'todoist_xxxx',
              'NTFY_ORDER' => '64-test'
            }
}

2021.05.04 09:37:45 4: todoist (test):  create - Task Callback data: '{"error":"Unable to parse \\"due_string\\" value","error_code":480,"error_extra":{"event_id":"xxxx","retry_after":18},"error_tag":"INVALID_DATE","http_code":400}'


Vielen Dank vorab für jeglichen Hinweis!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 04 Mai 2021, 10:25:18
Der Doppelpunkt macht hier Probleme. Das ist der Trenner für Titel und due_date. todoist-API parst alles hinter dem Doppelpunkt als date string (also sowas, wie "heute" oder "morgen" oder "2021-05-06"). Ich überlege mal, wie ich da einen Workaround hinbekomme.

Beim Update müsste es gehen mit

set <todoist> updateTask <ID> title="https://google.de"

Ggf. kann man da einen Workaround bauen, bis ich eine Lösung habe.

totoist API macht da übrigens folgendes selbst raus: [Google](https://google.de).
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 04 Mai 2021, 10:47:15
Ab Version 1.3.10 (morgen im Update) kann man folgendes machen:

set <todoist> addTask title="<title>"

Also auch sowas wie:

set Liste addTask title="[Linktitel](https://google.de)"

Der Parameter title hat dabei Vorrang vor einem möglicherweise direkt gesetzten Titel. Macht man z.B. sowas:

set Liste addTask Milch title="[Linktitel](https://google.de)"

wird nicht "Milch" als Titel gesetzt, sondern der Link.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: slupus am 05 Mai 2021, 10:09:41
Hi Marvin,
vielen Dank für die schnelle Antwort und Erweiterung des Moduls! Es funktioniert :D
Der Workaround hätte mir auch erstmal weitergeholfen.
Umlaute werden nur als Ersetzungszeichen dargestellt, aber das lässt sich ja einfach umgehen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 05 Mai 2021, 10:18:17
Das UTF8 Problem ist dann morgen im Update behoben.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: slupus am 07 Mai 2021, 13:16:22
Besten Dank für den schnellen Fix, funkioniert!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Humpelpumpel am 01 August 2022, 09:43:19
Hallo, ist es möglich mir irgendwie die Tage bis zur Fälligkeit eines Tasks anzeigen zu lassen?

Aktuell hab ich ja nur das Reading "Task_001_dueDate 2022-08-07 00:00:00"

Sehen würde ich aber gerne in wie viel Tage das ganze fällig ist und ich besten Fall sogar noch wie viel Tage überfällig der Task ist.
Ist das möglich? Zur not auch mit einem Userreading?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 01 August 2022, 10:30:48
https://wiki.fhem.de/wiki/Zeitangaben,_rechnen_mit
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: baedman am 06 Dezember 2022, 21:16:42
Hi Marvin,

erstmal vielen Dank für Dein klasse Modul, was uns schon monatelang an das Mülltonnen rausstellen erinnert und weitere Erleichterungen bringt.
Heute gab es leider zum ersten Mal ein Problem: Todoist hat lt. FHEM-Log anscheinend die API umgestellt:
This API endpoint is no longer available. Please refer to our documentation to upgrade your client to use the latest API version: https://developer.todoist.com

Wollte nur fragen, ob du das ggf. schon auf dem Schirm hast?
Wenn ich beim testen unterstützen kann, helfe ich gerne.

Danke und viele Grüße
Andreas
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: slupus am 06 Dezember 2022, 21:19:47
Hallo Marvin,
meine Anbindung funktioniert leider nicht mehr. Mit Verbose 5 habe ich folgende Meldungen im Log gefunden:

Error Message: GetTasks: Response was damaged or empty. See log for details.
Error Message: Response was damaged or empty. See log for details.
Api-Error Callback-data: '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>410 Gone</title>
<h1>Gone</h1>
<p>This API endpoint is no longer available. Please refer to our documentation to upgrade your client to use the latest API version: https://developer.todoist.com</p>

Kannst du dir das bitte bei Gelegenheit anschauen?
Danke und Grüße
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 06 Dezember 2022, 21:43:10
Probiere bitte mal die anliegende Version. Ich habe zunächst nichts weiter geändert, als v8 durch v9 ersetzt.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: baedman am 06 Dezember 2022, 22:22:42
Das ging schnell, danke.  :)
Ein kurzer Test mit addTask, completeTask, getUsers und getTasks war bei mir erfolgreich.

Viele Grüße
Andreas
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 Dezember 2022, 08:27:07
Habe das so eben mal  eingecheckt. Bitte melden, falls noch irgendwas an die neue API angepasst werden muss. Ich verwende todoist kaum noch und mir wird es ggf. nicht auffallen.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: slupus am 07 Dezember 2022, 16:23:23
Vielen Dank Marvin!
Habe gerade getestet und kann Andreas Rückmeldung bestätigen :)
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Mickey am 25 Dezember 2022, 13:03:13
Frohe Weihnachten @all,

leider funktioniert das Modul seit gestern nicht mehr.

Zitat2022.12.25 11:05:58 3: todoist (Todo): Error Message: GetTasks: Response was damaged or empty. See log for details.
2022.12.25 11:05:59 3: todoist (Einkaufen): Error Message: GetTasks: Response was damaged or empty. See log for details.

Grüße, Michael
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: baedman am 26 Dezember 2022, 13:10:36
Frohe Weihnachten auch von mir!

Problem scheint das Token-Handling zu sein (habe vorher meinen Token nochmal geprüft und neu gesetzt):
2022.12.26 12:37:11 5: todoist (Todos):  Task Callback data (decoded JSON): {
  'error_tag' => 'AUTH_INVALID_TOKEN',
  'http_code' => 403,
  'error_extra' => {
                     'event_id' => '88150bffdd69402f92bd0a213a4c3ac8',
                     'retry_after' => 33,
                     'access_type' => 'none'
                   },
  'error' => 'Invalid token',
  'error_code' => 401
}


Wenn mich meine Kenntnisse nicht täuschen, würde ich nach kurzer Durchsicht des Codes behaupten, dass der Token noch im Header des Requests mit übergeben werden muss (wie hier beschrieben): https://developer.todoist.com/sync/v9#authorization
Vielleicht hilft der Hinweis marvin ja?
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 27 Dezember 2022, 06:45:46
Ich werde mich leider erst ab dem nächsten 4.1. damit beschäftigen können.
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: baedman am 27 Dezember 2022, 20:38:26
Danke, marvin!

Habe meine Vermutung gerade mal validiert (bin ungeduldig ;-)) und in den Zeilen 335, 594, 723, 897, 1202 und 1342 der 98_todoist.pm
header     => "Content-Type: application/x-www-form-urlencoded",
durch
header     => "Authorization: Bearer ".$pwd,
ersetzt.
Für meine Anwendungszwecke scheint es damit erstmal wieder zu laufen.
Für Mutige habe ich (zumindest als Übergangslösung) meine Version mal angehängt (natürlich ohne Gewähr ;-))
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Mickey am 28 Dezember 2022, 07:40:30
Guten Morgen baedman,

deine ungeduldig hat sich für mich gelohnt.

Das Modul läuft wieder 1a.
1000 Dank dafür.

Liebe Grüße, michael
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: slupus am 28 Dezember 2022, 08:38:12
Danke baedman! Läuft auch bei mir  :)
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 02 Januar 2023, 20:18:35
Bitte einmal die angehängte Version testen.

Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: slupus am 02 Januar 2023, 20:59:59
sieht auf den ersten Blick gut aus!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: baedman am 02 Januar 2023, 22:25:29
Bei mir auch, danke!
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: Mickey am 03 Januar 2023, 03:31:20
Hallo Marvin,


Version 1.3.15 läuft bei mir.

Danke, Michael
Titel: Antw:Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 03 Januar 2023, 13:59:35
Die Version ist eingecheckt.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 30 April 2023, 13:57:40
Hallo zusammen,

ich nutze das Modul auch schon lange - aber nur gelegentlich zum schreiben von Tasks.
Heute habe ich es noch einmal benutzen wollen - funktioniert allerdings leider nicht.

Ich kann also nicht sagen seit wann ich das Problem evtl. schon habe - die Einzige Änderung bei mir war vor ein paar Monaten, dass ich noch eine 2. Liste bei todoist benutze. Ob das das Problem ist... keine Ahnung.
Lesen oder löschen von Tasks geht - nur nicht neu anlegen.
In den Readings des Einkaufszettel ist das READING error: es steht auf none.

Vielleicht wäre jemand so lieb mal zu testen / schreiben, ob es grundsätzlich funktionieren sollte?

Danke vorab.

LG, Sprudelverduenner
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: mr.sulu am 30 April 2023, 14:58:14
Hallo,
vielen Dank für den Hinweis. Bei mir funzt es auch nicht mehr und habe nix bei geändert!!!
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 01 Mai 2023, 07:10:58
Ich schaue mir das an, sobald ich Zeit habe.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: slupus am 01 Mai 2023, 08:37:04
Bei mir läuft das Modul ohne Probleme.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: slupus am 23 Mai 2023, 17:23:56
Hi Marvin,
ich muss meine Aussage korrigieren, bei mir funktioniert das Anlegen von Tasks nicht mehr. Ein getTasks oder ein updateTask funktioniert.
Wäre toll, wenn du doch einen Blick drauf werfen könntest.
Folgende Meldung im Log:
todoist (todoist_fhem): got error: Not found | createTask: 0UnknownDanke und Grüße
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: TimTim am 23 Mai 2023, 18:28:45
Hallo,

hab genau den selben Fehler.
Kann keine Tasks mehr anlegen.
Fehlermeldung im Log ist die gleiche wie bei slupus.

Gruß Tim
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: 2space am 28 Mai 2023, 11:46:33
Muss mich dann leider mit einreihen. Ich bekomme neuerdings ein "error: no data" beim Anlegen eines neuen Tasks.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 28 Mai 2023, 11:58:49
Ich bin aktuell völlig eingespannt. Es kann noch 14 Tage dauern. Ich weiß, was zu tun ist, bin aber zeitlich nicht in der Lage, es umzusetzen.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 06 Juni 2023, 11:40:40
Ich habe soeben eine neue Version ins SVN geladen. Bitte einmal auf Herz und Nieren testen (morgen im Update oder manuell aus dem SVN holen).
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 07 Juni 2023, 10:06:01
Vielen Dank für das Update.

Schreiben von Tasks geht nun wieder.
Eine Kleinigkeit ist mir aufgefallen:
Bei mir werden Umlaute noch nicht korrekt dargestellt.

LG, Sprudelverduenner
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 Juni 2023, 10:51:13
Wo werden Umlaute nicht korrekt dargestellt?
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 07 Juni 2023, 11:32:35
Sorry... ich hätte das konkreter Ausführen sollen / können.

Ich gebe z.B. bei FHEM einset einkaufszettel addTask Rösti
Im angelegten Task (und auch in der ToDoIst APP) steht dann:Rösti
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 Juni 2023, 12:48:28
Ich habe eine neue Version ins SVN geladen. Bitte ausprobieren.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 07 Juni 2023, 14:28:22
Hallo Marvin,

besten Dank für Deine Arbeit.

Ich habe noch nie eine SVN-Update gemacht. Ich hoffe ich habe dieses mit { Svn_GetFile('FHEM/98_todoist.pm','FHEM/98_todoist.pm') } richtig durchgeführt.
Ich konnte zumindest per FTP beobachten, dass die Datei erneuert wurde.

Nach einem Neustart von FHEM hat es allerdings mein System zerschossen.
Hier ein Auszug aus dem LOG beim Start:
2023.06.07 14:13:21 1: PERL WARNING: "my" variable $version masks earlier declaration in same scope at ./FHEM/98_todoist.pm line 23, <$fh> line 217.
2023.06.07 14:13:21 1: PERL WARNING: "my" variable $version masks earlier declaration in same statement at ./FHEM/98_todoist.pm line 25, <$fh> line 217.
2023.06.07 14:13:21 1: reload: Error:Modul 98_todoist deactivated:
 Version control conflict marker at ./FHEM/98_todoist.pm line 20, near "<<<<<<<"
syntax error at ./FHEM/98_todoist.pm line 22, near "||"
Version control conflict marker at ./FHEM/98_todoist.pm line 24, near "======="
Version control conflict marker at ./FHEM/98_todoist.pm line 26, near ">>>>>>>"

2023.06.07 14:13:21 0: Version control conflict marker at ./FHEM/98_todoist.pm line 20, near "<<<<<<<"
syntax error at ./FHEM/98_todoist.pm line 22, near "||"
Version control conflict marker at ./FHEM/98_todoist.pm line 24, near "======="
Version control conflict marker at ./FHEM/98_todoist.pm line 26, near ">>>>>>>"

Mein Device einkaufszettel ist auch nicht mehr auffindbar. Stattdessen sehe ich dort eine Fehlermeldung: Undefined subroutine &main::todoist_Html called at (eval 4186) line 1.
Ich hoffe ich konnte genügend Informationen liefern.
Ich spiele jetzt erst mal ein FullBackup meiner SD-Karte ein, was ich gestern Nachmittag glücklicherweise erst gemacht habe...


Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 Juni 2023, 14:39:19
Mir ist nicht ganz klar, was du da gemacht hast. Aber es sieht so aus, als hättest du ein conflict file erhalten.

Wenn du 98_todoist.pm manuell runter lädst und in dein Projekt einbaust, dann sollte es laufen.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 07 Juni 2023, 15:03:44
@Marvin:
herzlichen Dank für Deine Hilfe.

Ich habe aus dem SVN (auch mein 1. Mal) die Datei geladen und in mein System eingespielt.

Mein FHEM inkl. dem Device einkaufszettel läuft wieder und das Problem mit den Umlauten ist auch gelöst.

Ich habe die 98_todoist.pm, die ich per Update-Befehl gezogen habe mit der manuell geladenen einmal verglichen:
#######################
# Global variables
my $version = "1.3.23";
my $apiUrl = "https://api.todoist.com/sync/v9/";

my $srandUsed;
Das ist der Teil der korrekten Datei. In der Datei durch den Update-Befehl standen unter der Versionsnummer noch weitere Zeilen mit wirren Zeichen und 2 weiteren Versionsnummern.
Leider habe ich diesen Auszug eben gelöscht.
Ich weiß nicht, ob das relevant ist und morgen beim regulären Update zum Problem für die anderen führen könnte.

Beste Grüße,
Sprudelverduenner
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 Juni 2023, 15:06:47
Ich denke nicht. Danke.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: mr.sulu am 07 Juni 2023, 16:53:47
Bei mir funktioniert es weiterhin nur in eine Richtung.
Füge ich über meinen Browser direkt bei todoist oder über die App auf dem Handy der Einkaufsliste etwas hinzu, zeigt es das Modul bei FHEM an. Versuch ich aber bei FHEM etwas der Liste hinzuzufügen, klappt es nicht.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: sprudelverduenner am 07 Juni 2023, 17:41:19
Ich denke es wäre einfacher Dir zu helfen, wenn Du mal beschreiben würdest was Du bereits in den letzten 2 Tagen alles gemacht hast.

Also: Update durchgeführt ?
Wenn ja, was für ein Update ?
Heute Morgen vor 8 Uhr oder nach 8 Uhr ?
SVN Update ?
Z.B. mit FTP Programm auf den FHEM-Ordner schauen von wann die 98_todoist.pm ist...
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 07 Juni 2023, 18:09:31
Ein list wäre schon hilfreich. Oder die Version aus den Internals. Aber ohne Infos ist es Raterei.
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: 2space am 08 Juni 2023, 10:39:05
Hi, Danke für die Umsetzung!

Beim Test der neuen Version viel mir auf:
set todoist_hauswirtschaft addTask Trockner ausraeumen dueDate=todayfunktioniert wie gewünscht.

Jedoch funktioniert das Gegenstück bei mir aktuell nicht:
set todoist_hauswirtschaft completeTask TITLE:Trockner ausraeumenset todoist_hauswirtschaft completeTask title=Trockner ausraeumen
Ein Bedienungsfehler meinerseits?

VERSION 1.3.24

Gruß 2space
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: marvin78 am 08 Juni 2023, 14:37:18
Ich habe ein wenig an updateTask geändert um dem Leerzeichen-Problem auf den Grund zu gehen. Bitte einmal testen. Es funktioniert aber nur bei neu und mit dieser Version erzeugten Tasks (1.3.26), nicht mit schon vorhandenen:


set todoist_hauswirtschaft completeTask title='Trockner ausraeumen'
Bitte bei Tasks mit Leerzeichen an die Anführungszeichen denken

Man kann einen Task aber auch einfach so erledigen:

set todoist_hauswirtschaft completeTask Trockner ausraeumen
Titel: Aw: Modul: todoist - Task-/Listenverwaltung in FHEM (Bsp. Einkaufsliste) + Frontend
Beitrag von: 2space am 08 Juni 2023, 15:19:44
Danke!