AppleScript demande accès au Calendrier Apple

J'ai créé un programme de applescript qui fait "runner" l'application calendrier de Apple. Il demande accès de autoriser d'utiliser l'application calendrier. Je vais dans "réglage système" et j'autorise l'accès de mon script de applescript. Mais le message d'erreur persiste encore et encore mal grés tout. Que dois-je faire?


[Titre Modifié par l’hôte]

iMac 24″, macOS 13.0

Publiée le 23 juin 2025 à 13h36

Répondre
Question marquée comme Réponse la mieux classée

Publiée le 26 juin 2025 à 07h40

Bonjour manuel13,


J'ai sauvegardé (dans mon dossier Téléchargements) le script dans Script Editor en tant qu'Application. J'ai exécuté l'application à partir du dossier et j'ai eu 3 demandes :


  1. Demande d'accès à l'application Calendrier.
  2. Demande d'ajout d'événements dans l'application Calendrier.
  3. Demande d'accès du dossier Téléchargements.


L'application a fonctionné correctement.


Pour être certain les réglages de sécurité soient bien enregistrés et valides, j'ai exécuté l'application une seconde fois, ceci sans problèmes.


Voici mes réglages de sécurité (j'ai appelé l'application "Events Next 7 Days.app") :



Je vous conseillerais de recréer le script à partir de zéro, c'est à dire un tout nouveau script sans copier le fichier existant.


Si vous continuez d'avoir des problèmes, essayez plutôt d'utiliser l'application Raccourcis (au lieu de créer un script AppleScript.) J'avais créé un raccourci similaire pour un autre utilisateur qui voulait voir, de manière aléatoire, des évènements passés. Le voici : Get Random Calendar Event. Modifiez-le à votre guise pour obtenir le résultat que vous désirez.

7 réponses
Question marquée comme Réponse la mieux classée

Le 26 juin 2025 à 07h40 en réponse à manuel13

Bonjour manuel13,


J'ai sauvegardé (dans mon dossier Téléchargements) le script dans Script Editor en tant qu'Application. J'ai exécuté l'application à partir du dossier et j'ai eu 3 demandes :


  1. Demande d'accès à l'application Calendrier.
  2. Demande d'ajout d'événements dans l'application Calendrier.
  3. Demande d'accès du dossier Téléchargements.


L'application a fonctionné correctement.


Pour être certain les réglages de sécurité soient bien enregistrés et valides, j'ai exécuté l'application une seconde fois, ceci sans problèmes.


Voici mes réglages de sécurité (j'ai appelé l'application "Events Next 7 Days.app") :



Je vous conseillerais de recréer le script à partir de zéro, c'est à dire un tout nouveau script sans copier le fichier existant.


Si vous continuez d'avoir des problèmes, essayez plutôt d'utiliser l'application Raccourcis (au lieu de créer un script AppleScript.) J'avais créé un raccourci similaire pour un autre utilisateur qui voulait voir, de manière aléatoire, des évènements passés. Le voici : Get Random Calendar Event. Modifiez-le à votre guise pour obtenir le résultat que vous désirez.

Le 24 juin 2025 à 05h16 en réponse à manuel13

Bonjour manuel13,


  1. Vous êtes allé dans Réglages Système > Confidentialité et sécurité > Calendriers pour autoriser votre script ?
  2. Avez-vous essayé de redémarrer votre Mac ? Parfois cela peut aider.
  3. Pourriez-vous publier votre script (ou une version simplifiée qui ne contient pas d’informations personnelles) ? Je pourrais essayer de faire des essais de mon côté.

Le 25 juin 2025 à 07h54 en réponse à manuel13

Je viens de tester le script directement dans l'application Script Editor. J'ai dû faire quelques modifications à cause de variables non déclarées mais, sinon, en exécutant le script directement dans Script Editor, je n'ai pas eu de message de demande d'autorisation d'accès à l'application Calendrier.


Notez que le script ne retourne pas les événements dans les 7 prochains jours. J'ai ajouté la commande "display dialog (count of theEvents)" avant le "if (count of theEvents) > 0 then" et j'obtiens un nombre d'événements pour chaque calendrier. Vous aurez probablement some debugging à faire.


J'utilise macOS Sequoia 15.5 mais ce ne devrait pas être différent pour macOS 13.0.


Utilisez-vous Script Editor ou Automator pour votre script ?

Le 25 juin 2025 à 11h02 en réponse à 6x6

J'ai déjà fais cela. Réglages Système > Confidentialité et sécurité > Calendriers et j'ai autoriser mon script dedans. Voici le script:

tell application "Calendar"

-- Obtenir la date actuelle

set currentDateiMac to current date

-- Obtenir la date de fin (7 jours plus tard)

set endDate to currentDateiMac + (7 * days)

-- Récupérer tous les calendriers

--set allCalendars to calendars

-- Créer une liste pour stocker les rendez-vous

set appointmentList to ""

-- Parcourir tous les calendriers

repeat with currentCalendar in calendars

-- Récupérer les événements entre aujourd'hui et dans 7 jours

set theEvents to (events of currentCalendar whose start date is greater than or equal to currentDateiMac and (start date is less than or equal to endDate))

set detecteEvents to false

-- Ajouter le nom du calendrier s'il contient des événements

if (count of theEvents) > 0 then

set appointmentList to appointmentList & "Calendrier: " & name of currentCalendar & return

-- Parcourir tous les événements de ce calendrier

repeat with theEvent in theEvents

if detecteEvents is false then

set eventStart to start date of theEvent

set eventSummary to summary of theEvent

if eventSummary is "Christian ****" or eventSummary is "Silvia ****" then

set detecteEvents to true

set leNom to eventSummary

-- Formater la date et l'heure

set eventDateString to (day of eventStart as string) & "/" & (month of eventStart as integer as string) & "/" & (year of eventStart as string)

set eventTimeString to (hours of eventStart as string) & "... " & (minutes of eventStart as string)

-- Ajouter l'événement à la liste

set appointmentList to appointmentList & " • " & eventDateString & " à " & eventTimeString & " - " & eventSummary & return

-- Ajouter le lieu si disponible

if location of theEvent is not "" then

set appointmentList to appointmentList & "  Lieu: " & location of theEvent & return

set leLieu to location of theEvent

end if

end if --if eventSummary is "Christian **" or eventSummary is "sisiva ******" then

end if --if detecteEvents is false then

end repeat

set appointmentList to appointmentList & return

end if

end repeat

-- Afficher les rendez-vous

if appointmentList is not "" then

say "Manuel"

if heureAujourdhui as string is day of eventStart as string then

say "tu as un rendez-vous aujourd'hui"

else

say "tu as un rendez-vous cette semaine"

say "le " & day of eventStart as string

end if

say "avec" & leNom

say "à " & (hours of eventStart as string) & "... " & (minutes of eventStart as string)

say "la locaton " & leLieu

end if --if appointmentList is not "" then

end tell -- tell application "Calendar"

on error errorMessage

tell application "System Events"

tell process "System Preferences"

activate

end tell

end tell



Et j'ai même mis ce script dans un endroit que je ne trouve plus. Cet endroit permet une autre autorisation de son utilisation.... Mais il a toujours le message. This script needs access to calendars to run.... Merci à vous....


[Modifié par l’Hôte]

Le 25 juin 2025 à 10h35 en réponse à 6x6

J'utilise le "Éditeur de script" (Script editor). Je vous crois sur parole... En effet, si vous démarré ce script dans le Script Editor il n'a et n'aura pas de messages. Par contre si vous créer une application de ce script (mon script) à partir de "Script editor" et que vous démarré cet application, là vous aurez ce message "This script needs access to your calendars". Et j'ai été dans le Réglages Système > Confidentialité et sécurité > Calendriers et j'ai autoriser mon script dedans. En plus j'ai été dans "Réglages Système > Confidentialité et sécurité > Accessibilité et j'ai fait cherche le nom de l'application (après avoir "compilé" mon script via Script editor) pour lui donné accès. Mais encore le message ci-haut (entre guillemets), apparait... Je n'y comprends rien....

Le 27 juin 2025 à 04h53 en réponse à 6x6

J'ai fais comme vous me l'avez suggéré. C-à-d, re créer un nouveau applescript avec le nom Events Next 7 Days. sous Script Editor. J'ai évidement créé une application par la suite. J'ai la possibilité de changer l'apparence de cette applications. Je l'ai exécuté par la suite. Et les mêmes message apparaissent encore. À ce moment j'ai la possibilité de cliquer sur Ok ou Refuser. Je clique su OK mais Events Next 7 Days refuse de continuer. Je dois cliquer sur Refuser pour que Events Next 7 Days poursuive son programme. Par contre, après, je vois bien le logo de Events Next 7 Days dans les Préférence Système. Très étrange. Je n'y comprends plus rien. Merci à vous pour vos efforts...

Cette discussion a été fermée par le système ou l’équipe de la communauté. Vous pouvez voter pour les publications que vous jugez utiles ou effectuer des recherches dans la communauté pour trouver des réponses supplémentaires.

AppleScript demande accès au Calendrier Apple

Bienvenue dans la Communauté d’assistance Apple
Un forum où les clients Apple s’entraident avec leurs produits. Faites vos premiers pas avec votre compte Apple.