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で動かしているビデオファイルの変換状況をプッシュ通知させたりしています。

参考リンク:

Mac: SmartSleep Ver. 3がMac App Storeで販売されている事に昨日気がつきました

以前、こちらのエントリーで紹介したSmartSleepという、MacのスリープとハイバネーションをコントロールするアプリがMac App Storeでリリースされている事に昨日気がつきました。たまたまシステム環境設定の中にあるサードパーティの項目を整理していた時、「もしかしてSmartSleepの新しいバージョンがあるのかな…?」と思って作者のホームページを見てみたところ、最新版がMac App Storeでリリースされている事を知りました。

従来は無料でダウンロード出来たのですが、Ver.3以降は450円でMac App Storeで販売されています。

バージョン3より以前のSmartSleepをインストールしている場合は、最新版をMac App Storeで購入する前に旧バージョンをアンインストールする必要があります。作者のホームページからアンインストール・ツールをダウンロードする事ができ、それを実行する事でシステム環境設定から旧バージョンを削除する事が出来ます。

2011年2月5日の時点ではバージョン 3.02 がリリースされており、Version 2の頃と比べると以下の新機能が追加されています。

  • QuickSleep – Macを選択した方法で即座にスリープさせる事が出来ます
  • SmartSleep Menu Item – Mac OS Xのメニューバーにアイコンを表示出来、現在の設定とQuickSleepの実行を行う事が出来ます
  • Insomnia – Macをスリープさせずに起こしておく事が出来ます

もちろんこの他にも様々な機能が搭載されており、MacBookシリーズの液晶画面を閉じた時にどの様な挙動をさせるかを選択する事が出来ます。Windowsと異なり、Mac OS Xは標準でスリープやハイバネーションのきめ細かい設定を変更出来ないため、このAppを使うと色々変更する事が出来てバッテリーライフを最大限に延ばしたり、SSDの寿命を考慮してハイバネーションを避ける様な設定も出来ます。

設定画面のスクリーンショットも載せてみました。Sleep Modeの設定は従来とほぼ変わっていない様です。システム環境設定から独立してアプリになった為、Mac起動時(ログイン時)にSmartSleepをバックグラウンドで実行する設定などが増えています。

Menu ItemのおかげでMacBookシリーズ以外のデスクトップiMacやMacMiniでも好きなときにSleepやHibernateへ移行する事が出来て便利になりました。

気になる方はチェックしてみてください。

参考リンク:

SmartSleep – 作者のホームページ

SmartSleep – Mac App Store

Mac: Mac OS XでウィンドウをWindowsの様に最大化

「Right Zoom」というMac OS X用アプリケーションの紹介です。

Mac OS XのインタフェースはWindowsの様にアプリケーションがウィンドウで表示され、各ウィンドウの左上に赤・黄・緑のボタンが並んでいます。システム環境設定を変更していると色やスタイルは違うかもしれませんが、それぞれ「閉じる」「最小化」「最大化」。

PCからMacに移行してからずっと気になっていたのが「最大化」ボタンの挙動。Windowsの場合はそのウィンドウを画面の表示域最大に広げて(タスクバーの設定にもよりますが)表示してくれるのですが、Mac OS Xの最大化ボタンは作業中のウィンドウの縦は最大になるものの、横はウィンドウの中に表示されている内容にあわせた最大幅になるのみ。

ほとんどの時間は一つのウィンドウを操作しているのだから、その作業中のウィンドウがメニューバーを除いた全ての領域に表示できたら…と思いながらMacを使い続けていました。ところがつい先日のBack to the MacでのMac OS X Lion先行告知を見ながら、やっぱりウィンドウを表示可能な領域最大に広げたいと感じる様になり、調べてみたところ「Right Zoom」というフリーソフトを知りました。

Changes the default behavior of the green window zoom button. とサブタイトルがついている通り、緑色の最大化ボタンの挙動を変更してくれるソフトウェアです。という事で、ちょっと説明してみます。

ダウンロードとインストール

こちらのサイトの「Download Now」をクリックしてファイルをダウンロードし、解凍されたファイル「Right Zoom」をアプリケーションフォルダにコピーします。

起動と設定

アプリケーションフォルダに入っている「Right Zoom」をダブルクリックして起動すると、設定画面が表示されます。

設定は「General」と「Applications」の2画面です。

インストールして起動するとすぐに有効になるので、緑色のボタンがWindowsの様な「最大化」の挙動をするようになります。デフォルトの設定では [alt] + [cmd] + [E] のホットキーが有効になっており、対象のウィンドウを操作中にそのホットキーを押すと最大化する事も出来ます。もちろん、組み合わせを設定画面で変更できます。

ただし、全てのアプリケーションに対して有効ではなく、画面の最大表示領域まで拡大されてないものもあります。デフォルトの設定ではRight Zoomを有効にするアプリケーションが限定されていて、「Applications」の画面で選択されているアプリケーションでのみ最大化の挙動をします。

設定を変更する事で、特定のアプリケーションを除いて全てのウィンドウに対して最大化を有効に出来ますので、まずは全部有効にしておき、問題があるアプリケーションだけを除外するという使い方もありそうです。

設定を変更した場合はウィンドウの下部にある「Apply」で適用、「Close」でウィンドウを閉じる事が出来ます。もちろん閉じた後でも最大化は有効になっています。

一度閉じてしまうとDockやメニューバーへアイコンは表示されません。再度設定を変更する場合は [cmd] キーを押しながらアプリケーションフォルダ内にある「Right Zoom」をダブルクリックします。[cmd]キーを押さずにダブルクリックしてもアプリケーションウィンドウが表示されません。

「Right Zoom」が有効に設定されると[システム環境設定]-[アカウント]-[ログイン項目]にRight Zoomが追加され、Mac起動時(もしくはログイン時)に自動的に起動する様になっています。ただし、設定画面が表示される事はなく、裏で動作して最大化ボタンの挙動を変えてくれています。

動作確認

適当なホームページをSafariで開いて試してみました。


最大化していないSafariのウィンドウ。


Right Zoomを無効にして「最大化」ボタンをクリックした結果。
ウィンドウの横が画面いっぱいにはならず。


Right Zoomを有効にして「最大化」ボタンをクリックした結果。
ウィンドウの横幅が画面いっぱいになりました。

既に多くのMacユーザーの方がご存知のアプリケーションの様ですが、見つけて嬉しくなったので紹介してみました。参考になれば幸いです。