読者です 読者をやめる 読者になる 読者になる

CGメソッド

CG制作に関してのヒント

MENU

【Amazon Dash Button】ボタンを押すとLineにメッセージ投稿する方法

iot、おうちハック第一弾。

玄関に設置したAmazon Dash Buttonを押すとLineに帰宅をメッセージを投稿できるようにしてみました。

Raspberry Pi(サーバー)とIFTTT(アプリ)を使用しています。

Amazon Dash Buttonの設定

Amazon Dash Buttonの購入

プライム会員しか購入できません。今回のために1ヶ月無料のプライム会員に。

evian Dash Button

Amazon Dash Buttonの設定

f:id:min0124:20170503191713p:plain

amazonアプリを携帯にインストール

あとはメニュー>アカウントサービス>Dash端末>新しい端末をセットアップからガイドに従う。

商品を選択するところで、終了します。

Raspberry Piの設定

ターミナルを起動

gitのインストール

sudo apt-get install git-core

nvmのインストール

git clone https://github.com/creationix/nvm.git ~/.nvm
$ source ~/.nvm/nvm.sh

Node.jsのインストール

下記から最新バージョン調べて、インストール

$ nvm install v6.10.3

npmのインストール

$ sudo apt-get install npm

参考

Dasherの設定

インストール

まずはこちらのドキュメントを確認することを推奨します!

sudo apt-get install libpcap-dev
sudo apt-get install npm
git clone https://github.com/maddox/dasher.git
cd dasher
npm install

Amazon Dash ButtonのMacアドレスを調べる

script/find_button

sudo ./script/find_buttonと書いてある記事が多いのですが、上記のコマンドで上手く行きました。

※FingというアプリでもMacアドレスを調べることができます。

Slackに投稿

先にSlackにてテストしてみます。

config.jsonの作成

config.jsonというファイルを作成。

config.jsonに記述

addressはAmazon Dash ButtonのMacアドレス

urlはSlackのメッセージ送信用URL、取得は下記のURLから

{"buttons":[
  {
    "name" : "slack",
    "address": "xx:xx:xx:xx:xx:xx",
    "url": "https://hooks.slack.com/services/{KEY}",
    "method": "POST",
    "json": true,
    "body": {"text":"テスト!"}
  }
]}

npmを起動

npmを起動します。

エラーが出る場合は、config.jsonのコードを疑ってみてください。

cd dasher
sudo npm run start

Amazon Dash Buttonボタンを押してslackに投稿

slackに投稿されているのを確認します。

IFTTTの設定

IFTTTを使ってLineに投稿できるようにします。

Maker WebhooksとLINEをコネクト

f:id:min0124:20170503195722p:plain

f:id:min0124:20170503202258p:plain

New Applet

New Appletを選択、thisを Maker Webhooks、thatをLINEにして作成

f:id:min0124:20170503200045p:plain

投稿URLの確認

Maker Webhooksに載っているURLへ飛び、投稿URLを確認。

f:id:min0124:20170503200527p:plain

Lineに投稿

Line用にconfig.jsonを記述

config.jsonを下記のように記述

※urlには投稿URLを記入(途中イベント名も記述します)

{"buttons":[
  {
    "name": "send_line_message",
    "address": "XX:XX:XX:XX:XX:XX",
    "url": "https://maker.ifttt.com/trigger/send_line_message/with/key/{KEY}",
    "method": "POST",
  }
]}

※参考の記事通りにするとエラーが出たので、必要最低限にしました。(これに気がつくのに時間がかかりました><)

npmを起動

npmを起動します。

エラーが出る場合は、config.jsonのコードを疑ってみてください。

cd dasher
sudo npm run start

Amazon Dash Buttonボタンを押してlineに投稿

f:id:min0124:20170503200908p:plain