概要
あのボタンを購入しました!しかしプログラムが書けない私、、、そんな私でも
とりあえずボタン押したらLINEに通知することまでやってみた!
開封の儀ってやつですね。簡単な記事でお恥ずかしい。。。
下記のサイトを参考にさせていただきました。
1)SORACOM LTE-M Button powered by AWS をクリックしてSlackに通知する
https://dev.soracom.io/jp/start/aws_button_slack/
2)AWS IoT 1-Click サービスから LINE に連携するためのサンプル
https://github.com/j3tm0t0/1-click/tree/master/functions/line-bot_py
AWS IoTへ登録
手順通りに、AWS IoT 1-Clickに登録します。
ボタンのカバーを開けて電池2本を入れて、最初の1回目のボタンを押します。
ボタンを押してすぐには電波は飛ばないらしいです、
ネットワークの状況を確認してから緑色点灯すればデータが送信されている証拠。
こんな感じで緑色点灯を確認します。ドキドキ。。。
屋内だと結構赤色点灯してデータ送れないこともしばしばありますね。
データが送れるとAWS IoTにデバイスが登録されます。有効化して下記の状態にします。
SMSテスト
次もサイトの通り、携帯へSMSが通知できるかやってみます。
AWS IoT 1-Click のプロジェクトを作成します。
プロジェクト作成後に、プレイスメントの作成で設定を行い、ボタンを押してみます。
携帯にSMSが届きました!これだけでもだいぶうれしいw
SINGLE、と通知ありちゃんと1回押しを通知してくれています。
SORACOMへのガジェット登録
SORACOMコンソールでボタンを登録します。登録すると送っているデータなども見れて便利。
残りボタンのクリック回数とかもここでわかりますね。
LINE登録
さて、ここからは自分のLINEへ通知してみます。
こちらもサイトを参考にして作成していきます。
LINE Developersにログインして、Messaging APIを利用した新規チャンネルを作ります。
アクセストークン(ロングターム)や、Your user IDをコピーしておきます。
QRコードがあるので、LINEから読み込んで友達になります。
AWS IoTへコピペ
あとは、AWS側でLambdaで関数の作成を行います。
一から作成として、参考サイトの通り
名前(1-click_line-bot_py)、ランタイム(Python3.6)を選択して
適宜ロールの設定を行います。
あとは、関数コードのところにある元ソースを消して
参考サイトのコードをコピペしました。
次は、AWS IoT側でさきほどのSMSでテストしたプロジェクトを消して
今作ったLambda関数を呼び出すようなプロジェクトを作ります。
この時にアクセストークン(ロングターム)や、Your user IDの値をセットします。
できた!
では、いよいよボタンを押してみると。。。
きたーー!やっときた。。うれしい。。。
ちゃんと、1回押し、2回押し、長押しを認識しているようです。
バッテリーの残量も少しずつ少なくなっています。
まとめ
とりあえず、ここまでできました。
今後はみなさんの記事などを参考にデータの中身の確認や
プログラムを改修してみて違うメッセージを飛ばしてみるとか
少しずつやってきたいと思います。
参考サイトすばらしい!!ありがとうございました。