Ajouter des alarmes aux anniversaires iCal

Une nouvelle version de ce petit script est en phase de test ;o)

Alarmes anniversaire

Fidèle lecteur de MacOSXHints, je suis tombé sur cette entrée qui m’a beaucoup plu ! Du coup, je partage avec vous cette astuce puisqu’apparemment Snow Léopard n’a pas ajouté cette lacune dans iCal.
D’ailleurs, attention avec Snow Léopard, il y a entre autres un bug fatal (merci Antoine) !

Inutile pour moi de vous expliquer le code ou m’en vanter, je vais juste vous filer le script qui m’a permis d’obtenir ce que j’ai sur ma capture d’écran :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
(*
(c) Copyright 2007 Andrew Bussman
Edited by Joris Berthelot admin@eexit.net
*)
 
tell application "iCal"
	tell calendar "Anniversaires" -- Update this line depending on your system language
		set all_events to every event
		repeat with this_event in all_events
			tell this_event
				delete every sound alarm
				delete every display alarm
 
				-- Adds a sound alarm 10 days before
				-- make new sound alarm at end with properties {trigger interval:-14400, sound name:"Basso"}
 
				-- Adds message alarm the previous day at 12:00
				make new display alarm at end with properties {trigger interval:-720}
 
				-- Adds message alarm the d-day at 12:00
				make new display alarm at end with properties {trigger interval:720}
			end tell
		end repeat
	end tell
end tell

Ouvrez donc l’éditeur de scripts (Applications/AppleScript/Editeur de Scripts), créez un nouveau script et collez-y le code précédent. Sauvegardez si nécessaire et exécutez accessoirement :) .
A la fin de l’accomplissement du script, vous devriez avoir un truc du genre dans l’onglet « Résultat » :

display alarm 2 of event id "4B0738E8-46ED-40FA-9FB3-98998596D61E" of calendar id "0D96618C-7C95-41F7-80AC-E88A41BDC66F" of application "iCal"

Je vous propose de télécharger le script tout prêt en format .APP que vous pourrez placer dans votre dossier Applications : iCal Birthday Alarm.zip.
Si vous désirez modifier le script, vous devez copier le précédent code source et recompiler l’application ;) .

Bonne journée !

Top

Posted Mercredi, octobre 14th, 2009 under Programming, Shuffle.

5 comments

  1. Marie dit :

    Je vous remercie beaucoup pour cette astuce, que je cherchais depuis un moment… Plus de raison pour rater un anniversaire !

  2. Katsudon dit :

    Super! C’est deja ca en attendant une solution integree de la part d’Apple.
    Si je comprends bien, il faut relancer le script a chaque fois qu’on ajoute une nouvelle date sur une fiche de contact?

    En tout cas merci!

  3. @Katsudon : exactement. Le mieux reste de faire des « sessions ajout de d’anniversaire » et exécuter le script juste après :)

  4. David dit :

    Super astuce!

    Savez-vous par il faudrait remplacer « display alarm » dans le code afin d’envoyer un email en guise de rappel. J’imagine qu’il faudrait aussi modifier un paramètre pour indiquer l’adresse email du destinataire.

    Merci d’avance.

    David

  5. Michael dit :

    C’est tip top, merci beaucoup. Je souhaite juste modifier par contre l’heure de l’alarme la veille. En l’occurence 20h00. J’ai donc recopier le code dans l’éditeur de Scripts en modifiant l’heure, fait exécuter, mais cela ne fonctionne pas! Est-il possible « d’ouvrir » ton application pour juste modifier l’heure?
    Merci beaucoup d’avance.
    Michaël

Top | Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>