Enregistrer automatiquement des pièces jointes dans un dossi

  • Créateur du sujet Créateur du sujet tophe630
  • Date de début Date de début
T

tophe630

Invité
Bonsoir;

Je n'ai jamais fait d'Applescript, j'ai réussi à faire ce que je veux avec automator, mais pas totalement.

J'aimerais faire un script qui me rangerait les pièces jointe d'un e-mail dans un dossier spécifié.
Et je voudrais appeler ce script à l'aide d'une règle dans mail.

J'ai trouvé ce script en recherchant un peu:

property destinationFolder : (path to desktop as Unicode text) & « Joint: »

using terms from application « Mail »
on perform mail action with messages theMessages for rule theRule
tell application « Mail »
repeat with eachMessage in theMessages
repeat with thisAttachment in eachMessage’s mail attachments
if (MIME type of thisAttachment) is equal to « application/pdf » then
set thisFile to destinationFolder & name of thisAttachment
save thisAttachment in thisFile
end if
end repeat
end repeat
end tell
end perform mail action with messages
end using terms from




Il semblerait faire ce que je voudrais, mais ça ne fonctionne pas chez moi. Comme je suis débutant, je ne vois pas bien où est-ce que ça bloque. Pouriez-vous m'aider, merci.

 
Bonsoir;

Je n'ai jamais fait d'Applescript, j'ai réussi à faire ce que je veux avec automator, mais pas totalement.

J'aimerais faire un script qui me rangerait les pièces jointe d'un e-mail dans un dossier spécifié.
Et je voudrais appeler ce script à l'aide d'une règle dans mail.
Bonjour

Quand tu ouvre une pièce-jointe, elle est automatiquement mémorisée dans un dossier sur ton DD.

Avec Léopard 10.5.8 ça se trouve dans le dossier ta petite maison/Library/Téléchargements Mail

Il serais plus simple d'aller les chercher la je pense?

Défaut, il faut les lires pour qu'elles soit misent en mémoire.

Une action de dossier où autres pourrais les mémoriser dans des dossiers datés.

Une découverte que tu m'a fait faire pour voir si je pouvais répondre.

@+
 
Je reçoit une fois par jour un document PDF, toujours du même destinataire, et à chaque fois, je suis obligé d'aller chercher ce document dans le dossier des téléchargements et de le transférer dans le bon dossier. Comme c'est quelque chose que je fais quotidiennement, j'aimerais bien simplifier les choses en le faisant faire automatiquement depuis une règle Mail, mais le problème c'est que cette action (enregistrer pièce jointe) n'existe pas dans les règles alors j'aimerais utiliser un Apple script vu que mail peut les utiliser.
 
Je reçoit une fois par jour un document PDF, toujours du même destinataire, et à chaque fois, je suis obligé d'aller chercher ce document dans le dossier des téléchargements et de le transférer dans le bon dossier. Comme c'est quelque chose que je fais quotidiennement, j'aimerais bien simplifier les choses en le faisant faire automatiquement depuis une règle Mail, mais le problème c'est que cette action (enregistrer pièce jointe) n'existe pas dans les règles alors j'aimerais utiliser un Apple script vu que mail peut les utiliser.
Bonsoir

Le dossier téléchargement de Mail à 2 défauts:
Il faut lire le fichier pour qu'il se trouve dans ce dossier.
Ce dossier se vide automatiquement quand tu quitte Mail.

J'ai écrit un code que je teste, ce qu'il fait:

Un chemin émetteur, un chemin récepteur et il déplace tous les fichiers de l'un dans l'autre (a une condition que l'extension soit .pdf)

8 lignes de code.

Si tu veut tester pour voir si ça peu t'aider à trouver une solution a ton problème tu me le dit.

@+
 
Bonjour,

J'ai eu une préoccupation similaire, et ai fait un script qui fonctionne chez moi, (avec des critères différents de ce que tu recherches).
J'avais pas mal galéré pour que le script s'exécute sans faire planter mail...
Je peux te l'envoyer en privé si tu veux l'exploiter.

Sinon, n'hésite pas à donner des précisions sur ce qui ne fonctionne pas dans ce que tu as écrit (quels messages d'erreur, etc...)

Bon courage,
Nicolas
 
Bonjour,

ce script m'intéresserait aussi, vu que je je reçois quotidiennement des diffusions de doc en tout genre à classer.

Est-ce que la solution de "les_innommables66" est facilement utilisable?
Si oui, "les_innommables66" pourrais-tu la publier ou me la "prêter"?:siffle::)

Merci.

A+
 
Bonjour,

ce script m'intéresserait aussi, vu que je je reçois quotidiennement des diffusions de doc en tout genre à classer.

Est-ce que la solution de "les_innommables66" est facilement utilisable?
Si oui, "les_innommables66" pourrais-tu la publier ou me la "prêter"?:siffle::)

Merci.

A+
Bonjour

Il faudrait avoir une idée de ce tu recherche.

Tu créer un dossier Pièces-jointes dans mail.
Tu créer une règle pour relever les pièces jointes voulues.

Avec Léopard 10.5.8
Elles devrais alors se trouver dans le dossier:
~: Bibliothèque:Mail:MailBoxes:Pieces jointes.mbox:Messages:

C'est ce dossier qu'utilise le code pour faire le trie.

Maintenant faut savoir quel genre de trie tu recherche?

@+
 
Est-ce que la solution de "les_innommables66" est facilement utilisable?
Si oui, "les_innommables66" pourrais-tu la publier ou me la "prêter"?:siffle::)

Merci.

A+

Avec un peu de retard, et sans aucune garantie...
Bon courage.



using terms from application "Mail"
on perform mail action with messages theMessages for rule theRule
tell application "Mail"
set LeNomAttendu to "winmail.dat"
set AutreNomsAttendus to {"Calendrier.csv", "Contacts.csv"}
set TheApplication to "imac:Applications:No more winmail.app"
set LeScriptAEuUnEffet to false
set theOutputFolder to (path to desktop) as string

repeat with eachMessage in theMessages
set theAttachments to every mail attachment of eachMessage
repeat with eachAttachment in theAttachments
set theAttachmentName to name of eachAttachment
try
if LeNomAttendu is equal to theAttachmentName then
set theSavePath to theOutputFolder & theAttachmentName
save eachAttachment in theSavePath
set theFile to theOutputFolder & theAttachmentName as string alias theFile
tell application "Finder" to open file theFile using application file TheApplication
tell application "Finder" to move theFile to trash
set LeScriptAEuUnEffet to true
end if
end try
try
if theAttachmentName is in AutreNomsAttendus then
try
set LExtension to characters -3 thru -1 of theAttachmentName as string
set theAttachmentName to (characters 1 thru -4 of theAttachmentName as string) & "csv"
end try
set theSavePath to theOutputFolder & theAttachmentName
save eachAttachment in theSavePath
set LeScriptAEuUnEffet to true
end if
end try
end repeat
end repeat
if LeScriptAEuUnEffet then
do shell script {open application "Ouverture csv"}
end if
end tell
end perform mail action with messages
end using terms from