定期的に家族にLineを送るのでLine Notifyで自動化しました。これで人間リマインダーともおさらばです。
実行環境はAWSを利用し、構成としてはAmazon EventBridgeトリガーでLambdaを呼び出すことにしました。

Line NotifyとAWSリソースの構築手順 見出しへのリンク

  1. Line Notifyに登録しアクセストークンを取得
    https://notify-bot.line.me/ja/
  2. Lambda作成
  3. lambda_handler関数にLineメッセージを送信するPython実装を追記
import requests

def lambda_handler(event, context):
    api = 'https://notify-api.line.me/api/notify'
    token = 'Line Notifyで取得したToken'
    headers = {'Authorization': 'Bearer ' + token}

    payload = {'message': event['message']}

    r = requests.post(api, headers=headers, params=payload)

    return ''
  1. import requests が使えるようにLayerファイルを作成し、Lambdaのレイヤーに追加する
    参考: https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/configuration-layers.html
  mkdir python/ 
  cd python
  pip install -t ./ requests
  cd ..
  zip -r Layer.zip python/
  1. LambdaトリガーとしてAmazon EventBridge (CloudWatchEvents)を追加
  • Cronでスケジューリングする、例:月曜から金曜までの昼12:30に起動(JST)
30 3 ? * MON-FRI *
  • JSON で定数を指定
{"message": "お昼のメッセージです"}