JanKoWeb: Produktivita - TODOIST: přidání úloh pomocí url, bookmarklety
jankoweb.wz.cz
Den Červeného kříže a Osvobození ČR.


TODOIST: přidání úloh pomocí url, bookmarklety

API

Díky otevřenému API je možné udělat si vlastní bookmarklety na přidávání tasku do TODOISTu.

Nejjednodušší ukázka (stačí upravit APP_TOKEN a ID_PROJEKTU, zkopírovat do prohlížeče a odentrovat. Měl by se přidat task "TASK", text si samozřejmě můžete změnit):

https://api.todoist.com/API/addItem?priority=1&content=TASK&token=APP_TOKEN&project_id=ID_PROJEKT

APP_TOKEN - jděte do Settings / Account - token je v dolní části. 

Zjištění APP_TOKENu
Zjištění APP_TOKENu

ID_PROJEKT - id projektu najdete na konci adresy, když v TODOISTi nějaký projekt označíte. Jedná se o číslo za písmenem "F".

Zjištění ID_PROJEKTu
Zjištění ID_PROJEKTu

Pokud id projektu necháte prázdné, přidává se task do Inboxu.

http://js.do/ - zkoušení javascriptového kódu.

Syntaxe

Co je v závorce, to bude bráno jako popis odkazu, pokud je v tasku nalezen.

Odkaz

V Androidu označen maličkou osmičkou. Proklik se udělá automaticky, když se vloží do tasku něco na "http://". Popis bez zobrazení adresy se udělá:

http://google.com (toto bude jako popis)

- z toho textu se udělá link.

Mail

Mail je v Androidu označen maličkou obálkou. Udělá se tak, že se vloží adresa:

http://mail.google.com/...(toto bude nazev mailu)

Použití s Executor a Mutate

Co je to za prográmky - viz http://jankoweb.moxo.cz/blog/produktivita/produktivita-linux-a-mutate-brutalne-prakticka-vec/.

Příklad použití (při nastavení z článku výše): dáte pak jen Ctrl+Mezerník (kdekoli), zkratku (dejme tomu "todo") a text tasku. A task se přidá do Inboxu v Todoistu.

Executor

Na Windows nainstalujte http://gnuwin32.sourceforge.net/packages/wget.htm - Binaries a Dependencies - rozbalte do jedné složky, např. C:\skripty\. Potom vytvořte C:\skripty\todoist.cmd:

C:\skripty\bin\wget.exe "http://api.todoist.com/API/addItem?priority=1&content=$U$&token=APP_TOKEN&project_id=" --no-check-certificate & start https://todoist.com/app?lang=en^&v=353#project/ID_PROJEKT

(%2F se musi napsat jako "/", jinak se nepresmeruje na projekt)

V Executoru pak přidejte zkratku a jako command dejte C:\skripty\todoist.cmd.

Nefunguje, zkoušel jsem pak ještě curl, strávil jsem na tom clekem 7 hodin, ale nepovedlo se mi v cmd.exe udělat odeslání dat v utf8 (v todoistu se znaky zobrazovaly jako diamanty s otazníkem). (chcp 65001 nefungovalo, ani mrtě dalších věcí) Nakonec jsem skripty přepsal do Pythonu, po chvíli válčení na Widlích jsem to rozchodil i se správným kódováním.

Mutate

Úpravou configu jde nastavit, že dám Ctrl+Mezerník, q a text a uloží se mi nový task.

Příklad skriptu pro hledání v databázi knih:

#!/bin/bash
echo [$@]
echo "command=xdg-open \"http://www.databazeknih.cz/search?$@\""
echo "icon="
echo "subtext=Hledat na databazeknih.cz"

Příklad skriptu pro přidání události do Google kalendáře:

#!/bin/bash
/opt/google/chrome/google-chrome --app=http://www.google.com/calendar/event?action=TEMPLATE

Python skript pro přidání do TODOISTu

Pozor na to, že musíte změnit VAS_TOKEN a VASE_ID_PROJEKTU.

# Prida predany parametr jako ulohu do Todoistu.
# priklad volani:
# python todoist_add.py "test tasku"
import sys
import urllib2
import urllib
import time
import os
print os.name
if len(sys.argv)==-1:
   print "nebyl zadan vstupni retezec"
else:  
    task = {'content' : sys.argv[1] + time.strftime(' %d.%m. %H:%M')}
    response = urllib2.urlopen('https://api.todoist.com/API/addItem?priority=1&token=VAS_TOKEN&project_id=&'+urllib.urlencode(task))
    os.system('/opt/google/chrome/google-chrome --app="https://todoist.com/app?lang=en&v=353#project/VASE_ID_PROJEKTU"')

Praktické

A bookmarklet for Todoist to add a website to your read later project. - bookmarklet přidání stránky jako tasku.

Samozřejmě nejlepší je napíchnout přidání tasku na Mutate či Executor.

Rubrika Produktivita | Tagy TODOIST | Út 26.05.2015 | 997x

Náhodné články

Tento web jsem zakládal na střední, v roce 2008. Je zde hlavně archiv mé tvorby.

Aktuální věci publikuji kvůli úspoře času na Twitter.

Honza

"Žádné zlo se ještě nepodařilo odstranit tím, že byly odstraněny jeho symptomy. Je třeba odstranit jeho kauzu."

V. Havel