郵便受けに投函されたらSlack/LINEに通知してみた[Qiita補足]
タイトルの通り。Qiitaを書いたのでその補足とか。
利用サービス
お金回りとかをちょっとまとめてみる。
分類 | サービス名 | 月額料金 | 資料 |
---|---|---|---|
IoTデバイス | SORACOM LTE-M Button Plus | 基本料金: 110 円 / 月 従量課金: 1送信当たり 0.3~0.4円 (月に300回の送信で約80円 = 80円/300回 = 約0.27円) |
ご利用料金 - 特定地域向け IoT SIM よくある問い合わせ - データ通信量はどのくらいですか |
プラットフォーム | SORACOM Func | 無料 ※1リクエストあたり0.00198円 ※月間 50,000 リクエストまで無料 |
SORACOM Funk のご利用料金 |
プラットフォーム | GCP Cloud Functions | 無料 ※200 万回の呼び出しのほかに、400,000 GB 秒、200,000 GHz 秒のコンピューティング時間と、1 か月あたり 5 GB のインターネット下りトラフィック(外向きトラフィック)まで無料 |
Cloud Functions - 料金 |
ランニングコストは月200円もしないくらいに落ち着きそう。
ソースコード
GitHubに上げた。
環境変数でSlackのトークンやチャンネル名、LINEのトークンを指定するようにしてある。
環境変数はenv.yaml
に書いて、デプロイするときにそれを読み込ませている。
FUNCTION_NAME=notify_from_mailbox gcloud functions deploy ${FUNCTION_NAME} \ --region asia-northeast1 \ --runtime python39 \ --trigger-http \ --allow-unauthenticated \ --env-vars-file=env.yaml \ --memory 128MiB
Slackの通知設定
Qiitaの方では参考サイトをそのまま貼ったけど、こっちではもう少し詳しく書く。リンク先が消えるかもしれないし。
アプリの作成
Slackのアプリ作成ページからCreate New App
を押下。
https://api.slack.com/apps
このとき、仕事で使っているWorkSpaceの情報も統合されていて、そっちで作成したアプリが表示されていて焦った。
何を見て判断しているかわからないけど、複数アカウントが紐付けられてしまっている模様。
権限設定
メニューからOAuth & Permissions
を選択。
Scopesから必要な権限を選択。今回はchat:write
だけでOK。
ワークスペースへインストール
メニューからInstall App
を選択し、ワークスペースへインストールする。
そうするとトークンが発行されるので、そのトークンを使って実装すればOK。
LINEの通知設定
Qiitaの方では参考サイトをそのまま貼ったけど、こっちではもう少し詳しく書く。リンク先が消(ry
アクセストークンの発行
LINE Notifyのページでログイン
https://notify-bot.line.me/ja/
右上からマイページへ移動し、トークンを発行ボタンを押下する。
トークン名と、通知先トークルームを選択して発行ボタンを押下。 ※先に「LINE Notify」とLINE上で友だちになっておき、通知に使いたいトークルームを作成しておくとスムーズ。
これでトークンが発行されるので、そのトークンを使って実装すればOK。
SORACOM LTE-M Button Plusの設定でハマったこと
SIM登録
デバイスが到着してまずやることとしてSIM登録をしろというのがあった。 言われたとおりにやろうとしたけど、そもそもSIMカードなんてもらってませんけど???となって焦った。
SORACOMのコンソールで登録済みのSIMのページを見たらどうやらすでに登録済みだった模様。なんでやねん。
配線
離れた時に “ON” (= SORACOM LTE-M Button Plus が動作)する組み合わせ
磁気センサー部の「灰」と「赤」のケーブルを SORACOM LTE-M Button と接続します。これにより、磁気センサーのセンサー部と磁石部が離れた時にセンサーが “ON” となります。
とあったのでその通りに配線してみたけど通知が飛ばず。
近づいた時に “ON” (= SORACOM LTE-M Button Plus が動作)する組み合わせ
磁気センサー部の「灰」と「白」のケーブルを SORACOM LTE-M Button と接続します。これにより、磁気センサーのセンサー部と磁石部が近づいた時にセンサーが “ON” となります。
まさかどっちかのケーブルが断線してる??と思い、試しに逆向きの配線にしてみたら通知が飛んだ。 ということはケーブルは全て生きてる・・・まさか!で「赤」「白」をつないだら通知が飛ぶようになった。 初期不良かドキュメントの間違いか・・・・いずれにしても焦らせやがってこのやろうと悪態をついていた
・・・
という記事を書いているところで気がついたのだけれど、
A: お手元のセンサー部のケーブル色が「赤・白・灰」における動作
B: お手元のセンサー部のケーブル色が「茶・白・灰」における動作
と、コードの組み合わせがそもそも2種類あった模様。そして手元にあるのは「茶・白・灰」のパターン。
B: お手元のセンサー部のケーブル色が「茶・白・灰」における動作
離れた時に “ON” (= SORACOM LTE-M Button Plus が動作)する組み合わせ
磁気センサー部の「茶」と「白」のケーブルを SORACOM LTE-M Button と接続します。これにより、磁気センサーのセンサー部と磁石部が離れた時にセンサーが “ON” となります。
仕様どおりだった。SORACOMさん申し訳ありませんでした。
まとめ
とりあえず運用開始してみたけどどうなるかな。
ポストの中にコードがむき出しで配置されているので、そのうち大きい荷物とか入れられたときに断線しそうな気はしている。
なんらかの対策をしないといけないな。