URoad AeroをPythonから制御して快適に!(sl4a/Android対応)

外出先で威力を発揮するモバイルルーター。

僕はUQ Wimax / シンセイコーポレーションの「URoad Aero」を使用しています。

この商品(他のモバイルルーターの多く)をコントロールするには接続したPCやスマホのブラウザから管理画面を表示して操作する、専用のアプリケーションをインストールして使用するといった方法を取らなければいけません。

大した手間ではありませんが、より快適&素早く操作できたら便利だよなーと思い管理画面のソースを見てみると単にHTTP通信で制御してるみたい。

ということは、Pythonでルーターに直接HTTP/POST通信を行いコントロールできる!ということです。

以下はPython2.6で再起動するPOSTを投げるコード。

import urllib2

host = "http://[ルーターのLAN側IPアドレス]"

auth_handler = urllib2.HTTPBasicAuthHandler()
auth_handler.add_password('URoad-Aero Web', host, [ユーザー], [パスワード])

opener = urllib2.build_opener(auth_handler)
urllib2.install_opener(opener)

urllib2.urlopen(host + '/goform/reboot_system')

※ ルーターのLAN側IPアドレスは デフォルトでは”192.168.100.254″
※ ユーザー、パスワード共にデフォルトでは”admin”

こんなかんじで

  1. Basic認証を通過して(6行目)
  2. 特定のURLにPOSTする(11行目)

とURLに応じて様々な制御が可能。

ちょっと見てみた感じでは、

  1. 「/goform/deep_sleep」 → スリープ
  2. 「/goform/pwoff」 → シャットダウン

ってのがありました。
管理画面から操作できる設定や動作がすべてスクリプトから行えるっぽいです。

発展形としては、ポートフォワーディング設定の有効・無効の切り替えとかいろいろできそうです。

urllib2が動くならどんな環境でも使用可能。

sl4a/AndroidのPythonでも実行可能です。
僕はホーム画面にショートカットを置いて使用しています。便利。

広告

t87r について

趣味:トランペット・釣り・コーディング JavascriptとGAE/Pythonを勉強中。
カテゴリー: Tips タグ: , , パーマリンク

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中