皆様、こんにちは!
今日は、Juniper MistのAPIを用いて特定のSSIDを無効化する操作を、iPhoneショートカットアプリを使用してする方法をご紹介します!難しいスクリプト作成などは不要。簡単なiPhoneの設定だけでAPIを叩けます。さらに、今回は「Siriを使って操作」するところまでご紹介したいと思います。
やりたいこと
iPhoneのショートカットアプリを使って、Juniper MistのAPIを直接叩きます。
目指すゴールはこちら:
- 指定したSSIDのON/OFF切り替え
- Siriに声で操作させる
準備するもの
- Juniper MistアカウントのAPI Token
-
Mist API エンドポイント
Mist API ドキュメントを参考に対象のAPIを調べます、今回はSSIDの有効化/無効化です -
iPhoneショートカットアプリ
iOS13からの標準アプリなのでインストール不要!
Mist API エンドポイントの確認
MistのSSIDをON/OFFするAPIをドキュメントから調査します:
Update Site Wlan - Mist API Reference
有効・無効の操作をするキー
キーの項目はこちらです:
site_idはSite Configuration中に表示されています。
wlan_idは各WLANの設定画面に表示されています。
このAPI エンドポイントにアクセスしてenabledの項目をtrueからfalseに変更することで、対象のSSIDが無効になります。有効化する場合は、その逆でfalseをtureに変更します。
iPhoneショートカットアプリの作成
iPhoneの標準アプリ「ショートカット」を使用します。
すべてのショートカット>右上の”+”を押下し、新しいショートカットを作成します。
検索ウインドウからurlで検索し、「URLの内容を取得」を選択します。
URLの部分をクリックして、対象となるAPI エンドポイントを入力します。
※ api.ac2.mist.comはGlobal03の例です、その他のMist リージョンとAPIの関連は以下ドキュメントをご参照ください。
方法(アクセスメソッド)の変更
今回は、値の変更を行いますので「GET」を「PUT」に変更します。
ヘッダの登録
2つのヘッダを登録します。
| キー | テキスト |
| Content-Type | application/json |
| Authorization | Token [アカウントのAPIトークン] |
本文(JSON)の登録
今回変更する項目はブール値ですので、ブール値で登録します。
項目名に「enabled」を入力。
今回は無効化なので「偽」で登録します。有効化したい場合は「真」で登録します。
ここまでで、登録は完了しました。
起動テスト
それでは動作テストをしてみましょう。
右下の青い再生ボタンをクリックします。
初回アクセス時は、許可が必要になります。
APIアクセスで失敗している場合は、エラーメッセージが表示されます。
ショートカット名の変更
ショートカット名が「URLの内容を取得」になっていますので、識別しやすい名称に変更します。ここで設定する名前で「Siri」でも操作することができます。
Siriで起動してみる
ちょっとわかりにくいですが、ショートカットの起動が完了しAPI経由でSSIDが無効化されました。
まとめ
今回は、単純なSSIDの無効化という方法をiPhoneからワンタップ or 音声でコントロールするサンプルをご紹介しました。Mist は全ての操作がAPI対応しておりますので、より複雑な操作ももちろん可能です。
更に、Apple watchとの連携やAndroid端末での操作も可能です。(Androidは標準アプリではない)
APIはちょっと敷居が高いなと思っていた方も、APIを身近に感じて頂けたらと思います。
それではまた次回