通知センターの通知を指定した時間帯だけ表示させない方法

2013年2月7日

Notification_Disturb

仕事中や家でリラックスしている時間帯には、通知センターの通知が煩わしく感じる時があります。

そんな通知センターの通知をすぐに止めれたり、指定した期間や時間帯にだけ止める方法がTUAWに掲載されていたので実際にやってみました。

理解する必要があるのは以下の3項目。

  • 通知センターの通知を止めるAppleScript
  • 通知センターの通知を再開させるAppleScript
  • カレンダー(iCal)を利用して上記AppleScriptをAutomatorアプリにして呼び出す

AppleScriptやAutomatorがまったく分からないという人は、Automatorで開くだけでカレンダーイベントを作れるファイルがあるのでダウンロードして利用してください。

通知センターの通知を止めるAppleScript

do shell script “defaults write ~/Library/Preferences/ByHost/com.apple.notificationcenterui.*.plist doNotDisturb -boolean true"
set theDate to quoted form of (do shell script “date +\"%Y-%m-%d %I:%M:%S +0000\"")
do shell script “defaults write ~/Library/Preferences/ByHost/com.apple.notificationcenterui.*.plist doNotDisturbDate -date " & theDate
do shell script “killall NotificationCenter"

通知センターの通知を再開させるAppleScript

do shell script “defaults write ~/Library/Preferences/ByHost/com.apple.notificationcenterui.*.plist doNotDisturb -boolean false"
try
do shell script “defaults delete ~/Library/Preferences/ByHost/com.apple.notificationcenterui.*.plist doNotDisturbDate"
end try
do shell script “killall NotificationCenter"

カレンダー(iCal)を利用して上記AppleScriptをAutomatorアプリにして呼び出す

まずAutomatorを起動して「書類の種類」を「カレンダーアラーム」にして新規に作成します。

Notification_Disturb1

「AppleScriptを実行」のアクションをウィンドウ右側にドラッグして追加し、上記AppleScriptの内容どちらかをコピー&ペーストします。

Notification_Disturb2

名前を付けて保存すると、その名前でカレンダーイベントが作成されますので動作させたい期間を設定します。

Notification_Disturb3

例えば12:00から18:00まで通知を表示させたくないのであれば、通知停止イベントを「開始:12:00」「終了:18:00」で作成して、通知再開イベントを「開始:18:00」「終了:2時間後など幅のある時間帯」、両方とも「繰り返し:毎日」で作成すれば、自動的に通知センターの通知のOn/Offをやってくれます。

カレンダーの繰り返しイベントの設定は結構柔軟で平日だけとか休日だけとか設定できますので、かなり自分のライフスタイルに合ったイベントが作成できます。