ck_fm0211のブログ

書きたいことを書く。

郵便受けに投函されたらSlack/LINEに通知してみた[Qiita補足]

タイトルの通り。Qiitaを書いたのでその補足とか。

qiita.com

利用サービス

お金回りとかをちょっとまとめてみる。

分類 サービス名 月額料金 資料
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に上げた。

github.com

環境変数で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登録

soracom.github.io

バイスが到着してまずやることとしてSIM登録をしろというのがあった。 言われたとおりにやろうとしたけど、そもそもSIMカードなんてもらってませんけど???となって焦った。

SORACOMのコンソールで登録済みのSIMのページを見たらどうやらすでに登録済みだった模様。なんでやねん。

配線

soracom.jp

離れた時に “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さん申し訳ありませんでした。

まとめ

とりあえず運用開始してみたけどどうなるかな。
ポストの中にコードがむき出しで配置されているので、そのうち大きい荷物とか入れられたときに断線しそうな気はしている。 なんらかの対策をしないといけないな。