Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Applescript pour Mailfilter et Entourage

8 réponses
Avatar
Laurent.Ettouati
Bonjour,
J'utilise un applescript sous forme d'un script application pour
exécuter un logiciel de filtrage de spam Mailfilter puis ouvrir
Microsoft Entourage :

-- Execute the mailfilter script
do shell script "/usr/local/bin/mailfilter"
-- Check mail with Microsoft Entourage
tell application "Microsoft Entourage"
connect to POP accounts
end tell

Globalement, cela fonctionne mais j'ai parfois une fenêtre d'alerte du
type :
"Can't make some data into the expected type" et quand je clique sur le
bouton Edit AppleScript Editor renvoie sur la première ligne "do shell
script "/usr/local/bin/mailfilter"".
Enfin, Entourage reste toujours en arrière-plan par rapport au Finder à
la fin de l'exécution du script. Comment la faire apparaître en
avant-plan ?
Merci pour vos lumières...
Laurent

--
Laurent.Ettouati@univ-lyon1.fr.no.spam
Enlever ".no.spam" pour répondre

8 réponses

Avatar
Patrick Stadelmann
In article
<1gr04wi.1xjx0lg17o6bksN%,
(Laurent Ettouati) wrote:

Globalement, cela fonctionne mais j'ai parfois une fenêtre d'alerte du
type :
"Can't make some data into the expected type" et quand je clique sur le
bouton Edit AppleScript Editor renvoie sur la première ligne "do shell
script "/usr/local/bin/mailfilter"".


C'est probablement que mailfilter retourne du texte non-ASCII avec un
encodage autre que UTF-8. La solution est de piper la sortie dans vis
(ou, vu que de toute façon elle n'est pas utilisée, dans /dev/null).

Enfin, Entourage reste toujours en arrière-plan par rapport au Finder à
la fin de l'exécution du script. Comment la faire apparaître en
avant-plan ?


Ajoute la commande "activate" dans le bloc "tell" destiné à Entourage.

Patrick
--
Patrick Stadelmann

Avatar
Laurent.Ettouati
Patrick Stadelmann wrote:

In article
<1gr04wi.1xjx0lg17o6bksN%,
(Laurent Ettouati) wrote:

Globalement, cela fonctionne mais j'ai parfois une fenêtre d'alerte du
type :
"Can't make some data into the expected type" et quand je clique sur le
bouton Edit AppleScript Editor renvoie sur la première ligne "do shell
script "/usr/local/bin/mailfilter"".


C'est probablement que mailfilter retourne du texte non-ASCII avec un
encodage autre que UTF-8. La solution est de piper la sortie dans vis
(ou, vu que de toute façon elle n'est pas utilisée, dans /dev/null).


Est-ce que cela est correct ?
do shell script "/usr/local/bin/mailfilter | vis /dev/null"

Enfin, Entourage reste toujours en arrière-plan par rapport au Finder à
la fin de l'exécution du script. Comment la faire apparaître en
avant-plan ?


Ajoute la commande "activate" dans le bloc "tell" destiné à Entourage.


OK. cela marche.

Laurent
--

Enlever ".no.spam" pour répondre


Avatar
Patrick Stadelmann
In article
<1gr08i4.bvvefq19c1nbcN%,
(Laurent Ettouati) wrote:

Est-ce que cela est correct ?
do shell script "/usr/local/bin/mailfilter | vis /dev/null"


Plutôt :

do shell script "/usr/local/bin/mailfilter > /dev/null"

Patrick
--
Patrick Stadelmann

Avatar
Laurent.Ettouati
Patrick Stadelmann wrote:

In article
<1gr08i4.bvvefq19c1nbcN%,
(Laurent Ettouati) wrote:

Est-ce que cela est correct ?
do shell script "/usr/local/bin/mailfilter | vis /dev/null"


Plutôt :

do shell script "/usr/local/bin/mailfilter > /dev/null"



OK. ça marche. Comme je regarde le log de mailfilter pour voir s'il n'y
a pas de message éliminé par erreur : est-ce que cela est juste ?
do shell script "/usr/local/bin/mailfilter > vis
/chemin_du_log/mailfilter.log"
Laurent

--

Enlever ".no.spam" pour répondre


Avatar
Patrick Stadelmann
In article
<1gr0ams.k699ee1fkffigN%,
(Laurent Ettouati) wrote:

OK. ça marche. Comme je regarde le log de mailfilter pour voir s'il n'y
a pas de message éliminé par erreur : est-ce que cela est juste ?
do shell script "/usr/local/bin/mailfilter > vis
/chemin_du_log/mailfilter.log"


Si la redirection est utilisée, "vis" n'est pas indispensable. Pour
éviter que le log soit effacé à chaque fois, utiliser plutôt ">>"

Donc :

do shell script "usr/local/bin/mailfilter >> /vers/le/log.txt"

Patrick
--
Patrick Stadelmann

Avatar
Laurent.Ettouati
Patrick Stadelmann wrote:

In article
<1gr0ams.k699ee1fkffigN%,
(Laurent Ettouati) wrote:

OK. ça marche. Comme je regarde le log de mailfilter pour voir s'il n'y
a pas de message éliminé par erreur : est-ce que cela est juste ?
do shell script "/usr/local/bin/mailfilter > vis
/chemin_du_log/mailfilter.log"


Si la redirection est utilisée, "vis" n'est pas indispensable. Pour
éviter que le log soit effacé à chaque fois, utiliser plutôt ">>"

Donc :

do shell script "usr/local/bin/mailfilter >> /vers/le/log.txt"

J'ai essayé do shell script "/usr/local/bin/mailfilter >

vis/chemin_du_log/mailfilter.log" : ce qui est curieux c'est que le
fichier de log n'est pas effacé mais je n'ai plus l'alerte au niveau du
script (?). Cela fonctionne en effet aussi avec " >>
/chemin_du_log/mailfilter.log".

--

Enlever ".no.spam" pour répondre


Avatar
Patrick Stadelmann
In article
<1gr0c2t.du30fn1r3gxquN%,
(Laurent Ettouati) wrote:

J'ai essayé do shell script "/usr/local/bin/mailfilter >
vis/chemin_du_log/mailfilter.log" : ce qui est curieux c'est que le
fichier de log n'est pas effacé mais je n'ai plus l'alerte au niveau du
script (?). Cela fonctionne en effet aussi avec " >>
/chemin_du_log/mailfilter.log".


Par "effacé" je voulais dire "écrasé" (i.e. le fichier log ne contient
que le résultat de la dernière exécution).

Patrick
--
Patrick Stadelmann

Avatar
Laurent.Ettouati
Patrick Stadelmann wrote:

In article
<1gr0c2t.du30fn1r3gxquN%,
(Laurent Ettouati) wrote:

J'ai essayé do shell script "/usr/local/bin/mailfilter >
vis/chemin_du_log/mailfilter.log" : ce qui est curieux c'est que le
fichier de log n'est pas effacé mais je n'ai plus l'alerte au niveau du
script (?). Cela fonctionne en effet aussi avec " >>
/chemin_du_log/mailfilter.log".


Par "effacé" je voulais dire "écrasé" (i.e. le fichier log ne contient
que le résultat de la dernière exécution).



Dans mon cas avec do shell script "usr/local/bin/mailfilter > vis
/chemin_du_log/mailfilter.log" le fichier mailfilter n'est pas "écrasé"
cad que je conserve le log précédent avec le résultat de la dernière
exécution (?). Même chose avec ">> /chemin_du_log/mailfiter.log".

--

Enlever ".no.spam" pour répondre