EY-Office ブログ

自作TODOアプリ向け定期タスク登録をAWS Lambdaで作った

自分専用の TODO+メモ アプリを作る自分専用アプリ開発の勧め で作ったアプリに定期的に実行するタスク、例えば「開発で使っているMacのディスクバックアップを取る」などを自動的に登録する機能を、AWS Lambdaを作ってみました。

コードは Dropbox API を使いTODO.mdファイルをダウンロードし、Lambdaのパラメータ内にあるtaskから "- [ ] task" 文字列を作り、TODO.mdに結合し、その文字列をDropboxにアップロードしています。

タスクの後ろに年月日を追加したりしていますが、 Node.jsを知っている人には簡単なコードです。
また LambdaのNode.jsはV8.1で async/await が使えるので非同期通信もシンプルに書けます。

Amazon CloudWatch

AWS Lambdaのメソッドの起動はAWSの各サービスのイベントから行えます、以前IoT時代にこそ真価を発揮する AWS Lambdaに書いた実験システムではAWS IoT 1-Click から起動しています。

今回は Amazon CloudWatch のスケジュールで定期的にLambdaを起動しています。
スケジュールの設定は上の画像のようにAmazon CloudWatch コンソールから行います。時間指定は Unix(Linux)の cron と同様のフォーマットが使えます、ただし時間がGMTなので計算しないといけないのが面倒ですね。
またパラメター(入力の設定)にJSON形式で {"task": "Mac バックアップ"} タスクを指定します。

すでに数週間使っていますがとても便利です、簡単にローコストでこのような機能が作れるのは素晴らし事だと思います。

- about -

EY-Office代表取締役
・プログラマー
吉田裕美の
開発者向けブログ