どーも!家のインターホンって、よく故障しますよね!(しない)
今回は、せっかく家のインターホンが故障したので、自作してみようと思います。
目次
やること:インターホンの自作
さて、インターホンの自作をしていくわけですが、完成形はこんな感じです。
ボタン押す
サーバー(ラズパイ)で受信
Slackで受信
まあ、ざっとこんな感じで、ボタン押したらSlackへ通知!というのを作っていきます!
必要なもの
今回のインターホンの自作に必要なものです。
- Raspberry Pi 3
- マイクロSD(16GB)
- Gravio(サーバー)
- Gravioレシーバー
- Gravioワイヤレスプッシュセンサー
- Slack
こんな感じです。Gravioはアステリア社のIoTエッジウェアで、月額500円でソフトウェアとセンサー4つ貸与してもらえます!安い!
ということで、初期費用6,000円(ラズパイ+SD)と月額500円というのが今回の費用です。まあ、ラズパイもGravioももちろん他のことにも使いますけどね!
セットアップ
ラズパイとGravioのセットアップは他の記事で書きます。
ラズパイのセットアップはここらへんを参考にしながらやってください。
「RaspberryPi3(STRETCH )のセットアップ OSのインストールからHello Worldまで」
とはいいつつ、僕の環境はSTRETCHではなく、Raspbian Stretch Liteなんですけどね。
SlackのWebhook URLを取得する
Gravioで用意されているコンポーネントでは、Slackのトークンを取得して、チャンネルを指定して、メッセージを送るようになっています。その方法は、下記の記事で紹介されています。
「Slackとワイヤレスボタンで「呼び出しシステム」を作ってみた!」
同じことがHTTP POSTコンポーネントでもできますので、今回はこちらでやりました。
この辺「Slack API 推奨Tokenについて」の記事を参考にしながら、WebhookのURLを取得します。
上の記事のスコープを「Incoming Webhooks」にすればWebhook用になります。アプリの管理画面から作ったアプリを選択すると下記の画面に移ります。
左にあるIncoming Webhooksを選択し、Activate Incoming WebhooksをOnにしておきます。作ったWebhookのURLはページをスクロールすると出てきます。
「Copy」を押してWebhook URLをコピーしておいてください~!
GravioのHTTP POSTコンポーネントのプロパティを設定する
それでは、Gravio側の設定に移っていきます。まあ、操作方法等は置いとくとして、、、こんな感じで設定します。
書いてある通りですが、URLには先ほどSlackのアプリ管理画面でコピーしたURLを貼り付けます、メソッドはPOST、Content-Typeはapplication/json、Bodyはこんな感じです。メンションしたいユーザーのIDの取得方法はこの辺を参考にしました。
「SlackのIncoming Webhooksでメンションを飛ばす方法」
こんな感じで設定できれば、あとはトリガーの設定をするだけで、インターホンの完成です!!
Gravioはこんな感じで楽しく遊べて、むっちゃ簡単に(実は、インストールとかは、まあ、結構手間取ったんですけどねw)家のカスタマイズとかができるので、わちゃわちゃ遊んでいこうと思います。tp-linkさんのスマートプラグと連携させてみた記事はこちら!