Parfois, j'ai besoin de télécharger de très gros fichiers à partir d'Internet en utilisant des torrents (j'utilise Transmission) et le Wi-Fi tombe toujours. J'ai acheté plusieurs routeurs et modems et aucun d'entre eux ne fonctionne. Je rencontre ce problème depuis un moment (environ 10 ans, sous Windows et Mac).
Maintenant, j'ai décidé d'apprendre un peu et d'écrire du code AppleScript qui se reconnecte automatiquement:
repeat
if (do shell script "curl --connect-timeout 1 <WIFI_IP>") = "curl: (7) couldn't connect to host" then
do shell script "networksetup -setairportpower AirPort off"
do shell script "networksetup -setairportpower AirPort on"
do shell script "networksetup -setairportnetwork en1 <ROUTER_NAME> <ROUTER_PASS>"
end if
end repeat
la partie après les then
travaux, il se déconnecte du Wi-Fi et le reconnecte, mais le problème vient de la if
partie, car je ne sais pas comment détecter le moment où la connexion Wi-Fi est interrompue par le torrent. Comment dois-je faire cela?
En outre, une répétition avec un intervalle serait vraiment bien, quelque chose comme: repeat every 10 seconds
.
delay 300
juste avant,repeat end
pour empêcher le script de rechercher en permanence une connexion. 300 secondes le feraient vérifier toutes les 5 minutes.