1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

在宅フレックスで退勤時刻がわからなくなるので、退勤時刻が近づいたらLINEで知らせることにした。

1
Last updated at Posted at 2020-06-29

電車に乗って社会参加していたときは出勤時刻がほぼ一定だったのですが、在宅勤務が始まってから始業時間がめちゃくちゃ適当になってしまい、あれ?今日は何時に仕事終わりだっけ…?というのを毎日やっています。旦那さんのほうが私の退勤時刻を把握している。
絶対残業したくないのと、退勤時刻を夫婦で共有したいため、LINEのトークへ退勤20分前に通知を飛ばすことにします。
今回は、以下の記事で作った「出退勤ダッシュボタン(で動かしてる打刻スクリプト)」に追記して目的を達成しました。
Wi-Fiに繋がらないAmazon Dash Buttonを復旧させて出勤ダッシュボタンを作る。 - Qiita

LINE Notifyのアクセストークン発行

トークに通知を飛ばすだけなら、LINE Messaging APIではなくLINE Notifyで十分です。
LINE Notify
マイページ -> アクセストークンの発行(開発者向け) で通知を飛ばしたいトークを選択すると、即トークンが発行できます。
以下のリクエストでトーク宛てに通知が飛ばせます。

curl -XPOST "https://notify-api.line.me/api/notify" -H "Authorization: Bearer ${YOUR_TOKEN}" --data "message=こんばんは"

退勤時刻20分前にメッセージを飛ばす

出勤でダッシュボタンを押したときに、「退勤時刻20分前」をタイマーにセットしてコマンドを実行できれば良さそうです。
今回の用途にぴったりなatコマンドを使います。
atコマンドについて詳しくまとめました 【Linuxコマンド集】

以下のコマンドを、出勤用の打刻スクリプトにセットします。

echo "curl -XPOST \"https://notify-api.line.me/api/notify\" -H \"Authorization: Bearer ${TOKEN}\" --data \"message=retrorocketさんはあと20分で退勤です。\"" | at now + ${勤務時間-20}min

atコマンドで、現在時刻から{(n時間*60)-20}分後にLINE NotifyのAPIを実行するようにセットしています。

image.png

目的が達成できました。出退勤だけでなく、スマート家電と合わせて使っても楽しそうですね。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?