Script réseau

Garkam

Membre confirmé
22 Avril 2020
228
81
42
Non pas besoin en théorie le chmod, c'est pour pour pouvoir l’exécuter directement en cliquant sur son icône
Modifie ton fichier :
Bash:
sudo networksetup -getinfo Wi-Fi | grep -q Subnet: || networksetup -setairportnetwork en0 "FreeWifi"
ton mot de passe doit être saisi à l'aveugle.
EDIT : c'est mon test :rolleyes: après en0 c'est bien sur "tonRéseau" "TonCode" Pfff
 
Dernière édition:

Gregoryen

Membre confirmé
Club MacG
16 Juin 2013
476
26
29
Saint-Martin-de-Crau
www.gregoryen.fr
HUG ?

Alors j'ai fait ta commande avec la Wifi de ma box. J'ai mis le MDP de mon ID du Mac et HOP magie il s'est connecté !

Mais j'ai une question, comment il à deviné le MDP ?? Je l'ai fait plusieurs fois en plus pour être sur, j'ai supprimé le Wifi de ma box dans WiFi avancés...

Par contre pour l'iPhone ça ne veux pas. On dirais que c'est un protocole différent. Pourtant la case Partager la connexion est coché, il n'est pas branché en USB, ni connecté a un réseau..

EDIT: Il me fait mentir j'ai retesté la commande avec l'iPhone et ça à marché.. Mais la question subsiste toujours, comment il à trouvé le MDP ?
 

Garkam

Membre confirmé
22 Avril 2020
228
81
42
Parce qu'il est enregistré dans ton trousseau, à chaque fois que tu changes de réseau il ne te le demande plus ;)
Par contre ça devrait marcher avec ton partage, moi ça marche... alors mon partage c'est avec un phone android mais je ne pense pas que ce soit un problème..
 

Gregoryen

Membre confirmé
Club MacG
16 Juin 2013
476
26
29
Saint-Martin-de-Crau
www.gregoryen.fr
Je me disais bien qu'il y avait une raison rationnelle xD J'ai testé avec la box de la voisine mais ça n'a pas marché.

À la limite, la commande pour la WiFi, ce n'est pas grave, car si l'iPhone est pas à côté il ne le propose pas, par contre quand je suis connecté et que je le mets très loin il est toujours connecté..
C'est trop aléatoire pour avoir un truc bien. Donc pour la commande, elle marche mais on ne sait pas quand elle ne marchera pas xD
Cela ne me dérange pas de changer la WiFi manuellement, j'aime bien le faire d'autant plus que sur Big Sur les menus sont jolis.
C'est juste un clic et je choisis c'est plutôt rapide par rapport au changement de priorité qui nécessite plusieurs clics rébarbatifs.

Cependant j'aimerais bien que la commande que tu m’as proposé au début pour changer la configuration entre Automatic et Maison marche mais j'ai une erreur.
 

Garkam

Membre confirmé
22 Avril 2020
228
81
42
Alors ça devrait marcher refais l'essai dans un fichier Textedit , je pense pense que tu as une couille voir deux :D avec Terminal, perso je travaille avec iTerm qui m'apporte plus d'options
 

Gregoryen

Membre confirmé
Club MacG
16 Juin 2013
476
26
29
Saint-Martin-de-Crau
www.gregoryen.fr
BON !!!
Ça marche... Je suis juste débile, car quand tu ma expliqué la commande scselect je n'avais pas bien compris. Je me demandais pourquoi je devais copier tout ces numéros... BREF j'ai mis SCSELECT dans le terminal pour m'assurer d'avoir les deux configs, ensuite j'ai fait SCSELECT IPHONE et magie tout marche...

Ralalalala... ‍️:facepalm: Bon ben je te remercie beaucoup pour ton aide et ta détermination, le sujet est résolu avec succès !

Bonne soirée à toi ! :)
 
  • J’aime
Réactions: Garkam
M

Membre supprimé 1129907

Invité
La commande
Bloc de code:
networksetup -getinfo Wi-Fi | grep Subnet:
ne retourne rien chez moi (pas de ligne Subnet:)

Bloc de code:
networksetup -getinfo Wi-Fi | grep Subnet
Retourne par contre le "Subnet mask"

Ce ne serait donc pas plutôt ceci ?
Bloc de code:
networksetup -getinfo Wi-Fi | grep -q Subnet
 

Garkam

Membre confirmé
22 Avril 2020
228
81
42
Non lance la commande complète :
Bash:
networksetup -getinfo Wi-Fi | grep -q Subnet: || networksetup -setairportnetwork en1 "$ssid" "$password"
 

Garkam

Membre confirmé
22 Avril 2020
228
81
42
BON !!!
Ça marche... Je suis juste débile, car quand tu ma expliqué la commande scselect je n'avais pas bien compris. Je me demandais pourquoi je devais copier tout ces numéros... BREF j'ai mis SCSELECT dans le terminal pour m'assurer d'avoir les deux configs, ensuite j'ai fait SCSELECT IPHONE et magie tout marche...

Ralalalala... ‍️:facepalm: Bon ben je te remercie beaucoup pour ton aide et ta détermination, le sujet est résolu avec succès !

Bonne soirée à toi ! :)
Bon le principale c'est qu'avec tout ça , tu vas pouvoir te faire un script qui cartonne :up::up:
 
  • J’aime
Réactions: Gregoryen

Gregoryen

Membre confirmé
Club MacG
16 Juin 2013
476
26
29
Saint-Martin-de-Crau
www.gregoryen.fr
Bon le principale c'est qu'avec tout ça , tu vas pouvoir te faire un script qui cartonne :up::up:
Oui je vais faire ça avec automator ^^ Je vais même faire en sorte d'avoir une seule app et qu'il me pose la question "Quelle connexion veux-tu ? " et choisir iPhone ou Maison ^^

Encore merci vous deux !
 
  • J’aime
Réactions: Garkam

Gregoryen

Membre confirmé
Club MacG
16 Juin 2013
476
26
29
Saint-Martin-de-Crau
www.gregoryen.fr
Bon je pensais que ça serais plus facile mais je n'y arrive pas je vais mettre trop de temps.
J'ai réussi à afficher une liste avec AppleScript, mais j'aurais préféré de gros boutons plus gros et plus agréable pour les yeux.
Seulement je ne sais pas comment lui faire des conditions pour lui dire que si le choix 1 alors exécute Scselect iPhone sinon annuler.
Et une autre, si tu fais choix 2 alors Automatique sinon annuler.
 

Garkam

Membre confirmé
22 Avril 2020
228
81
42
Par contre pour l'iPhone ça ne veux pas. On dirais que c'est un protocole différent.
Tu as sûrement raison de mémoire avec mon ancien iPhone, j'avais j'avais un logo comme celui-ci continuity-instant-hotspot-icon.png
alors qu'avec mon Android j'ai celui là wifi_PNG62305.png

voilà un script qui permute tes configurations avec AppleScript :

AppleScript:
tell current application
    
    set wifi_maison to "FreeBox_Bruno" # A modifier par le ssid de ta box
    set config_maison to "Automatic" # Nom Configuration Maison
    set config_iphone to "Iphone" # Nom Configuration Iphone
    set device_wifi to do shell script "networksetup -listallhardwareports | awk '/Wi-Fi/{getline; print $2}'"
    set mon_SSID to do shell script "networksetup -getairportnetwork " & device_wifi
    
    if mon_SSID contains wifi_maison then
        do shell script "scselect " & config_iphone
    else
        do shell script "scselect " & config_maison
    end if
    
end tell

EDIT: j'ai modifié le script de manière à définir automatique le n° de device (en0, en1, en2 etc...) en fonction de la config
 
Dernière édition:

Gregoryen

Membre confirmé
Club MacG
16 Juin 2013
476
26
29
Saint-Martin-de-Crau
www.gregoryen.fr
Sur mon iPhone j'ai bien les deux chaines reliés. Pour Android je ne sais pas je n'en ai pas, je vais essayer avec Blue Stack mais je ne pense pas que je puisse le faire vu que c'est une machine virtuelle.

Alors, bonne nouvelle, j'ai mis le script dans Apple Script dans automator et il m'affiche un processus terminé, j'ai le son de réussite.

La mauvaise nouvelle c'est qu'il ne s'est rien passé, pas de fenêtre ni de changement de config.

J'ai essayé de rajouter ça pour la fenêtre :

Bloc de code:
display dialog "Type de connexion" buttons {"iPhone", "Automatic"} default button 2
 

Garkam

Membre confirmé
22 Avril 2020
228
81
42
Donc si tu actives sur ton partage de connexion et que tu exécutes le script tu devrais basculer sur ta configuration "Automatic"

EDIT: J'ai mis à charger mon vieux iPhone pour trouver une solution car le mieux serait de pouvoir permuter la connexion avec la commande
Bash:
networksetup -getinfo Wi-Fi | grep -q Subnet: || networksetup -setairportnetwork en1 "$ssid" "$password"

Je regarde ça cet aprèm ;)
 
Dernière édition:

Gregoryen

Membre confirmé
Club MacG
16 Juin 2013
476
26
29
Saint-Martin-de-Crau
www.gregoryen.fr
Donc si tu actives sur ton partage de connexion et que tu exécutes le script tu devrais basculer sur ta configuration "Automatic"

EDIT: J'ai mis à charger mon vieux iPhone pour trouver une solution car le mieux serait de pouvoir permuter la connexion avec la commande
Bash:
networksetup -getinfo Wi-Fi | grep -q Subnet: || networksetup -setairportnetwork en1 "$ssid" "$password"

Je regarde ça cet aprèm ;)
En fait, pour la WI-Fi je préfère le sélectionner manuellement. Ce que je cherche à faire c'est de faire une app Automator qui, lorsqu'on clique cela me propose deux boutons, maison ou iPhone.
En plus ça évite de laisser le mot de passe en clair dans un script.
J'ai trouvé un site qui explique mais j'ai du mal. Je vais essayer quand même.
 

Garkam

Membre confirmé
22 Avril 2020
228
81
42
Ok essaie ça :

AppleScript:
tell current application

    set config_list to {"Automatic", "Iphone"}
    set choix to choose from list config_list
    say choix
      
    if choix contains "Automatic" then
        do shell script "scselect Automatic"
    else
        do shell script "scselect Iphone"
    end if
  
end tell

Si c'est "Maison" remplace "Automatic"
 
Dernière édition: