自動化アプリon{X}で交通情報通知レシピを作ってみたよ

うわ、夢中で作ってたらこんな時間だ!

スマートフォン

今日・・・じゃない、昨日、Microsoftからかなり面白そうなAndroidアプリが出ました!その名もon{X}
マイクロソフト、日常タスクを自動化するAndroidアプリ on{X} を公開。ウェブでルール作成 – Engadget Japanese

このアプリ、インストールしただけだと何も動きません。じゃあどうするかと言うと、PCでon{X}のサイトへ行き「レシピ」と呼ばれる小さなプログラムを選択します。そうすると自分の端末にそのプログラムがインストールされ、動き始めます・・・ってこう書いてもピンと来ませんね。

実際、どんなレシピ(機能)があるのかな?とサイトを覗いてみると——

  • もし気温が10℃以下になりそうなら、朝8時に天気予報を表示する。
  • 自宅を離れたら、牛乳を買うようにリマインダを出す。
  • 3日訪れていなかったらジムに行くよう通知。
  • ランニングを始めたら音楽アプリを起動。
  • 特定の誰かから「いまどこ」とSMSが来たら、自動で位置情報を返信。

…などなど。便利そうなのが揃ってますね!

実は、こういったレシピは自分で作ることができます。しかもjavascriptだけで。できあがったレシピはon{X}のサイトで公開することもできます(・∀・)!
※公開する場合、事前にMicrosoftのチェックをパスする必要があります

というわけで、自分もレシピを作ってみました!

レシピはこちら→ JPTransportChecker · GitHub

何をするレシピかというと、交通情報をチェックするレシピ

  • 指定した曜日(平日)、時間になったらジョルダンライブをチェック
  • 自分が利用する路線が載っていたら、こんな感じで通知する。↓
  • 通知をタップするとブラウザを起動してジョルダンサイトへ移動
  • 以後、10分おきにチェックする。
  • 予め決めた「チェック終了時間」になったらチェック解除。

ということを実行します。この機能欲しかったんですよ。

朝、起きてから家を出るまでに自動で交通情報をチェックして、何かあったら通知してくれる、というのは便利だと思いません(・∀・)?

このレシピを使ってみたいという物好きな方

使ってみたい、という方はGitHubに置いたスクリプトをコピペして、自分のレシピに追加して下さい。詳細設定(チェック開始時間など)はスクリプトの上部にまとめてあるので、どこを変えればいいかすぐ分かると思います。

既にMicrosoftには公開前のチェックをお願いしています。
それがパスすればわざわざコピペせずに使えるようになると思います・・・。

作った時にちょっと躓いたところ

  • HTMLを取得するのは簡単だけど、ページの文字コードがUTF-8以外だと文字化けする
  • スケジュールのセットができずにハマった。しかも原因がよく分からん…(device.scheduler.setTimer())
  • スケジュール解除をdocumentの例文のまま書いたら間違ってた!例にはdevice.scheduler.removeAlarm(‘hoge’);とあるけど、実際はdevice.scheduler.removeTimer(‘hoge’)

色々作れちゃいますね

この他にも作ってみたい機能は色々あります。

例えば、オフィスの緯度経度をセットしておいて、その日初めてオフィスに入ったら時間を自動で記録。オフィスから出たらまた時間記録。記録と同時にGoogleドキュメントのスプレッドシートにデータを飛ばせば、携帯持っているだけで勝手に勤務時間を計算、記録してくれるモノができますよね!

家から出たら自動でマナーモードにする、とかもやりたかったんですが、まだそこまでコントロールできない様子。残念。

Wifi自動オン/オフもまだできないっぽい。自分がよく行くWifiエリア(スタバとかマクドナルドとか職場とか家とか)を登録しておいて、その場所に着いたら自動でWifiオン、離れたらオフにする、ということもやりたいなー。

まだまだ機能アップしそう

on{X}はまだベータ段階、しかもバージョンは0.5。これからどんどん機能が増えていくと思うので超楽しみです。

Androidユーザーでjavascriptを書ける方、ゴリゴリレシピを増やしていきませんか?自分もどんどん公開していきまっす!

2012.06.11 追記 —-
基本的な使い方を書いてみました。よろしければそちらもどうぞ!
[タスク自動化アプリon{X}の使い方 (Androidアプリ・基本編)](https://zafiel.wingall.com/archives/3982)

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください