Меня постоянно удивляла работа iCal с днями рождений. Они фиксируются в контактных данных, но кроме записи в календаре при включенной опции iCal “Show Birthdays calendar” пользы от них нет – я лично смотрю в календарь от силы пару раз в неделю. Никакие уведомления о приближении памятной даты не предусмотрены. В итоге приходится полагаться по-прежнему на память, чтобы не забыть дни рождения друзей. Т.е. вроде и есть информация, но она практически бесполезна.
На этой неделе я в очередной раз пропустил день рождения подруги, хоть чётко помнил о нём всю предыдущую неделю.
“Пора что-то делать”, – сказал я себе. И приступил.
Есть способ, использующий штатные возможности iCal, он описан в статье “Add alarms to all existing iCal birthday events “. Используется скрипт на AppleScript, который в календаре Birthdays (он должен быть включён в iCal) добавляет алармы к дням рождений (я установил показывать аларм днём раньше нужной даты):
tell application "iCal"
tell calendar "Birthdays"
set all_events to every event
repeat with this_event in all_events
tell this_event
delete every sound alarm
delete every display alarm
make new display alarm at end with properties {trigger interval:-((1 * days) / (1 * minutes))}
end tell
end repeat
end tell
end tell
Есть одна проблема – скрипт нужно запускать самому после добавления дня рождения в контакты. Это можно было бы сделать через LaunchDaemons, StartupItems или cron, но мне внезапно стало лень это делать, и я воспользовался программой Yabi, которую рекомендовали в комментариях к используемой мною статье.
Yabi устанавливаеися в виде Preference Pane, следит за обновлениями контактов и вносит данные в календарь. Всё, что заявлено, она делает – для пробы я добавил ДР через MobileMe, данные подхватились на ноутбуке и в течение нескольких минут появилось новое событие в календаре. Само собой для внесения данных компьютер должен работать, когда он выключен, события автоматически не внесутся.
Покажу скриншоты. Можно указать календарь, в который помещаются события:
Можно настроить заголовки для сообщений, поддерживаются дни рождения и годовщины:
По умолчанию создаётся три нотификации. Поддерживается отображение сообщения, отправка почты и запуск скриптов.
При возникновении проблем или изменении календаря можно провести пересинхронизацию:
Надеюсь, что теперь забытых дней рождений не будет :-)
Немного рекламы. Что-то не везёт мне на доходы от рекламы (вы заметили, что сейчас сайт чист), попробую разместить постовой (странное слово как на мой взгляд). Никогда с SEO особо не сталкивался, вот сайт киевской компании Идеал, которая этим занимается: ideal.kiev.ua.


Pingback: Tweets that mention Уведомления о днях рождениях в iCal | The Apple Geek -- Topsy.com