0 votes

Afficher les anniversaires du jour (s'il y en a) des contacts

Je voudrais pouvoir exécuter un script qui regarderait dans ma liste de contacts et sortirait le nom (et, de préférence, le numéro de téléphone) de toute personne dont la date 'Anniversaire' correspond à aujourd'hui. (Le script devrait être quelque chose que je peux exécuter sur OS X 10.9 et sortir sur stdout).

Je peux faire de même pour les anniversaires en utilisant l'option contacts à partir de http://www.gnufoo.org/contacts/contacts.html (ou brew install contacts ) mais il ne fait pas de même pour les adresses.

J'ai trouvé un Conseils pour Mac OS X qui suggérait qu'il pourrait fonctionner via sqlite3 mais je n'ai pas réussi à le faire fonctionner. (Ce qui ne veut pas dire que ce n'est pas possible, seulement que je n'ai pas réussi à le faire).

Il me semble que quelqu'un a peut-être déjà inventé cette "roue" particulière et que je ne le sais pas. À part les deux liens ci-dessus, Google n'a pas été d'une grande aide.

1voto

Mike Schall Points 2921

En regardant la base de données ouverte par ce snippet SQLite dans Navicat, je ne vois aucune donnée ; je suppose que le déplacement d'iCloud a provoqué des changements, mais peut-être que je ne vois pas les choses correctement.

Si vous avez un compte de développeur, vous pouvez regarder dans la documentation relative à la programmation du carnet d'adresses . Il y a support assez riche pour la recherche et je serais choqué si vous ne pouviez pas chercher des dates correspondantes. Les anniversaires semblent ne pas avoir leur propre type distinct - il y a une constante de propriété pour kABBirthdayProperty mais rien comme Anniversary, donc il tombe probablement sous kABOtherDatesProperty.

kABOtherDatesProperty
Dates associated with a person (ABMultiDateProperty containing dates).
Available in OS X v10.3 and later.
Declared in ABGlobals.h.

Et bien sûr, il y a un identifiant (apparemment le seul identifiant fourni à l'avance) pour les autres dates.

Autres étiquettes de dates Étiquettes pour les valeurs contenues dans les propriétés à valeurs multiples ABOtherDatesProperty.

kABAnniversaryLabe l
Constants
kABAnniversaryLabel
Anniversary date.
Available in OS X v10.3 and later.
Declared in ABGlobals.h.
Availability
Available in OS X v10.3 and later.

J'imagine que cette sous-liste est la raison pour laquelle l'application en ligne de commande à laquelle vous faites référence n'affiche pas les anniversaires ; elle doit être consciente de la possibilité d'autres types de dates dans cette catégorie "autre". Mais je pense qu'elle pourrait être étendue pour les gérer (si elle fonctionne toujours ?).

Compte tenu de ce qui précède, vous pourriez voir si vous pouvez écrire une application Swift simple pour sortir toutes les entrées avec des anniversaires. Vous pouvez faire des applications en ligne de commande avec ça. Applescript ne vous aidera pas - l'interface Contacts as ne semble pas partager d'autres types de dates.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X