この便利ツール(Androidアプリ)は、v1.0.0ではYahoo!ショッピングのSMS認証で、スマホに受信された認証コードをBOTに連携するツールとして、Emperor AIOで使用するためにリリースしたものです。
名前は適当です。当初はGoogle Playに登録しようかと思い、分かりやすい名称ということで選んだものですが、当方の時間的余裕が全く無いので、Google Playからのインストールではない方法でインストールするやり方を採用しています。
野良アプリをインストールするやり方をググれば色々出てきます。
APK(Androidアプリ)は、https://zatturight.com/fastbot/products/detail/38 の下の方にダウンロードリンクがあります。
LAN環境以外でも利用できるようにするため、MQTTというプロトコルを使用することにしました。以下が便利ツールアプリ画面です。
便利ツールはMQTTのクライアント側で、サーバ(Broker)はPublic Freeなところを使用することを想定しています。
個人で使用する分には、有料になることがまず無い程のリソースが用意されている以下のサーバを使用することを前提に進めていきます。
https://www.emqx.com/ja/pricing
MQTTは、世界規格統一された通信プロトコルで、LINEやDiscordなどのチャットシステムで利用されています。
MQTTを簡単に説明すると、Publish アンド Subscribe モデルで動作するマシン間接続プロトコルです。
MQTT クライアントは、MQTT を使用して MQTT サーバーへのネットワーク接続を作成するプログラムまたはデバイスであり、 ブローカー とも呼ばれます。
通信が確立されると、クライアントはブローカーにメッセージを送信できるようになります。
他のクライアントは、クライアントから送信された特定のトピックに関する通知を購読できます。
Brokerとして今回利用させて頂くのが www.emqx.com 、SubscribeするだけのClientが便利ツールアプリ、PublishするだけのClientがチケットぴあ自動購入ツールとなります。
何をしたいのかというと、チケットぴあのログイン後にたまに電話認証になりますが、これを自動化したいというのが目的です。
Cloakでリストック監視を行っていると、1日に2~3回は遭遇します。手間でも認証を通しておけば、発生頻度は減ります(と思う)が、電話を掛けること自体が手間です。例え自動化させても、電話認証が出た段階で速度的に不利になることは間違いないので、電話認証が出たときは厳しいかもしれませんが、自動化によってストレスフリーになることをモチベーションとしています。
ただ残念なことに、便利ツールは着信時のときのように画面ロックを解除するような特別な権限は無いため、常に便利ツールを起動し続けなければPublisherからの通信データ(電話番号)を受け取ることができません。
常に起動し続けるためには、特殊な操作で開発者オプション画面をまず出して、スリープモードにしない設定にしたのち、常にUSB電源を繋げておく必要があります。開発者オプションの出し方は、ググれば出てきます。
スマホ側のセットアップが完了したら、次はBroker側の準備です。
https://cloud-intl.emqx.com/console/deployments/new
上記リンクから、無料開始ボタンを押して、アカウントを作ります。
個人情報を入力する欄がありますが、クレカは登録しなくても使用できます。
無料枠は個人利用としては使いきれない程の上限幅なのでクレカを登録する必要は無いでしょう。
アカウントを作成したら、ログインします。
https://cloud-intl.emqx.com/console/
Console画面に行くと、接続先が表示されているので、便利ツールの接続先に指定します。
左側の認証メニューから、ユーザを作成して、便利ツールのユーザとパスワードを指定します。
便利ツールアプリ側でConnectボタンを押して、接続されたら、動作確認をしてみましょう。
サーバ側Consoleメニューのオンラインデバッグを開きます。Connection Nameは適当で構いません。
Topicは、便利ツールのTopicと合わせる必要があります。tel:の後に電話番号を入れてPublishボタンを押してみてください。スマホが自動的に電話発信されたら成功です。
チケットぴあ自動購入ツールの対応後に続きを書きます。