Node-REDで検証中に家のビーコンが多いなと思ったら自分のMAMORIOだったメモです。今後も忘れてると気になってしまいそうなのでメモしておきます。
普段MAMORIOは愛用してるので、特に困ったということもなく、気付きとして書いておきます!
ビーコン検証中だった
最近、BLE関連で制作のお手伝いすることも多く、家でビーコンを確かめることも多い状況です。
その場合にはじめに「機器がしっかり動いてビーコンを発してるか?」を検証する必要があり、よくやるのが、以前のこの記事
- 自己発電+BLE Beacon 床スイッチ Smart Mat SwitchのデータをNode-REDで読み取ったメモ – 1ft-seabass.jp.MEMO
- 自己発電+BLE BeaconスイッチのSmart Button SwitchをRaspberry Pi Node-REDでBLE受信してみたメモ – 1ft-seabass.jp.MEMO
の、Node-REDの node-red-contrib-bleacon のノードを利用して確認する方法です。
検証中に家のビーコンが多いなと思った
さて、検証中にきづいたことが。
最近はビーコンもカジュアルに飛んでいる時代なのであまり気にしなかったのですが、それにしても、まるで家の中でビーコンが余計な数で発生しているようにみえるんですね。
たとえばのシチュエーションで言うと「Aというビーコン機器を検証後にオフにしたのにも関わらず、なにかもう1つビーコンが家の中でバシバシ発生させている?」という感じです。
勉強がてらそのビーコンをUUID探る
今までは、狙いを定めたビーコンを仕様書を読んでその時だけUUID気にする形が多く気にしてなかったのですが、これは勉強ということで、UUIDから逆引きで探ってみるということをしてみます。
Node-REDのフローはいつものこれ。
[{"id":"1e2090d9.a0071f","type":"inject","z":"b312b94a.8300e8","name":"scan start","topic":"","payload":"on","payloadType":"str","repeat":"","crontab":"","once":false,"x":296,"y":477,"wires":[["a2b28c95.a0098"]]},{"id":"c96372ce.d9b2f","type":"inject","z":"b312b94a.8300e8","name":"scan stop","topic":"","payload":"{\"scan\":\"off\"}","payloadType":"json","repeat":"","crontab":"","once":false,"x":296,"y":548,"wires":[["a2b28c95.a0098"]]},{"id":"a2b28c95.a0098","type":"scanBeacon","z":"b312b94a.8300e8","name":"","beacon_uuid":"","beacon_major":"","beacon_minor":"","x":471,"y":515,"wires":[["b40d8646.384bc8"]]},{"id":"b40d8646.384bc8","type":"json","z":"b312b94a.8300e8","name":"","pretty":false,"x":636,"y":518,"wires":[["467ea09c.17e4c"]]},{"id":"467ea09c.17e4c","type":"debug","z":"b312b94a.8300e8","name":"","active":true,"console":"false","complete":"false","x":821,"y":519,"wires":[]}]
JSONフローです。
そして捉えました。
どうも、UUIDが「b9407f30f5f8466eaff925556b57fe6e」のようです。
そうそう、これがいつも残ってて気になっていたのです。
早速UUIDで調べてみる
早速UUIDで調べてみたいということで、まずGoogleで検索してみました。
そのままの記事が出てきましたね。
そうか!MAMORIOさんか!!2つ持ってる!!!!
それを元にUUIDらしく「b9407f30-f5f8-466e-aff9-25556b57fe6e」と区切りハイフンを入れてやると、より精度の高い記事が出てきました。
それがこちらです。
MAMORIOが届いたので解析したかった – もみあげあしめ
なるほど。すでに、みなさん検証されてる。アタリですね。
ということで、ついにうちの家にも常駐しているビーコンが居たということで、次世代来た(?)という感じです。
Node-REDであえて除くときはどうするか
すでに分かったので、いつもの「狙いを定めたビーコンを仕様書を読んでその時だけUUID気にする」という手法なら、意識の中で無視すればいいいので問題ないのですが、Node-REDであえて除くときはどうするかということをまとめておきましょう。
このようにフローを組みます。
追加でMAMORIO除外というスイッチノードがあります。
詳細の設定は、以下のとおりです。
- プロパティ
- payload.uuid
- スイッチ1行目
- 判定
- !=
- 判定値
- 文字列
- b9407f30f5f8466eaff925556b57fe6e
- 判定
これで、あえて除外するなら、対応ができます。もちろん == で判定すれば、MAMORIOだけみることも出来ますので、状況によっては応用の幅が広がりそうですね。
ということで、自分自身が今後も忘れてると、また「このビーコンは何だ!?」と気になってしまいそうなのでメモしておきます。
それでは、よき Node-RED & MAMORIO Life を!