Wundertalker >>Wunderlist geht wieder<<

Hallo Forum.

Ich hab die letzten Wochen an einem alternativen Konzept zu dem elenden Modul-Updatewahn gearbeitet, der mir zunehmend auf den Geist geht. Ich denke mit meinem jüngsten Wurf, einer Wunderlist Integration, hab ich ein brauchbares Resultat erzielt.

Ich hab versucht aus der Not eine Tugend zu machen und mich, und nicht zuletzt euch auch, von dem Versions-Abhängigkeits-Kuddelmuddel unabhängig zu machen. Der Wundertalker läuft mit allen IPS-Versionen (oder auch völlig ohne IPS) und wird auch zukünftig unabhängig von eurer IPS-Version funktionieren. Es gibt also fortan immer nur noch eine einzige aktuelle Version von mir, die mit jeder beliebigen IPS-Version zusammen arbeitet. Auf diese Weise muss ich Bugfixe nicht mehr rückwirkend für 2, 3 oder 4 IPS-Versionen pflegen und ihr zerschießt euch nach einem voreiligen IPS-Update nicht mehr wichtige Funktionen. Simple as that.

Da ich jetzt erstmal entspannt ins neue Jahr rutschen will fasse ich mich kurz. Eine Bedinungsanleitung im weitesten Sinne gibts in Form einer Online-Hilfe in der mitgelieferten Setup-Konsole.

Zusätzlich zu den Infos auf meiner Seite gibt es noch die IPS-Integration in Form einer kleinen Include-Datei. Sie ist sehr einfach gestrickt und dürfte für die Profis eher nicht interessant sein. Ihr findet die Datei mit dem Namen „__Toni.inc.php“ in eurem Scripts Ordner. Sie beinhaltet im Wesendlichen einen Parser, der Programmier-Anfängern den Umgang mit dem Wundertalker in IPS erleichtern soll.

Weitere Software nach diesem Schema, unter Anderem werden die ToniTools wiederbelebt, wird folgen.

Vielen Dank an die Betatester und vor Allem hardlog, der schon eine Webfront-Integration gebaut hat, die er euch, wie er bereits angekündigt hat, auch gern zur Verfügung stellen will. Ich wünsche euch einen guten Rutsch ins neue Jahr.

Hier [SIZE=5][Klick] gibts eine Installationsanleitung und den Download[/SIZE]

Gruß,

Toni

Hallo,

wie von Toni angekündigt hab ich schon (in Anlehnung an die Visualisierung von @wgreipl) die Einbindung ins WF realisiert.
Ich hab es nach der im Script „WunderlistMain.PHP“ beschriebenen Installationsanleitung selbst noch nicht neu angelegt, also bitte probieren und rückmelden.

Was geht (bei mir):

  • Alle unter dem eigenen Wunderlist-Account hinterlegten Listen im WF anzeigen
  • Neue Tasks anlegen, werden dann automatisch mit der Cloud synchronisiert
  • Einzelne Task können gelöscht werden (verschwinden aus der Liste)
  • Einzelne Task können als „erledigt“ markiert werden (werden durchgestrichen anzeigt) und reaktiviert werden
  • Einzelne Task können als „wichtig“ markiert werden

Bekannte Probleme:

  • Beim Anlegen von neuen Task werden Umlaute falsch angezeit -> Ist gefixt
  • Neue Listen können nicht angelegt bzw. gelöscht werden

Geändert 3.1.14:

  • URL-Codierungsproblem (Umlaute)
  • Erledigte Tasks können reaktiviert werden
  • TEST: Durch Anklicken des Tasktextes kann dieser editiert werden (dabei wir sofort (!) der angeklickte Task
    gelöscht und wenn in der Textbox gespeichert wird als neuer angelegt! Sprich wenn man vorm speichern
    abbricht, ist der Task gelöscht!) Bei mir gabs ein paar Probleme, ggf. testen und rückmelden.

Geändert 10.1.2016

  • wieder lauffähig
    Geändert 26.01.2016
  • Fehler behoben
    Geändert 9.03.2016
  • an 4.0 angepaßt
    Geändert 8.11.2016
  • an Tonis v1.2.11 (vom 8.11.2016) angepaßt

Viel Spaß
hardlog

Download: wundertalk.rar (91.9 KB)

Super Arbeit. Bei mir funktioniert es. Weiter so und alles gute fürs neue Jahr

Prinzipiell müßte das WF noch in gewissen zeitlichen Abständen aktualisiert und ggf. (?) mit der cloud synchronisiert werden.
Also sprich noch nen Timer hinzufügen der das Hauptscript regelmäßig aufruft.

hardlog

Ich denke der Sonderzeichen-„Bug“ ist nicht UTF8 sondern URL-Encoding. Hier die Basics: Klick

Das hier sollte abhilfe schaffen: urlencode

Hab grad weder IPS noch Wundertalker zur Hand sonst würde ichs selbst testen.

Listen erstellen und löschen hab ich noch nicht implementiert. Hielt das nicht für so wichtig.

Toni

Danke Toni,

ja das umlauteproblem lag am URL_Encoding:

Änderung an folgender Stelle im MainScript und es läuft:

if ($_IPS['SENDER']=="WebFront")
   {
       if($_IPS['VARIABLE']==$NewTaskStrID) // wenn durch Texteingabe für "neuen Eintrag" ausgelöst
        {
             $ListID=$ListsArray[Getvalue($ActualListID)][0];
          $result1=WunderlistBefehlSenden("AddTask?title=".urlencode($_IPS['VALUE'])."&list=".$ListID);
          $result2=WunderlistBefehlSenden("Sync");  // Wunderlist in Cloud synchronisieren und Erfolg rückmelden
          if (($result1=="FEHLER") or ($result2=="FEHLER"))
                   { WFC_SendNotification($WFC, "Wunderlist!", "Fehler beim Anlegen eines neuen Tasks ", "Warning", 5);}
               else
                    { WFC_SendNotification($WFC, "Wunderlist!", "Erfolgreich angelegt", "Information", 5);}
             SetValue($NewTaskStrID,'');
             $AktuelleList=getvalue($ActualListID);
         }

Gruß
hardlog

Hallo Toni, hallo hardlog,

DANKE!

Super, das Wunderlist wieder „funktioniert“ bzw. endlich wieder im Webfront angezeigt werden kann. Das erhöht den WAF wieder ungemein.

Installation und Inbetriebnahme haben problemlos (bis auf den alten Account, den ich - wie befürchtet - erneuern musste) funktioniert. Perfekt!

Als Erweiterung würde ich gern auch Einträge wieder „zurückholen“, d.h. den Erledigt-Status wieder zurücknehmen. Leider habe ich weder in den Dokus noch in der WunderTalker Hilfe zur Webschnittstelle den entsprechenden Befehl gefunden. Bisher gibt es ja „DONE“, „DELETE“ und „IMPORTANT“ als entsprechende do-Aktionenen - wie lautet die korrekte Syntax für ein „UNDONE“?

Danke und Gruß!
Jörg

Wenn du dir die Hilfe anschaust findest du folgenden Abschnitt:

Diese True/False-Geschichte sollte bekannt sein, oder? :wink:

Betrachte das Script von Hardlog nicht als feststehende Größe. Du darfst gern erweitern/ändern/rauswerfen. Freut mich, dass Wunderlist bei dir erfolgreich eingesetzt wird.

Gruß,

Toni

Hallo,

hab die URL-Problematik behoben und wie gewünscht können Task auch wieder reaktiviert werden.
Hab die gezipten-Daten oben aktualisiert (ist auch ein neues ICON drin).

GRuß
hardlog

Hallo Tonic1024, hallo hardlog,

vielen Dank für eure Arbeit.
Habe das Tool mal angefangen auszuprobieren und nach anfänglichen Schwierigkeiten läuft es nun schon mal ganz gut.:slight_smile:

Mir sind allerdings zwei Dinge aufgefalle die ich gerne weiter geben möchte. Vielleicht habt Ihr ja eine Lösung:

@Toni
Wenn ich beim Einrichten von Wundertalker den Haken bei <use SSL> setzte bekomme ich eine Fehlermeldung mit folgendem Text: „Die Ordnungszahl 354 wurde in der DLL „Libeary32.dll“ nicht gefunden“
Ein Einlesen der Listen von Wunderlist über das WebFront funktioniert dann auch nicht.

@hardlog
Deinen Vorschlag

hardlog
    Prinzipiell müßte das WF noch in gewissen zeitlichen Abständen aktualisiert und ggf. (?) mit der cloud synchronisiert werden.
    Also sprich noch nen Timer hinzufügen der das Hauptscript regelmäßig aufruft.
    hardlog 

hab ich mal umgesetzt und folgendes festgestellt:

  1. Wenn man das Script über ein zyklisches Ereignis triggert dann verschwinden die Einträge im Webfront. Die Anzahl der Einträge in den einzelnen Listen werden zwar noch als Zahl in Klammern angezeigt aber die Auswahl der anzuzeigenden Einträge ist plötzlich leer.
  2. Ruft man das Script übers WebFront direkt auf gibt es einige Fehlermeldungen: " Notice:Undefined index: VARIABLE in C:/…" und die vorher angezeigte Liste wird auch nicht mehr angezeigt.

Ich hab dann aber festgestellt, das ein Aufruf des Scripts anscheinend nicht notwendig ist.
Wenn man einen Listeneintrag editiert wird anscheinend automatisch gesynct.:cool:
Nur wenn man z.B. im Browser eine neue Liste erstellt hat wird diese im WebFront erst sichtbar wenn das Script erneut aufgerufen wird.

Habe mir jetzt erst einmal zum weiteren Testen eine eigene Liste mit einem Eintrag angelegt.
Wenn ich den Status diese Eintrages im WebFront ändere werden alle anderen Eintäge in den listen auch gesynct.

Viele Grüße
Stefan

Hallo Toni,
auf so etwas hab’ ich (bzw. wir) gewartet. Erstmal Dir und hardlog vielen Dank für die super Arbeit.

Die Installation habe ich zwar soweit hinbekommen, nur tut sich nix.

Beim aufruf von 127.0.0.1/Lists bzw. /sync bekomme ich die Meldung:

„08:23:10 — <Method Not Allowed>“

@hardlog
Weiter erhalte ich bei Aufruf Deines Skriptes die folgenden Meldungen:

Notice: Undefined offset: 1 in C:\IP-Symcon\scripts\14390.ips.php on line 123
Notice: Undefined offset: 6 in C:\IP-Symcon\scripts\14390.ips.php on line 127
Notice: Undefined offset: 6 in C:\IP-Symcon\scripts\14390.ips.php on line 130
Notice: Undefined offset: 3 in C:\IP-Symcon\scripts\14390.ips.php on line 141
Notice: Undefined offset: 4 in C:\IP-Symcon\scripts\14390.ips.php on line 149
Notice: Undefined offset: 1 in C:\IP-Symcon\scripts\14390.ips.php on line 157

Code ist soweit unverändert. Fällt Dir dazu etwas ein? Ich komme hier leider nicht weiter.

Vielen Dank und viele Grüße
Boris

Das klingt für mich als hättest du versucht die Exe ohne die zugehörenden DLLs zu starten. Die sind nicht optional. :wink:

Toni

Aaalso… Dein Problem scheint die Präzision zu sein. Computer sind da bisweilen recht Phantasielos bei der Interpretation von Anweisungen. :wink:

127.0.0.1/Lists kann nicht funktionieren. Es muss präzise formuliert mindestens der Port mit drin stehen. Aber das was du hier geschrieben hast, hast du nicht in die Adresszeile getippt (wieder Präzision), denn sonst hättest du nicht einmal diesen Fehler bekommen.

So ist es schwierig ne Diagnose zu stellen. Ich sitze zudem auch grad am Laptop einer Freundin und hab kein IPS zur Hand. Schau dir doch noch einmal das Beispiel in der Hilfe an. Und bitte nochmal gaaaanz genau soooo wie beschrieben versuchen. Ich vermute mal du hast schlicht die Groß- und Kleinschreibung durcheinander gebracht.

Mit etwas Glück sind dann auch die Meldungen im Script verschwunden.

Toni

Oh Mann!

Manchmal sieht man den Wald vor lauter Bäumen nicht mehr…:frowning:
Hattest recht.

Vielen Dank und Gruß
Boris

Hallo Ihr beiden,

fühle mich schuldig … ja das mit dem /EditTask habe ich übersehen (war auf der Suche nach einem einzelnen Befehl)!:confused:

Danke trotzdem für die Info und noch mehr für das fertige Script!

Danke und Gruß aus Sachsen!
Jörg

Hallo Hardlog

beim Aufruf des Scripts erhalte ich folgende Meldung:

Fatal error: Call to undefined function getToniArray() in C:\IP-Symcon\scripts\49632.ips.php on line 35

Kommunikation zu Wunderlist funktioniert über den Browser.

Im Wundertalker den IPS-Support über Autoinclude nicht aktiviert? Kannst auch manuell includen wenn dir das zu viel Overhead ist.

Kein Problem. Hatte es extra recht kompakt gehalten damit es nicht so unübersichtlich wird :smiley:

Sieh es positiv. Besser als wenn was kaputt ist :wink:

Gruß,

Toni

Im Wundertalker den IPS-Support über Autoinclude nicht aktiviert? Kannst auch manuell includen wenn dir das zu viel Overhead ist.

das wars. Danke

Wegen der allgemeinen Verwirrung noch einmal ein paar Worte zum Sync.

Was ist eigentlich ein Sync? Eine Synchronisierung ist ein Datenabgleich zwischen zwei, sich möglicherweise unterscheidenen, Datenbanken. Es werden niemals einzelne Datensätze „synchronisiert“ sondern die Unterschiede zwischen den Datenstämmen (lokal und der Cloud) abgeglichen. Es werden also immer alle Listen und alle Einträge kontrolliert. Daher ist es ratsam, grade bei vielen Listen und Eintägen, sparsam mit dem manuellen sync umzugehen.

Wundertalker übernimmt das syncen vollautomatisch in einem von mir willkürlich auf 15min festgelegten Intervall.

Stimmt. Das ist nicht notwendig. Wenn man dem Wundertalker die neuen Daten mitteilt weiss er sie selbst und teilt der cloud die Änderungen sofort mit. Alle anderen Clients am Handy oder Tablet syncen sich dann mit der cloud. Wundertalker nochmals zusätzlich manuell syncen zu lassen ist unnötig. Er würde nur feststellen, dass er bereits aktuell ist.

Genau. Das ist das was eine Synchronisierung auch tun soll. Die beiden Datenstämme sind danach identisch egal wieviele Unterschiede es vorher gab.

Da ich in meiner Testumgebung immer mehrere Einträge auf einen Rutsch eingetragen hab, hab ich danach einen manuellen Sync für alle Einträge gemacht statt automatisch jeweils einen nach jedem neuen Eintrag. Dieser eine Sync hat dann viele Unterschiede festgestellt und „repariert“, was mir sparsamer vor kam. Wie mir scheint geht das am realen Einsatz vorbei. Ich werde diesen Sync intern emulieren (wie beim editieren), so dass man zukünftig eigentlich überhaupt nicht mehr manuell syncen muss. Nur, wenn man z.B. einen Eintrag am Handy gemacht hat und nicht warten will bis er automatisch im Webfront auftaucht. Hab das auf der ToDo.

Gruß,

Toni

Zum Thema Sync:

Gut zu wissen, dennoch muss die Anzeige in gewissen Abständen aktualisiert werden, sonst stimmt die Anzeige nicht mit der Cloud / bzw. mit den von wundertalker bezogenen daten überein.

Gruß
hardlog