@
iliasrem
Bonjour,
Il faut donc que tu fasses:
1 - Créer un dossier nommé "pieces jointes mails" dans ton dossier" documents", respectes bien le nom car il est renseigné comme çà dans le script.
2 - Préparer le script, pour çà tu ouvres l'application "éditeur de script" qui est dans applications-->utilitaires, dans un nouveau document de cette application tu fais un copié, collé du script ci-dessous et tu enregistres ce script (provisoirement sur le bureau), avec le nom de ton choix exemple
extrait pièce jointe)
3 - Dans les préférences de mail tu crées une nouvelle règle: avec condition : Tous les messages, les opérations: Exécuter un applescript, dans aucun script tu sélectionnes ouvrir dans le finder et dans le fenêtre qui s'ouvre tu fais un glissé déposé du script qui est sur le bureau, tu fermes cette fenêtre et tu peux alors sélectionner le script.
4 - Pour que l'impression de la pièce jointe soit automatique il faut créer une action de dossier: pour çà tu ouvres l'application "automator" nouveau document-->action de dossier --Choisir. Dans l'action qui s'affiche (choisir un dossier, tu choisis ton dossier "pieces jointes mails", sur la gauche tu sélectionnes utilitaires, imprimer les éléments du finder et tu fais un glisser déposer de cette action sur la droite. (tu laisses imprimante par défaut) et tu enregistres avec un nom de ton choix (exemple imprime fichier)
5 - dans ton dossier documents, tu fais un clic droit sur le dossier "pièces jointes mails" , dans service tu sélectionnes "configuration des actions de dossier", lancer le service, dans la fenêtre tu sélectionnes ton action "imprime fichier" et joindre, tu t'assures que les cases soient cochées y compris la case "activer les actions de dossier".
Voilà c'est fini.
Lors de le réception d'un mail, le script sera lancé, il transfère les pièces jointes des fichiers "non lue" dans le dossier qui lui envoi ce fichier à l'imprimante par défaut.
Remarque: le script ne transfère la pièce jointe qu'une seule fois (mail garde en mémoire que la pièce jointe à été tranférée !)
Je reste à ta disposition si tu as des problèmes pour la mise en place.
Bloc de code:
tell application "Mail"
set xx to {}
set xxref to a reference to xx
set mailNbr to count of messages of inbox
repeat with j from 1 to mailNbr
if read status of (message j of inbox) = false then
copy (message j of inbox) to end of xxref
end if
end repeat
tell me to perform mail action with messages xxref
end tell
using terms from application "Mail"
on perform mail action with messages theMessages
-- localiser ci-dessous le répertoire cible "monRepertoireCible"
tell application "Finder" to set PathRepertoireCible to (folder "pieces jointes mails" of (path to documents folder)) as string
-- pour chacun des messages selectionnés, extraire la premiere piece jointe et l'enregistrer dans le répertoire "pieces jointes mails" dans le type d'origine du fichier joint
repeat with CeMessage in theMessages
-- extraire le nom du fichier joint
set fichier_joint to the first mail attachment of CeMessage
set NomPieceJointe to the name of fichier_joint
-- composer le chemin du fichier dans son répertoire cible
set LeNomFichier to PathRepertoireCible & NomPieceJointe
-- remarque: le save ci-dessous ne duplique pas le fichier dans le repertoire cible si l'opération a déjà été faite
save fichier_joint in file LeNomFichier
end repeat
end perform mail action with messages
end using terms from