この記事はVOYAGE GROUP エンジニアブログ : Advent Calendar 2012の20日目である。特にテーマは何でも良いそうなので、Mac OS X Mountain Lionで追加された通知センターについて。
VOYAGE GROUPではグループウェアにサイボウズガルーン3を使っている。このサイボウズガルーン3、不便な事にMac用のリマインダークライアントが提供されていない。そこで、ミーティングをすっぽかさないためにもMacユーザーはリマインダーを各自実装する必要がある。
私はAPIを叩いて結果をGrowl通知させていたが、OSアップデートでこれが動かなくなった。単にGrowlをインストールするのを忘れていただけだが、通知センターがOSに追加されたのでGrowlはもう不要な気がする。
というわけで、通知センターでガルーンのスケジュール通知を受けられるようにしてみよう。私はObjective-Cが全く書けないので、ガルーンのAPIを叩く所はとりあえず現状のを使いまわして、JSON形式のファイルを配置するようにした。
VOYAGE GROUPではグループウェアにサイボウズガルーン3を使っている。このサイボウズガルーン3、不便な事にMac用のリマインダークライアントが提供されていない。そこで、ミーティングをすっぽかさないためにもMacユーザーはリマインダーを各自実装する必要がある。
私はAPIを叩いて結果をGrowl通知させていたが、OSアップデートでこれが動かなくなった。単にGrowlをインストールするのを忘れていただけだが、通知センターがOSに追加されたのでGrowlはもう不要な気がする。
というわけで、通知センターでガルーンのスケジュール通知を受けられるようにしてみよう。私はObjective-Cが全く書けないので、ガルーンのAPIを叩く所はとりあえず現状のを使いまわして、JSON形式のファイルを配置するようにした。
通知センターに通知を送る
通知センターを使うのに一番手っ取り速いのは多分Cocoaなので、Xcodeでそれっぽいコードを書く。NSUserNotificationとNSUserNotificationCenterを使えば良い。
通知を表示するだけなら通知を送った後にアプリケーションを終了さても良いが、通知をクリックした時に任意の操作をしたい場合はアプリケーションを生かしておく必要がある。ガルーンAPIを叩く部分のCocoa移植は後にして、とりあえず動くようになった。めでたしめでたし。
という訳で、せっかくエンジニアをやっているので、日々ハックできる所はハックしていきたいですね。
という訳で、せっかくエンジニアをやっているので、日々ハックできる所はハックしていきたいですね。
次は@pank7さんです。