IPB

Bienvenue invité ( Connexion | Inscription )

4 Pages V  < 1 2 3 4 >  
Reply to this topicStart new topic
> vérifier la connexion VPN et relancer si besoin est?
Options
korncrunkleduc
posté 13 Nov 2010, 12:00
Message #31


Nouveau Membre


Groupe : Membres
Messages : 8
Inscrit : 8 Dec 2009
Membre no 146 769



Hello, je cherche à faire un Apple Script qui permette de déconnecter Transmission quand le Vpn déconnecte et de relancer Transmission lorsque le Vpn se reconnecter. Comment faire svp ? Merci. wink.gif
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 13 Nov 2010, 14:46
Message #32





Guests






Bonjour,
Citation (korncrunkleduc @ 13 Nov 2010, 06:00) *
Hello, je cherche à faire un Apple Script qui permette de déconnecter Transmission quand le Vpn déconnecte et de relancer Transmission lorsque le Vpn se reconnecter.

Je n'utilise pas Transmission, donc je ne sais pas s’il y a un dialogue à la fermeture.

Ce serait quelque chose comme ceci :
Code
on idle
    tell application "System Events" to tell current location of network preferences
        if not connected of current configuration of service "VPN xyz" then -- le vpn est déconnecté
            my quitAppli()
        else -- le vpn est connecté
            my LanceAppli()
        end if
    end tell
    return 5 -- vérification au 5 secondes
end idle

on quitAppli()
    quit application "Transmission"
end quitAppli

on LanceAppli() -- la commande running fonctionne  à partir de Mac OS 10.5
    tell application "Transmission" to if not running then launch --lance Transmission, si  Transmission n'est pas déjà lancé
end LanceAppli
Go to the top of the page
 
+Quote Post
bg
posté 26 Dec 2010, 16:22
Message #33


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



voici un Applescript qui marche sans problème pour le 10.6 et Transmission ( pour un autre, comme Vuze, vous remplacer "Transmission" par le nom de votre logiciel p2p et vous faites quelques petites corrections) :
____________

--VPN est le nom que vous avez donné à votre VPN dans Préférences Système>Réseau. A mettre entre guillemets.

on idle
tell application "System Events" to tell current location of network preferences
set t_service to service "VPN" -- nom de votre connexion VPN

if not connected of current configuration of t_service then
tell application "Transmission" to quit yes -- Ferme Transmission en sauvegardant les paramètres
connect t_service
else
tell application "System Events"
if not (exists process "Transmission") then
tell application "Transmission"
open "" -- ligne qui peut être remplacé par Run
set frontmost to false
end tell
end if
end tell
end if
end tell

return 5 -- Vérification toutes les 5 secondes
end idle
on quit
tell application "Transmission" to quit yes
tell application "System Events"
tell current location of network preferences
set t_service to service "VPN"
set isConnected to connected of current configuration of t_service
if isConnected then disconnect t_service
end tell
end tell
continue quit
end quit


______________
Ensuite, allez dans le menu Fichier>Enregistrer sous. Dans la fenêtre choisissez l'endroit où vous souhaitez l'enregistrer.
Les options à prendre :
pour Format de fichier : Application.
cochez uniquement la case "Rester en arrière-plan". (très important)

ATTENTION : Dans le menu Transmission>Préférences>Général la case "Avant de quitter avec des transferts actifs" doit être décochée.


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
dididoudou
posté 17 Jan 2011, 11:48
Message #34


Nouveau Membre


Groupe : Membres
Messages : 1
Inscrit : 17 Jan 2011
Membre no 163 761



Citation (EricaL** @ 13 Nov 2010, 14:46) *
Bonjour,
Citation (korncrunkleduc @ 13 Nov 2010, 06:00) *
Hello, je cherche à faire un Apple Script qui permette de déconnecter Transmission quand le Vpn déconnecte et de relancer Transmission lorsque le Vpn se reconnecter.

Je n'utilise pas Transmission, donc je ne sais pas s’il y a un dialogue à la fermeture.

Ce serait quelque chose comme ceci :
Code
on idle
    tell application "System Events" to tell current location of network preferences
        if not connected of current configuration of service "VPN xyz" then -- le vpn est déconnecté
            my quitAppli()
        else -- le vpn est connecté
            my LanceAppli()
        end if
    end tell
    return 5 -- vérification au 5 secondes
end idle

on quitAppli()
    quit application "Transmission"
end quitAppli

on LanceAppli() -- la commande running fonctionne  à partir de Mac OS 10.5
    tell application "Transmission" to if not running then launch --lance Transmission, si  Transmission n'est pas déjà lancé
end LanceAppli



Bonjour EricaL,

J'ai vu que tu avais envoyé les deux scripts ci-dessous sur le forum (l'un pour permettre la reconnexion automatique d'un VPN, l'autre permettant de quitter une application en cas de déconnexion du VPN et de la lancer en cas de connexion).

Je suis absolument débutant en la matière et je me permets donc de demander ton aide... J'aimerais bien "fusionner" tes deux scripts pour permettre les actions suivantes en cas de déconnexion du VPN:

(i) quit Transmission
(ii) Reconnexion du VPN
(iii) launch Transmission

En gros, cela correspondrait à peu près à l'application VPN Lifeguard qui tourne uniquement sous Windows. J'ai bien vu que bg avait posté un script permettant ces 3 actions, mais il bug pas mal sur mon OS (10.5) alors que tes deux scripts fonctionnent séparément très bien.

Merci beaucoup!

dididoudou
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 17 Jan 2011, 19:01
Message #35





Guests






Bonjour,

Citation (dididoudou @ 17 Jan 2011, 05:48) *
J'aimerais bien "fusionner" tes deux scripts pour permettre les actions suivantes en cas de déconnexion du VPN:

(i) quit Transmission
(ii) Reconnexion du VPN
(iii) launch Transmission

Voici le script
Code
on idle
    tell application "System Events" to tell current location of network preferences
        set t_service to service "VPN xyz" -- nom du service VPN
        if not connected of current configuration of t_service then -- le vpn est déconnecté
            my quitAppli()
            connect t_service
            repeat
                delay 1
                if connected of current configuration of t_service then exit repeat
            end repeat
            my LanceAppli()
        end if
    end tell
    return 5 -- vérification au 5 secondes
end idle

on quitAppli()
    quit application "Transmission"
    repeat
        tell application "Transmission" to if not running then exit repeat
        delay 1
    end repeat
end quitAppli

on LanceAppli() -- la commande running fonctionne  à partir de Mac OS 10.5
    tell application "Transmission" to if not running then launch --lance Transmission, si  Transmission n'est pas déjà lancé
end LanceAppli
Go to the top of the page
 
+Quote Post
yvan2mhs
posté 29 Mar 2011, 12:59
Message #36


Nouveau Membre


Groupe : Membres
Messages : 18
Inscrit : 29 Mar 2011
Membre no 166 015



bonjour à tous, j'ai un petit soucis d'exécution de script.
je tente de faire fonctionner ce script sous une 10.4.11, mais rien ne fonctionne.
j'ai un script similaire qui marche sur mon MBP
Code
on idle
    tell application "System Events" to tell current location of network preferences
        set t_service to service "nom VPN" -- nom de votre connexion VPN
        
        if not connected of current configuration of t_service then
            tell application "Transmission" to quit yes -- Ferme Transmission en sauvegardant les paramètres
            connect t_service
        else
            tell application "System Events"
                if not (exists process "Transmission") then
                    tell application "Transmission"
                        open ""
                        set frontmost to false
                    end tell
                end if
            end tell
        end if
    end tell
    
    return 5 -- Vérification toutes les 5 secondes
end idle

mais impossible de le faire fonctionner sur un PPC 10.4.11 (mac-mini)
je tente de prendre votre script et à la compilation il bloque et me sort un.
syntax error : fin de ligne prévu mais identificateur trouvé
puis il me sélectionne location à la seconde ligne.
j'avoue que je ne sais pas trop quoi faire.
une petit idée pour éclairer mon incompétence dans ses scipts

Merci par avance biggrin.gif

EDIT

je viens de me rendre compte que cette ligne
Code
tell application "System Events" to tell current location of network preferences

ce change en cette ligne
Code
tell application "System Events" to tell «class locc» of «class netp»

quand le lance l'app qui contient le script blink.gif
je n'y comprends vraiment plus rien unsure.gif

Ce message a été modifié par yvan2mhs - 29 Mar 2011, 13:46.
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 29 Mar 2011, 23:23
Message #37





Guests






Bonsoir,

Citation (yvan2mhs @ 29 Mar 2011, 06:59) *
je viens de me rendre compte que cette ligne
Code
tell application "System Events" to tell current location of network preferences

ce change en cette ligne
Code
tell application "System Events" to tell «class locc» of «class netp»

quand le lance l'app qui contient le script blink.gif
je n'y comprends vraiment plus rien unsure.gif

"System events" ne gère pas les connexions sur Mac OS X 10.4.11

Il faut faire le script en utilisant l'application "Connexion à Internet"
Code
tell application "Internet Connect"
    if (get seconds connected of status of configuration "nom VPN") < 0 then
        -- not connected
        connect configuration "nom VPN"
    else
        --connected
    end if
end tell


Ce message a été modifié par EricaL** - 29 Mar 2011, 23:23.
Go to the top of the page
 
+Quote Post
bg
posté 30 Mar 2011, 09:12
Message #38


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Salut,

il y a 2 Repeat dans le script et je ne les comprends pas.
Code
    connect t_service
    repeat
        delay 1
        if connected of current configuration of t_service then exit repeat
    end repeat


et
Code
    quit application "Transmission"
    repeat
        tell application "Transmission" to if not running then exit repeat
        delay 1
    end repeat


Pourrais-je avoir quelques informations.
merci


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 30 Mar 2011, 14:34
Message #39





Guests






Citation (bg @ 30 Mar 2011, 03:12) *
il y a 2 Repeat dans le script et je ne les comprends pas.

Pourrais-je avoir quelques informations.

Si on quitte une application pour la relancer, il est préférable d'attendre que l'application soit quittée complètement.
Sinon cette erreur s'affichera.
Code
Erreur dans "le nom de l'application" : La connexion est invalide.


Teste plusieurs fois ce script, il peut fonctionner sans erreur, mais pas toujours.
Code
quit application "TextEdit"
activate application "TextEdit"


On peut mettre un délai d’une seconde (au lieu du repeat) qui suffit la plupart du temps (99.9 %), mais ce n'est pas fiable à 100 %.
Code
quit application "TextEdit"
delay 1
activate application "TextEdit"

à un moment donné si les processeurs fonctionnent à plein régime le délai ne sera peut-être plus suffisant.

L'autre repeat, c'est la même raison :
Il est préférable d'attendre que la connexion soit en fonction à 100 % avant d'effectuer la prochaine action.
Go to the top of the page
 
+Quote Post
bg
posté 30 Mar 2011, 16:18
Message #40


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Citation (EricaL** @ 30 Mar 2011, 14:34) *
Citation (bg @ 30 Mar 2011, 03:12) *
il y a 2 Repeat dans le script et je ne les comprends pas.

à un moment donné si les processeurs fonctionnent à plein régime le délai ne sera peut-être plus suffisant.

L'autre repeat, c'est la même raison :
Il est préférable d'attendre que la connexion soit en fonction à 100 % avant d'effectuer la prochaine action.

Lorsque les connexions au VPN n'arrivent pas à tenir plus de 6 secondes, l'applescript relance le VPN mais parfois il plante au bout d'un certain nombre de relances et cette absence de délai doit être la raison du plantage de l'applescript, j'ai plus de 15 applications ouvertes habituellement et en plus je le lance avec 2 logiciels p2p.
L'ennui, c'est que parfois les p2p restent alors ouvert bien qu'il n'y ai pas de VPN. mad.gif

Question subsidiaire : est-il possible de mettre un compteur qui compte les tentatives de connexion ?
J'aimerais qu'au bout de 4 tentatives de connexion en 1 minutes, le script s'arrête, en quittant les p2p, pendant 1h et recommence sa ritournelle, 4 tentatives-arrêt et ainsi de suite.
Merci biggrin.gif


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 30 Mar 2011, 20:12
Message #41





Guests






Bonsoir,

Citation (bg @ 30 Mar 2011, 10:18) *
Question subsidiaire : est-il possible de mettre un compteur qui compte les tentatives de connexion ?
J'aimerais qu'au bout de 4 tentatives de connexion en 1 minutes, le script s'arrête, en quittant les p2p, pendant 1h et recommence sa ritournelle, 4 tentatives-arrêt et ainsi de suite.
Merci biggrin.gif

Ce serait comme ceci
Code
property appliNames : {"Transmission", "Transmission2"}
property tentatives : missing value
property t_connected : missing value

on run
    set tentatives to 0 -- reset au lancement du script
end run

on idle
    tell application "System Events" to tell current location of network preferences
        set t_service to service "VPN xyz" -- nom du service VPN
        set t_connected to connected of current configuration of t_service
        if not t_connected then -- le vpn est déconnecté
            my quitAppli()
            if tentatives < 4 then
                connect t_service
                repeat 6 times
                    delay 1
                    try
                        if connected of current configuration of t_service then
                            my LanceAppli()
                            exit repeat
                        end if
                    end try
                end repeat
            end if
        end if
    end tell
    
    if not t_connected then -- le vpn n'était pas connecté, il est reconnecté si tentatives < 4
        if tentatives = 4 then -- le vpn n'est pas connecté, 4 tentatives de connexion de suite (environ 1 minutes)
            set tentatives to 0
            return 3600 -- attends une heure
        end if
        set tentatives to tentatives + 1
    else
        set tentatives to 0
    end if
    
    return 12 -- revérification dans 12 secondes, ne pas modifier
    -- parce qu'il compte une tentative au 15 secondes (environ).  (12 secondes + délai de  3 secondes en géneral)
end idle

on quit
    continue quit
end quit

on quitAppli()
    repeat with nom in appliNames
        quit application nom
        repeat 10 times
            delay 1
            try
                tell application nom to if not running then exit repeat -- l'application a quitté completement
            end try
        end repeat
    end repeat
end quitAppli

on LanceAppli() -- la commande running fonctionne  à partir de Mac OS 10.5
    repeat with nom in appliNames
        tell application nom to if not running then launch --lance l'application X, si  l'application X  n'est pas déjà lancé
    end repeat
end LanceAppli

Modifie les noms des applications dans la première ligne du script
Go to the top of the page
 
+Quote Post
bg
posté 31 Mar 2011, 08:35
Message #42


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Citation (EricaL** @ 30 Mar 2011, 21:12) *
Bonsoir,

Citation (bg @ 30 Mar 2011, 10:18) *
Question subsidiaire : est-il possible de mettre un compteur qui compte les tentatives de connexion ?
J'aimerais qu'au bout de 4 tentatives de connexion en 1 minutes, le script s'arrête, en quittant les p2p, pendant 1h et recommence sa ritournelle, 4 tentatives-arrêt et ainsi de suite.
Merci biggrin.gif

Ce serait comme ceci
.....

merci je teste ça vendredi biggrin.gif , il faut que j'aille travailler et faire les déclarations d'impôts huh.gif .
je l'ai lu ligne par ligne, c'est drôlement plus élégant que ce que j'avais fait.

Ce message a été modifié par bg - 31 Mar 2011, 08:59.


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
bg
posté 31 Mar 2011, 16:20
Message #43


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Citation (bg @ 31 Mar 2011, 09:35) *
merci je teste ça vendredi biggrin.gif , il faut que j'aille travailler et faire les déclarations d'impôts huh.gif .

j'ai pas pu attendre, et j'ai testé.
Après quelques modifications sur on quit, il a l'air de bien marcher

Code
on quit
    my quitAppli() -- d'EricaL**
    tell application "System Events"
        tell current location of network preferences
            set t_service to service "VPN xyz" --nom du VPN
            set isConnected to connected of current configuration of t_service
            if isConnected then disconnect t_service
        end tell
    end tell
    continue quit
end quit


quand je quitte l'Applescript, il faut que les p2p quittent et le VPN se coupe.
Merci beaucoup. smile.gif wink.gif biggrin.gif biggrin.gif


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
bg
posté 2 Apr 2011, 08:30
Message #44


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



J'ai un petit problème : je me retrouve, de temps en temps, avec une alerte : "Délai dépassé pour un AppleEvent" avec boutons Modifier et Ok.
C'est le logiciel Vuze qui a du mal à quitter, il n'apparait pas à l'affichage des applications ouvertes mais dans le menu du Dock, il y a Forcer à Quitter en lieu de Quitter.
Le VPN n'est pas lancé et Transmission est fermé, par contre l'Applescript est toujours "actif".
Une fois l'action du Forcer à quitter est effective, le cycle reprend son cours normal.smile.gif
C'est vrai que Vuze met du temps à s'afficher complètement et aussi à quitter.


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 2 Apr 2011, 18:53
Message #45





Guests






Bonjour,

Citation (bg @ 2 Apr 2011, 03:30) *
J'ai un petit problème : je me retrouve, de temps en temps, avec une alerte : "Délai dépassé pour un AppleEvent" avec boutons Modifier et Ok.

Si l'application ne répond plus, cette erreur s'affichera.

Voici la fonction qui gère cela :
Code
on quitAppli()
    repeat with nom in appliNames
        set tQuit to false
        try
            quit application nom
            repeat 6 times
                delay 1
                try
                    tell application nom to if not running then
                        set tQuit to true
                        exit repeat -- l'application a quitté completement
                    end if
                end try
            end repeat
            if not tQuit then error -1712
        on error ---- force quit
            do shell script "/usr/bin/killall " & (quoted form of nom) & " > /dev/null 2>&1 &"
            delay 2
        end try
    end repeat
end quitAppli


Le nom de l'application est en général le même que celui du (process unix), mais pas toujours, vérifie cela avec ce script, tes applications doivent lancés.
Code
do shell script "ps xc"


Si le nom n'est pas le même, il faut modifier le nom dans le script juste avant la commande killall pour que killall fonctionne.
Go to the top of the page
 
+Quote Post
bg
posté 2 Apr 2011, 20:32
Message #46


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Citation (EricaL** @ 2 Apr 2011, 19:53) *
Voici la fonction qui gère cela :
Code
on quitAppli()
    repeat with nom in appliNames
        set tQuit to false
        try
            quit application nom
            repeat 6 times
                delay 1
                try
                    tell application nom to if not running then
                        set tQuit to true
                        exit repeat -- l'application a quitté completement
                    end if
                end try
            end repeat
            if not tQuit then error -1712
        on error ---- force quit
            do shell script "/usr/bin/killall " & (quoted form of nom) & " > /dev/null 2>&1 &"
            delay 2
        end try
    end repeat
end quitAppli


Le nom de l'application est en général le même que celui du (process unix), mais pas toujours, vérifie cela avec ce script, tes applications doivent lancés.
Code
do shell script "ps xc"


Si le nom n'est pas le même, il faut modifier le nom dans le script juste avant la commande killall pour que killall fonctionne.

Bonsoir,
Quand j'exécute
Code
do shell script "ps xc"

je trouve pour Vuze lorsque je le lance : 77030 ?? S 0:15.46 JavaApplicationStub
et quand je lis Moniteur d'activité c'est : 77030 Vuze
C'est fort curieux... rolleyes.gif
Bon pour modifier le nom juste avant la commande killall, je vois pas bien où. sad.gif
Cordialement


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 2 Apr 2011, 21:47
Message #47





Guests






Citation (bg @ 2 Apr 2011, 15:32) *
je trouve pour Vuze lorsque je le lance : 77030 ?? S 0:15.46 JavaApplicationStub
et quand je lis Moniteur d'activité c'est : 77030 Vuze
C'est fort curieux... rolleyes.gif

OK, le nom JavaApplicationStub sera peut-etre dans d'autres processus, car il est un lanceur d'application Java, il est préférable de ne pas utiliser ce nom.

Voici une autre solution, remplace la partie on error --> end try par ceci.
Code
on error ---- force quit
    tell application "System Events" to set thePID to unix id of first process whose name starts with nom
    do shell script "/bin/kill -KILL " & thePID & " > /dev/null 2>&1 &"
    delay 2
end try


Ce message a été modifié par EricaL** - 2 Apr 2011, 21:47.
Go to the top of the page
 
+Quote Post
bg
posté 3 Apr 2011, 11:01
Message #48


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Cher Erical**,

je te remercie de cette aide et de ta patience envers un béotien de l'AppleScript.

J'ai simplement ajouter une ligne pour que lorsque la ligne vpn est ouverte, on puisse lancer l'applescript et que les logiciels associés montent.
Code
else
    set tentatives to 0
    my LanceAppli() --pour qu'il lance les applications lorsque le VPN est ouvert avant d'avoir lancer l'AppleScript
end if


Pour le blocage de Quitter, il faudra que j'attende que ça se produise. laugh.gif

PS : j'ai voulu t'envoyer un MP mais c'est "interdit" ohmy.gif
Je voudrais ton autorisation pour mettre en en tête de cet applescript mes remerciements avant de le publier, gratuitement "oeuf corse!™", sur des forums.
Cordialement
BG

Ce message a été modifié par bg - 3 Apr 2011, 11:18.


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 3 Apr 2011, 17:46
Message #49





Guests






Bonjour,

Citation (bg @ 3 Apr 2011, 06:01) *
Je voudrais ton autorisation pour mettre en en tête de cet applescript mes remerciements avant de le publier, gratuitement "oeuf corse!™", sur des forums.
Cordialement
BG

Oui, je n'ai aucun problème avec ça, tu as mon autorisation. biggrin.gif
Go to the top of the page
 
+Quote Post
bg
posté 4 Apr 2011, 12:49
Message #50


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Impossible, aujourd'hui, d'avoir une connexion stable et l'applescript a marché correctement pendant 6-7h de déconnexions impromptues.
Je viens d'avoir une alerte applescript qui dit :
Il est impossible d'obtenir «class prcs» 1 of application "System Events" whose name starts withe Vuze. Index non valble
boutons modifier et OK

En conséquence de ce que je comprends, c'est le nom de l'application Vuze qui n'est pas reconnu par KillAll puisque Vuze est "Forcer à quitter" dans le menu de Vuze dans le Dock.

Peut-être qu'en augmentant le temps de latence de la reconnexion, Vuze aurait le temps de monter complètement et de quitter. C'est pas très élégant mais si c'est le seul moyen de s'en sortir !

Qu'en penses-tu ?

Ce message a été modifié par bg - 4 Apr 2011, 12:52.


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 4 Apr 2011, 15:09
Message #51





Guests






Citation (bg @ 4 Apr 2011, 07:49) *
Je viens d'avoir une alerte applescript qui dit :
Il est impossible d'obtenir «class prcs» 1 of application "System Events" whose name starts withe Vuze. Index non valble
boutons modifier et OK

C'est cette ligne qui donne cette erreur
Code
tell application "System Events" to set thePID to unix id of first process whose name starts with nom

Le nom Vuze n'existe pas dans les noms des processus, il est encore différent.
Vérifie avec ceci
Code
tell application "System Events" to name of processes
Go to the top of the page
 
+Quote Post
bg
posté 4 Apr 2011, 17:12
Message #52


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Et il n'y a pas "Forcer à quitter".

Citation (EricaL** @ 4 Apr 2011, 16:09) *
Vérifie avec ceci
Code
tell application "System Events" to name of processes


le message est :
La variable thePID n'est pas définie.
boutons Modifier et OK

L'ennui, dans ce cas là, c'est qu'il laisse Vuze ouvert avec du trafic sur le non vpn. ohmy.gif sad.gif sad.gif
Et il n'y a pas "Forcer à quitter".
Quand on clique sur Ok dans l'alerte, le programme reprend son cours.
Ne pourrait-on pas l'utiliser ?

Ce message a été modifié par bg - 4 Apr 2011, 17:46.


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 4 Apr 2011, 17:31
Message #53





Guests






Citation (bg @ 4 Apr 2011, 12:12) *
Et il n'y a pas "Forcer à quitter".

Citation (EricaL** @ 4 Apr 2011, 16:09) *
Vérifie avec ceci
Code
tell application "System Events" to name of processes


le message est :
La variable thePID n'est pas définie.
boutons Modifier et OK

Il faut que tu exécutes la commande dans l'éditeur, pas dans ton script.

Je voulais savoir le nom que l'on récupère dans "System Events" pour Vuze

Edition :

Bonjour,

Exécute ceci dans l'éditeur AppleScript
Code
set x to path to application "Vuze"
return (bundle identifier of (info for x)) & return & x

Donne-moi le résultat, c'est pour une autre solution plus fiable


Ce message a été modifié par EricaL** - 4 Apr 2011, 17:41.
Go to the top of the page
 
+Quote Post
bg
posté 4 Apr 2011, 18:20
Message #54


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Citation (EricaL** @ 4 Apr 2011, 18:31) *
Exécute ceci dans l'éditeur AppleScript
Code
set x to path to application "Vuze"
return (bundle identifier of (info for x)) & return & x

Donne-moi le résultat, c'est pour une autre solution plus fiable

Autant pour moi ou au temps pour moi !

"org.gudy.azureus2
iMac27:Applications:Vuze.app:"

Pour la précédente formule
Code
tell application "System Events" to name of processes

j'obtiens la liste de toutes les applications ouvertes avec ""JavaApplicationStub" en correspondance avec Vuze.


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 4 Apr 2011, 22:40
Message #55





Guests






Bonsoir,

Citation (bg @ 4 Apr 2011, 13:20) *
Pour la précédente formule
Code
tell application "System Events" to name of processes

j'obtiens la liste de toutes les applications ouvertes avec ""JavaApplicationStub" en correspondance avec Vuze.

Voici la solution pour obtenir le process id d'une application dont le nom n'est pas le même dans "System Events", c'est par (l'identifieur de l'application).

Remplace la partie on error --> end try par ceci.
Code
on error ---- force quit
    if nom is "Vuze" then
        set tIdentifier to "org.gudy.azureus2"
    else -- Transmission
        set tIdentifier to "org.m0k.transmission"
    end if
    tell application "System Events" to set thePID to unix id of first process whose bundle identifier is tIdentifier
    do shell script "/bin/kill -KILL " & thePID & " > /dev/null 2>&1 &"
    delay 2
end try

Go to the top of the page
 
+Quote Post
bg
posté 5 Apr 2011, 09:23
Message #56


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 262
Inscrit : 19 Aug 2002
Membre no 3 183



Citation (EricaL** @ 4 Apr 2011, 23:40) *
Remplace la partie on error --> end try par ceci.
Code
on error ---- force quit
    if nom is "Vuze" then
        set tIdentifier to "org.gudy.azureus2"
    else -- Transmission
        set tIdentifier to "org.m0k.transmission"
    end if
    tell application "System Events" to set thePID to unix id of first process whose bundle identifier is tIdentifier
    do shell script "/bin/kill -KILL " & thePID & " > /dev/null 2>&1 &"
    delay 2
end try

j'ai corrigé, j'ai testé à la mimine, mais ça ne vaut pas comme lorsque c'est le vpn qui se déconnecte tout seul dès qu'il y a du trafic.
On va voir wink.gif
Merci beaucoup biggrin.gif biggrin.gif


--------------------
Avant il y avait les bandits de grand chemin, maintenant il y a l'État. J.-P. G.

La biodiversité dans le calme
Go to the top of the page
 
+Quote Post
yvan2mhs
posté 13 Apr 2011, 20:03
Message #57


Nouveau Membre


Groupe : Membres
Messages : 18
Inscrit : 29 Mar 2011
Membre no 166 015



Citation (EricaL** @ 30 Mar 2011, 00:23) *
Bonsoir,

Citation (yvan2mhs @ 29 Mar 2011, 06:59) *
je viens de me rendre compte que cette ligne
Code
tell application "System Events" to tell current location of network preferences

ce change en cette ligne
Code
tell application "System Events" to tell «class locc» of «class netp»

quand le lance l'app qui contient le script blink.gif
je n'y comprends vraiment plus rien unsure.gif

"System events" ne gère pas les connexions sur Mac OS X 10.4.11

Il faut faire le script en utilisant l'application "Connexion à Internet"
Code
tell application "Internet Connect"
    if (get seconds connected of status of configuration "nom VPN") < 0 then
        -- not connected
        connect configuration "nom VPN"
    else
        --connected
    end if
end tell



Merci je vais tester ça, mais j'avais bien calé qu'il y a avait un soucis avec ma 10.4 ^^
merci pour ta réponse
Go to the top of the page
 
+Quote Post
alias44
posté 29 Jun 2011, 08:56
Message #58


Adepte de Macbidouille
*

Groupe : Membres
Messages : 51
Inscrit : 26 Jan 2004
Lieu : TILLIERES (49)
Membre no 13 774



Bonjour à tous,
Je me permet de poser la question suivante :
Quelqu'un aurait il un script permettant juste de lancer une connexion VPN au démarrage d'une session.

J'ai bien essayer ceci, mais sans succès : huh.gif
Je ne maitrise pas l'apple script, j'ai essayé en modifiant le script précédemment cité...


on idle
tell application "System Events" to tell current location of network preferences
set t_service to service "Giganews PPTP" -- nom de votre connexion VPN

if not connected of current configuration of t_service then
connect t_service


end if
end tell

return 5 -- Vérification toutes les 5 secondes
end idle

D'avance merci.
rolleyes.gif


--------------------
MacPro 2*2.8 SL Serveur_MacPro 2*2.8 ML Client_MacBook Pro 13" i7 2.8_M4 128Go+HD750Go_Samsung Galaxy Note_iPad 2_Nikon D7000_Canon HFS10
La vie à plus d'imagination que n'en portent nos rêves... C.C
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 29 Jun 2011, 15:29
Message #59





Guests






Bonjour,

Citation (alias44 @ 29 Jun 2011, 03:56) *
J'ai bien essayer ceci, mais sans succès : huh.gif
Je ne maitrise pas l'apple script, j'ai essayé en modifiant le script précédemment cité...


on idle
tell application "System Events" to tell current location of network preferences
set t_service to service "Giganews PPTP" -- nom de votre connexion VPN

if not connected of current configuration of t_service then
connect t_service


end if
end tell

return 5 -- Vérification toutes les 5 secondes
end idle:

Est ce que tu l'enregistre au format "Application" sur OSX 10.6+ , ou au format "Progiciel" sur OSX 10.5.8 et moins ?

Est ce que tu as coché "Rester en arrière-plan" lors de l'enregistrement ?
Go to the top of the page
 
+Quote Post
alias44
posté 29 Jun 2011, 20:16
Message #60


Adepte de Macbidouille
*

Groupe : Membres
Messages : 51
Inscrit : 26 Jan 2004
Lieu : TILLIERES (49)
Membre no 13 774



Citation (EricaL** @ 29 Jun 2011, 16:29) *
Bonjour,

Est ce que tu l'enregistre au format "Application" sur OSX 10.6+ , ou au format "Progiciel" sur OSX 10.5.8 et moins ?

Est ce que tu as coché "Rester en arrière-plan" lors de l'enregistrement ?


Bonsoir EricaL,

Ca y est ça fonctionne. biggrin.gif

J'ai tout repris depuis le début, copié collé... compilé, enregistré le script, puis enregistré en tant qu'application en ayant coché la case "rester en arrière plan"
Le tout mis dans mes éléments de démarrage, et le tour est joué.

Un grand merci. wink.gif wink.gif


--------------------
MacPro 2*2.8 SL Serveur_MacPro 2*2.8 ML Client_MacBook Pro 13" i7 2.8_M4 128Go+HD750Go_Samsung Galaxy Note_iPad 2_Nikon D7000_Canon HFS10
La vie à plus d'imagination que n'en portent nos rêves... C.C
Go to the top of the page
 
+Quote Post

4 Pages V  < 1 2 3 4 >
Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 19th April 2024 - 03:41