前置き
つい先日LINE Notifyというサービスがあることを知ったので試してみたい。
シンプルなコードで、定時5分前にスマートに通知を受け取り、スマートに定時ダッシュしたいと思う。
スマーホでは通知に気付きにくいがスマートウォッチがあれば、それこそスマートに通知を受け取れる。
環境
- MacOS Mojave 10.14.5
- Python 2.7.16
実装
leaving_work_notify.py
# -*- coding: utf-8 -*-
import requests
url = "https://notify-api.line.me/api/notify"
access_token = 'ここにアクセストークン'
headers = {'Authorization': 'Bearer ' + access_token}
params = {'message': '退勤5分前だよ!'}
requests.post(url, headers = headers, params = params)
- アクセストークンの発行は以下を参照
- https://qiita.com/moriita/items/5b199ac6b14ceaa4f7c9
検証
$ python /your/path/leaving_work_notify.py
これで即座にスマホ or スマートウォッチに通知が来る。
クーロン登録
crontabを使って、平日の退勤5分前に自動実行する。
$ crontab -e
ここで詰まった。。
上のコマンドでviが開いたのだが、クーロンを書いて保存しても
もう一度開くと全然保存されていない。
$ crontab -l
してみても「何も登録されてない」って言われる・・
ググってみると解決方法が見つかった!
$ export EDITOR=vim
環境変数にエディタを明示的に指定してあげないとダメらしい。(参考: https://dev.classmethod.jp/etc/mac_de_cron/)
気を取り直して
$ crontab -e
55 18 * * 1-6 /your/path/python /your/path/leaving_work_notify.py
なんとかクーロンが登録出来た。
まとめ
これで平日の18時55分に「退勤5分前だよ!」と通知が来るようになった。
祝日判定はこのライブラリが便利そう(https://github.com/Lalcs/jpholiday)
素晴らしいサービスなのでもっと良い使い道を見つけたい。
参考
参考にいたしました。ありがとうございます。
Qiita
- https://qiita.com/machiiyusuke/items/80de903c624054b3002f
- https://qiita.com/moriita/items/5b199ac6b14ceaa4f7c9
crontab
Pythonのrequestsライブラリってなんぞや?
Pythonの祝日判定ライブラリ
LINE Notify APIドキュメント