見出し画像

(iPhoneユーザー向け)Amazfit bipをスマートボタン(IoTボタン)にする方法

はじめに

スマートウォッチであるAmazfit bipが、スマートボタン(IoTボタン)にする方法を紹介します。

この方法を活用することで、時計のボタンを押すだけで、色々なことができるようになり、ただでさえコスパ最高なAmazfit bipがさらに進化します。

背景

やったことをカウントしたいと思ったけど、実行しようとすると案外大変です。数取器とかあるけど、いつも持ち歩きたくないしと何か良い方法ないかと考えていました。

その対応として、NFCタグを時計のバンドに貼り付けて、NFCタグにiPhoneをかざすのを契機にカウントするというのをやってましたが、もっとスマートにできる方法はないかと考えた次第です。

まさか、Amazfit bipでこんなことができるなんてと思い、公開しました。

やったこと

Google Apps Script(GAS)を使って、http get要求が来たらカウントするアプリケーションを作成します。ここでは具体的な説明は省略しますが、以下を参考にやりました。

カウントする仕組みは自分で考えて実装してます(get要求が来るたび、特定セルの値を+1ずつするだけ)。また、アプリケーションにアクセスできるユーザを「自分だけ」から「全員(匿名ユーザーを含む)」にしております。

GAS側の作業は以上で、次にiPhoneにAmazToolsをインストールします。AmazToolsではウォッチフェイスの変更等さまざまな機能がありますが、ここではMore > Custom Triggerと選択していって、作成したGASのURLを設定します。

設定方法(AmazTools側)

AmazToolsのCustom Triggerには以下のように設定しました。

ここでは2回ボタンを押すという設定ですが、1回〜5回それぞれで設定することができます。

URLにGASのURLを設定し > Enabeled > Save

最後に右上のStartをタップすれば、バックグラウンドで動作し始めるので、あとはAmazfit bipのボタンを押せばGASにgetリクエストが飛ぶようになってます。

画像1

設定方法(GAS側の備考)

GAS側でget要求に対してレスポンスを送るようにすると、そのレスポンスの受信したことによりAmazfit bipが振動してくれますので、フィードバック(振動)の有無でボタンが押せたかやAmazToolsやサーバ等が停止していないかわかるようになります。

(2021/2/11追記)レスポンスを返すようにしてもAmazfit bipが振動しないケースがあることがわかりました。そのため、Amazfit bipの振動はレスポンスと関係ない可能性が高いです。なにを契機に振動しているのかご存知の方いたら教えていただけますと幸いです。

なお、GASでレスポンスを送るには以下のように記載します。

function doGet(e) {
 // get要求受信した際(Amazfit bipのボタンを押したとき)の処理を記載
 
 
 // レスポンスを返す
 var res = ContentService.createTextOutput();
 return res
}

終わりに

iPhoneではなくAndroidを利用していたり、Amazfit bipでなくApple Watchを利用していたら違ったやり方でもっと簡単にできるのかもしれませんが、ここではAmazfit bipのボタンをGoogle Apps Script(GAS)の契機にする方法を紹介しました。

Amazfit bipのボタンでGASを叩けるというのがポイントですので、カウントするという方法以外にも色々な応用ができると思います。

なお、Custom TriggerにはURLが設定できるので、URLスキームを登録することもできるのですが、残念ながらスリープ状態では動作してくれないです。

注意事項としては、AmazToolsが落ちている時があるのと、AmazToolsがAmazfit bipの後継機種であるAmazfit bip S等、他の機種でも動作するのか確認していませんので、ご注意ください。

もし、この機種でも動作できますよとか、こういう便利な使い方もできますよというのがあれば教えて頂けると嬉しいです。



この記事が気に入ったらサポートをしてみませんか?