Naomi's notebook

Naomi's notebook

todoリスト管理アプリ作成 第一回

todoistと同期できるスケジューラー兼トラッカーみたいなものが欲しいので、プログラミングの勉強がてら作ります。で、ついでにslack botの作り方を学んでいこうと思いました。

目標

作っているうちに変わってくると思いますが、大まかには
・todoistとスラックと連携
・スラックにいろいろ表示
・勝手にtodoistのタスクを振り分けてくれるスケジューラとしての機能
・タイムトラッカーとしての機能
・タイムトラックをもとにより良いスケジューリングの提案をする機能
みたいなのをつけたいと思います。
具体的な機能について公開してしまうと、誰かがより良いものを作ってくれてやる気が0になりそうなので、後ほど公開します。

全てを実現するのはとても時間がかかるのでするかどうかはわかりませんが、勉強しつつ進めていきます。
今日はとりあえずtodoistの内容をslackに表示してみました。

使ったもの

・heroku

jp.heroku.com
公式のドキュメントやこのページを参考にしました。
Herokuでslackbot(python)を動かしてみた【おみくじBOT】 - Qiita

・pytodoist

公式のpythonライブラリ(API Documentation | Todoist Developer)を使おうとしましたが、なぜかimportに失敗するので調べたところ、
GitHub - Doist/todoist-python: The official Todoist Python API library
python2の環境でしか動かないことがわかりました。仮想環境(venv)を使えばできないことはないですが少し微妙なので、公式ではないpytodoistを使います。
pytodoist.readthedocs.io
このページも参考にしました。
PyTodoistからTodoistで管理された自分のタスクにアクセス - Steel Dragon 14106

コード

おそらく以上のページを見ればすぐに作れると思います。
ある程度まとまったらgithubで公開します。(もし早めに知りたい人がいれば教えてください)

今回の成果

こんな感じになりました(プライバシー保護のため一部隠しています)

f:id:Naomi_Lilienthal:20190411143936p:plain
slackのスクリーンショット
階層構造が表現できていないので後で何かしらやります