cerhu > comp.sys.* > comp.sys.mac.programmation

Benoît (04/04/2019, 20h18)
Bonjour,

Mon ancien script (envoyer-recevoir toutes les X minutes) ne fonctionne
plus du tout. Pourquoi ? Pas une idée. Ce que j'aimerai me faire c'est
qu'une appli... le fasse ;)
Et MacSoup n'est plus reconnu par Script Editor. Le principe est le
suivant :

on idle
try
-- au cas où la connection ne se fasse pas
with timeout of 300 seconds -- largement de temps de récupérer
tell application "MacSOUP"
connect with fetching news
connect with fetching tagged headers
connect with sending
end tell
on error
return 5 seconds
end try
return 600
end idle

En bref, si je ne me suis pas trompé, quand je suis lancé

- Je donne 10 minutes à MacSoup pour récupérer les news (c'est beaucoup)
- S'il y a une erreur (serveur inexistant par exemple) tu attends 5
secondes et tu réessayes tout de suite ;
- Si c'est bon, tu attends 10 minutes avant de recommencer.

Je sais que ce que j'ai écrit n'est pas bon, un coup de main me serait
utile. Mais surtout est-il possible d'outrepasser l'alerte de MacSoup :

« Could not open connection to news server on host "news.free.fr".

The server may be down, or there may be a problem with your network
connection. Try connecting later. »

Une idée ?
Fleuger (05/04/2019, 08h05)
Benoît a écrit ceci :

> Une idée ?


Est-ce que dans Préférences Système > Sécurité et Confidentialité >
Onglet Confidentialité > Palette de gauche Accessibilité
Il y a Éditeur de Scripts ?
S'il n'y est pas, il faut l'ajouter.
Ensuite, ton script est-il enregistré en script ou bien en application ?
Si c'est un script, il faut le mettre dans Automatisation > Menu des
scripts
Si c'est une application, il faut l'ajouter dans Automatisation et dans
Accessibilité.
Benoît (05/04/2019, 12h18)
Fleuger <g4fleurot> wrote:

> Benoît a écrit ceci :
> > Une idée ?

> Est-ce que dans Préférences Système > Sécurité et Confidentialité >
> Onglet Confidentialité > Palette de gauche Accessibilité
> Il y a Éditeur de Scripts ?


Oui

> S'il n'y est pas, il faut l'ajouter.
> Ensuite, ton script est-il enregistré en script ou bien en application ?


Application

> Si c'est un script, il faut le mettre dans Automatisation > Menu des
> scripts
> Si c'est une application, il faut l'ajouter dans Automatisation et dans
> Accessibilité.


À condition que cela fonctionne et le script ne fonctionne plus.
D'autant qu'actuellementent il ne sait pas gérer les problèmes de
connection. MacSoup envoie un dialogue et bloque tout.
Fleuger (05/04/2019, 12h58)
Benoît a écrit ceci :

> À condition que cela fonctionne et le script ne fonctionne plus.
> D'autant qu'actuellementent il ne sait pas gérer les problèmes de
> connection. MacSoup envoie un dialogue et bloque tout.


J'utilise ce script sous forme d'application qui fonctionne :

------
tell application "Finder"
open POSIX file "/Users/chemin du fichier_Settings"
delay 2
end tell

tell application "MacSOUP"
activate
delay 0.5
connect with fetching news and checking for new groups
end tell
------

Il faut ouvrir MacSoup par son dossier Settings.
Peut-être qu'en rajoutant le debut ce ce script (en adaptant le chemin) avant le tien, je pense que ça pourrait fonctionner
Àma le timeout of 300 secondes date de l'époque où on se connectait en RTC
Benoît (05/04/2019, 15h50)
Fleuger <g4fleurot> wrote:

[..]
> end tell
> ------
> Il faut ouvrir MacSoup par son dossier Settings.


Je le fais depuis qu'on est passé en je ne sais plus quel OS. J'ai même
appris il y a quelque temps que les settings pouvaient être installées
dans le dock. À un moment il suffisait juste mettre le dossier settings
qu'on voulait utiliser par défaut dans les préférences système.

> Peut-être qu'en rajoutant le debut ce ce script (en adaptant le chemin)
> avant le tien, je pense que ça pourrait fonctionner Àma le timeout of 300
> secondes date de l'époque où on se connectait en RTC


La fonction « activate » amène l'application au premier plan et je ne
veux surtout pas que cela se fasse et avoir MacSoup se pointer devant ce
sur quoi je bosse pour en plus changer de bureau. Il fait son taff
répétitif en arrière-plan. Comme autrefois.

Pour le premier TimeOut c'est vrai, le second sert à relancer la
connexion toutes les X secondes. J'ai aussi la récupération des « tagged
headers » qui sont ceux qui n'ont pas été récupérés, genre kill-file,
mais qui semblent intéressants dans la discussion en cours.

Cela étant, comment faire en sorte qu'en cas de problème de connexion
« serveur inaccessible », une tentative soit faite quelques secondes
plus tard ? En boucle bien sûr. C'est mon premier problème à résoudre
puisque s'il n'est pas résolu le reste ne sert à rien :(
Fleuger (05/04/2019, 17h29)
Benoît a écrit ceci :

> La fonction « activate » amène l'application au premier plan et je ne
> veux surtout pas que cela se fasse et avoir MacSoup se pointer devant ce
> sur quoi je bosse pour en plus changer de bureau. Il fait son taff
> répétitif en arrière-plan. Comme autrefois.


OK. Ben alors il suffit de supprimer la ligne
Éventuellement, en ajoutant la ligne
tell application "System Events" to set visible of process "MacSOUP" to false
ça laisse l'application en arrière plan

> Pour le premier TimeOut c'est vrai, le second sert à relancer la
> connexion toutes les X secondes. J'ai aussi la récupération des « tagged
> headers » qui sont ceux qui n'ont pas été récupérés, genre kill-file,
> mais qui semblent intéressants dans la discussion en cours.


J'ai essayé ton script. Il ne veut pas se compiler en l'état.
Comme cela, il se compile
Benoît (05/04/2019, 19h05)
Fleuger <g4fleurot> wrote:

[..]
> end try
> return 600
> end idle
> ----
> veux pas. Je n'ai pas trouvé de parade scriptée, raison pour laquelle je
> me connecte en manuel lorsque j'y pense. Et j'ai dissocié la réception de
> l'envoi pour éviter les envois intempestifs malheureux.


C'est là que je coince. Et si je ne le résouds pas, le script est
inutilisable.
Discussions similaires
[Recherche] Script pour automatiser lrelèvedes news avec MacSOUP

Dossier public / agent script exchange / script "alerte nouveau ms

script Python exécuté dans un script Perl, saisie au clavier ?

[APPLE SCRIPT] MacSOUP


Fuseau horaire GMT +2. Il est actuellement 16h11. | Privacy Policy