iPhone/iPad: BoxcarとGrowlを使ってMacからiPhone/iPadへメッセージをPush通知

iPhoneやiPadにインストールされているiOSはバージョン3.0からプッシュ通知という機能が搭載されており、アプリによってニュースやTwitterのmention、メールの着信通知などを行う事が出来ます。なかなか便利な機能なのですが、当然それらはアプリによって通知されてくる内容やタイミングがコントロールされています。そこで、BoxcarというiPhone/iPad Appと、GrowlというMac Appを使うと、AppleScriptを使って好きなタイミングに好きなメッセージをMacからiPhone/iPadへPush通知する事が出来ます。紹介してみます。

[必要な物]

今回紹介する方法で必要な物は…

  • iOS 3.0以降がインストールされ、ネットワークに接続されているiPhoneかiPad。
  • Mac。こちらもネットワークに接続されている必要有り。
  • Mac OS X Leopard以降(たぶん)。

です。

[iPhone/iPadの準備]

App StoreからBoxcarをインストールします。iTunes/App Storeへのリンクはこちら

広告が表示されますが、無料で入手出来るAppです。

インストール後に起動し、新たにサインアップするか、Boxcarのアカウントを持っていればサインインしてBoxcarを使える状態にします。

そもそもBoxcarはMacからのPush Notificationのみではなく、様々なサービスをプッシュ通知してくれるアプリです。例えば予め設定しておいたFacebookアカウント、Twitterアカウント、Emailアカウントを監視してお知らせしてくれます。今回、MacからのPush Notificationを受け取る為にGrowlサービスを利用します。

Boxcarへサインインするとメッセージの一覧もしくはサービス追加の画面になるので、追加ボタンをタップしてリストの一番下にあるGrowlを追加します。

Growlサービスの追加は、単純にサービスのリストからGrowlをタップしてプッシュ通知を受け取った時のサウンドやアラーム、バッジのアップデートをするかどうか設定してSaveをタップするだけです。

これでiPhone/iPad側の準備は完了です。

[Mac側の準備 その1 – Growlとプラグインのインストール]

MacにはGrowlをインストールします。

GrowlはこちらのURLからダウロードでき、ダウンロードしたインストーラーをダブルクリックしてMacへインストールします。

インストールするとシステム環境設定にアイコンが増えます。クリックしてGrowlが起動している事を確認しておき、一旦閉じます。

次に、Growl用のBoxcarプラグインをこちらのBoxcar Webサイトからダウンロードします。ダウンロードしたZIPに含まれる「Boxcar.growlView」をダブルクリックすると確認メッセージが表示されるので、インストールします。

すると、先ほどのGrowlシステム環境設定の「表示オプション」の「表示スタイル」リストにBoxcarが追加されます。

Boxcar表示スタイルをクリックすると右側にBoxcarにサインアップした時のE-mailアドレスとパスワードの欄が表示されるので、入力して Verify Login をクリックします。正しい情報を入力すると、Verify Loginの右側に「Great!」と表示され、正常に認証出来た事が分かります。

この時点で、右下にある「プレビュー」ボタンをクリックするとiPhone/iPadにメッセージがプッシュ通知されるはずです。

[Mac側の準備 その2 – AppleScriptを使ってGrowlを操作]

AppleScriptエディタを起動します。標準でアプリケーションフォルダ中のユーティリティフォルダに入っています。

初回のみ、GrowlにBoxcarへのプッシュ通知する為のアプリケーションを登録する必要があるので、以下の様なスクリプトを実行します。

tell application “GrowlHelperApp”

— Growlに登録する為のコマンド
— 一度実行し、Growlのアプリケーションリストで有効化する。
register as application “Boxcar Notification” all notifications {“MacBook Air“} default notifications {“MacBook Air“} icon of application “Script Editor”

end tell

緑色の部分は適宜変更してください。特に変更せずこのままでも問題はありません。一度このスクリプトを実行すると、Growlシステム環境設定の「アプリケーション」リストに「Boxcar Notification」が追加されているはずです。(システム環境設定を開いたままAppleScriptを実行した場合は一度閉じて開き直します)

リストから今追加された「Boxcar Notification」を選択し、設定…ボタンをクリックします。

設定を変更すべきポイントがいくつかあります。

まず「アプリケーションの表示スタイル」をBoxcarへ変更します。

次に、通知のタブで「有効」にチェックを入れます。

やっと準備完了です。

[MacからPush通知]

いよいよ最終段階です。

AppleScriptエディタで次の様なスクリプトを実行します。

Growlへ登録したアプリケーション名、通知名は緑色のテキストで示しました。これらは準備段階で登録した文字列に合わせる必要があります。そして、赤色のテキストで示した箇所がiPhone/iPadへプッシュされるタイトルとメッセージになります。

tell application “GrowlHelperApp”

— 上の登録と有効化がされていれば通知は以下のコマンドで可能になる。
notify with name “MacBook Air” title “Test Notification” description “This is a test notification from MacBook Air.” application name “Boxcar Notification

end tell

このスクリプトを実行すると次の様にiPhone/iPadへBoxcarからのプッシュ通知が表示されます。もちろん、日本語の通知もOKです。

何らかの処理を行うAppleScriptに埋め込む事で、その処理の進捗状況や結果をiPhone/iPadへ通知して外出中に知る事も出来そうです。ウチはこの方法を用いて、Crontabで動かしているビデオファイルの変換状況をプッシュ通知させたりしています。

参考リンク:

iPhone App: Boxcar – Growl API Pushが不調。

数多くインストールしているiPhone Appの中で、考えてみると一番使われているかもしれないBoxcar。様々な情報をPushしてくれる便利なAppです。特にGrowlを使う事でMacのApple Scriptで作業の処理結果をiPhoneへ通知できるのは大変便利です。ウチもMac Miniのテレビ録画予約成功や番組録画開始のタイミングでPush Notificationしています。

この縁の下の力持ち的なBoxcar + GrowlのPushが気がついたら通知されていない。ほぼ毎日番組の録画を行っているにもかかわらず数日間、全く通知されてこなかったのです。

通知されなくなったタイミングは、iPhone 3GSをiOS 4.0へバージョンアップしたときの様な気がします。その後iPhone 4になってからも通知されていない状況。

早速トラブルシューティング。

  1. まずiPhoneにインストールされているBoxcarが最新かどうか。このエントリーを書いている時点での最新バージョンは3.0.1でiOS 4テスト済みになっています。
  2. 次にMac側からテスト通知を送ってみます。
    [システム環境設定] – [Growl] を開き 表示オプション のタブで “表示スタイル”をBoxcarにしてプレビューを押してみます。

    これでもプッシュされてこなかった為、同じGrowlの画面で「Check for Updates」と「Verify Login」を実行。Boxcar GrowlはV.1.2が入っていましたが最新はV.1.4の様で、バージョンアップを促されたのでインストール。Verify Loginは問題なく’Great!’と表示され、ログイン情報が正しい事が確認できました。
  3. Mac側のBoxcar GrowlをV.1.4へバージョンアップ後もPush通知されてこない為、再びiPhone側。
    一旦Boxcarに設定されているGrowlサービスを削除して、追加しなおす事にしました。
    Growlサービスを開いて Delete Service、確認メッセージでDelete It、再度追加。もちろん、通知音やBadge Updateの設定がデフォルトに戻ってしまうので適宜設定が必要です。
  4. そして再度Mac側からプレビューのテスト通知。
    次の瞬間「ピロリ〜ん!」とiPhoneが鳴り、ちゃんと通知されてきました!直りました。

結論としては

  • iPhone側: BoxcarのGrowlサービスを削除、追加し直し。
  • Mac側: 気がつかないうちにGrowlのBoxcar Pluginはバージョンアップしている事判明。

iPhone 4へ機種変更後やiOS 4.0へバージョンアップ後にBoxcarのGrowl Push Notificationが不調になった方の参考になればと思います。

iPhone App: BoxcarでWWDC 2010を楽しむ?

先日Version 3.0がリリースされて、昨日(2010/06/07)にウチのブログでも紹介したBoxcar。

TwitterやFacebook等、色々な情報をPushしてもらうのに大活躍していますが、今日何気なくServiceの追加画面を見ていたら「MacRumors Live」というサービスが表示されている事に気がつきました。

MacRumorsといえばApple関連の様々な情報を提供しているサイトの一つ。Boxcar Serviceの説明文には「Live notifications for WWDC on June 7th!」と記載されているので、日本時間2010年6月8日午前2時頃から始まるWWDCの情報をライブでiPhoneにプッシュ通知してくれるサービスの様です。

さすがに起きているつもりは無いし(起きているなら普通にその手のサイトを監視していた方が多くの情報が入手出来るし)、夜間にiPhoneがピヨピヨ鳴ると落ち着いて眠れないのでBoxcarのQuiet Time設定で静かにさせているのですが、せっかく見つけたのでサービスに追加してみました。

明日の朝になってBoxcarのInboxを見るのが楽しみです。

iPhone App: Boxcar Ver.3.0

先週は多忙でblogの更新が滞ってばかりでしたが、今日久しぶりにiPhoneのApp StoreとiTunesを除いてみたら、Push NotificationでTwitterやfacebook、Growlの情報をiPhoneへ通知出来るBoxcarがバージョン3.0になっていました。

変更内容は次の通り:

  • Revamped Inbox. サービス毎にInboxが分類され、通知はそのサービス名をタップすると見れる様に変更されています。
  • All services are now free. これはちょっと驚きですが、今までアプリ内課金で有料だったサービスの追加が全て無料に。
  • Universal Binary for iPad. そのままですが、iPadでも動作する様になりました。
  • Ability to delete notifications. Inboxの通知を削除出来る様になりました。とはいえ、サービス毎の削除なので、例えばGrowl通知で届いた一つのnotifiationだけを削除するといった事は出来ない様です。
  • Added 5 new sounds. 通知サウンドが5つ追加されました。追加されたのはCash, Cell, Incoming, Navigate, Wokwakという名称のサウンドで、ついでにサウンドリストの並び順が改善されています。

ということで、早速サービス追加画面を比較してみました。左2枚が旧バージョンのV.2.5でサービスを追加しようとした時の画面。右2枚はV.3.0です。各サービス毎に設定されていた価格が無くなり、無料で追加出来る様になっています。

早速、有料だったので躊躇していたFacebook Accountを設定してみましたが、App内課金の為のパスワード入力も無く無事に追加出来ました。

メニューの構造も少し変わっており、通知一覧が表示されるInboxはメニューの1つではなく、アプリの主画面になっています。従来は設定変更は親メニューに戻るイメージでしたが、V.3.0になってSettingsボタンが追加されています。

設定画面で気になったのは「Turn Off Advertising」のメニュー。サービス毎の課金を止めたかわりに広告が表示される様になった模様。実はまだ表示された事が無いのでどのようなタイプの広告か分かりませんが、JPY600円で広告表示を無効に出来る様です。

アプリ自体のアップグレードは無料で、iTunesかApp Storeから出来ます。今のところV.3.0になっても安定しています。