LTE-M Button管理にはQRコード
はじめに
SORACOM LTE-M Button powered by AWS Advent Calendar 2018 - Qiita
の5日目です。
あのボタンとは
SORACOM LTE-M Button powered by AWS - SORACOM
さっき開けて電池をいれました。
オイコラ、( ゚Д゚)ドルァ!!
登録から初期設定は
2018/12/02のアドカレを参考にしました。
SORACOM LTE-M Button powered by AWS 「ご購入、利用開始方法」のチュートリアル #SORACOM – サーバーワークスエンジニアブログ
ボタンで何をするか?
そもそも何ができるの?
AWS IoT エンタープライズボタン ユーザーガイド - AWS IoT 1-Click
- シングルクリック
- ダブルクリック
- 長押し
の3種類のみです。
3種類でどうするか?
長押しをキャンセルとすると2つしかありません。
ここは悩みどころですね。
さて今回何をやるのか
例:オフィスビル内数箇所に設置されたゴミ箱の回収時期を発見者がボタンを1回押すことで通知、作業員の到着を作業者が2回押すことで通知というシステム
とありますので、必要なものは
どのボタンが
どう押されたか
です。シンプルですが、難しいところでもあります。
JAWS FESTA 2018 OSAKA | 世界一早い(?)「SORACOM LTE-M Button powered by AWS」…
であったように、カオスになります。
そこで今回は、デバイスごとにQRを生成したいと思います。
準備
QRを生成する環境は、Macでやります。
[f_prg@Documents] $ brew install qrencode
デバイス情報を取得する
AWS CLIで取得します。
[f_prg@Documents] $ aws --region=us-east-1 iot1click-devices list-devices
Could not connect to the endpoint URL: "https://devices.iot1click.us-east-1.amazonaws.com/devices"
ほうほう。。。
AWS のリージョンとエンドポイント - アマゾン ウェブ サービス
リージョン名 | リージョン | エンドポイント | プロトコル |
---|---|---|---|
米国西部 (オレゴン) | us-west-2 | devices.iot1click.us-west-2.amazonaws.com | HTTPS |
[f_prg@Documents] $ aws --region=us-west-2 iot1click-devices list-devices
{
"Devices": [
{
"Attributes": {
"projectName": "anodebug",
"projectRegion": "us-east-1",
"placementName": "anodebug",
"deviceTemplateName": "anobutton"
},
"Type": "button",
"Enabled": true,
"DeviceId": "SSSSSSSSSSSSS",
"RemainingLife": 98.5
},
{
"Attributes": {
"projectName": "soracom-lte-m-button",
"projectRegion": "us-east-1",
"placementName": "soracom-lte-m-button",
"deviceTemplateName": "soracom-lte-m-button"
},
"Type": "button",
"Enabled": true,
"DeviceId": "QRDEVICEID",
"RemainingLife": 99.86666666666667
}
]
}
[f_prg@Documents] $ aws --region=us-west-2 iot1click-devices describe-device --device-id QRDEVICEID
{
"DeviceDescription": {
"Attributes": {
"projectName": "soracom-lte-m-button",
"projectRegion": "us-east-1",
"placementName": "soracom-lte-m-button",
"deviceTemplateName": "soracom-lte-m-button"
},
"Type": "button",
"Enabled": true,
"DeviceId": "QRDEVICEID",
"RemainingLife": 99.86666666666667
}
}
AWS CLIでフィルタできないので、jqで絞り込びます。
上記で例に挙げた
オフィスビル内数箇所に設置されたゴミ箱の回収時期
に対して
デバイスのプロジェクト名soracom-lte-m-button
が
ボタンで何をするのか
という想定です。
[f_prg@Documents] $ aws --region=us-west-2 iot1click-devices describe-device --device-id QRDEVICEID |jq -r '.|if .DeviceDescription.Attributes.projectName == "soracom-lte-m-button" then .DeviceDescription.DeviceId else empty end'
"QRDEVICEID"
デバイスIDから、QRを生成します。(管理上、デバイスIDのままでいいかどうかは割愛します。)
qrencode -o QRDEVICEID.png -t PNG QRDEVICEID
となります。
最後に
今回はデバイスを管理する際に、必要そうなことを書いてみました。
QRと文字を一緒にしたり、
テプラとか連結してみたいけど、どっかに方法はあるはずかと。
ではでは。
Author And Source
この問題について(LTE-M Button管理にはQRコード), 我々は、より多くの情報をここで見つけました https://qiita.com/f_prg/items/de464d1df7ad58869e93著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .