Sí: tanto la red actual como las redes potenciales pueden tener secuencias de comandos desde la línea de comandos / shell de Unix, de modo que se extienden a la mayoría de los lenguajes de automatización, incluido AppleScript. Haría su programa final en Python o Swift, pero aquí le indicamos cómo comenzar su proceso con intensidad de señal.
Obtener la red conectada actual es fácil y rápido. Las entradas relevantes para la señal y el ruido son los valores de radio sin procesar en el canal negociado, pero sería mejor descartar la velocidad de transmisión, ya que siempre que la red X sea más rápida, no importa el ruido o la señal desde la transmisión. la velocidad disminuye cuando la señal cae o el ruido aumenta.
system_profiler SPAirPortDataType
:
AC88U_5G:
PHY Mode: 802.11ac
BSSID: 54:36:9b:2d:78:e2
Channel: 149
Country Code: CN
Network Type: Infrastructure
Security: WPA2 Personal
Signal / Noise: -26 dBm / -81 dBm
Transmit Rate: 867
MCS Index: 9
Other Local Wi-Fi Networks:
AC88U:
PHY Mode: 802.11n
BSSID: 54:36:9b:2d:78:e1
Channel: 7
Country Code: CN
Network Type: Infrastructure
Security: WPA2 Personal
Signal / Noise: -18 dBm / 0 dBm
La exploración de todas las radios y canales posibles es bastante más lenta (de 5 a 10 segundos en lugar de una fracción de segundo) que el simple volcado anterior, por lo que necesita un programa para manejar eso o un script que sea mucho más comprensión. Comenzaría con airport --scan
y filtraría su SSID preferido o dirección MAC conocida en sus estaciones base:
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport --scan
Una vez que haya escaneado, system_profiler
debería informar más resultados, ya que los resultados del análisis parecen estar almacenados en caché localmente por un tiempo.
Los ingenieros de WiFi realizan esta optimización todo el tiempo controlando la velocidad de transmisión / MCS. Simplemente elija todas las velocidades de transmisión que desee para desalojar a todos los clientes de su radio principal y una vez que pierdan la conexión a las altas velocidades preferidas, todos los sistemas operativos caerán y luego recogerán la siguiente radio disponible. Mucho más fácil que la implementación de scripts personalizados para todos los dispositivos que se conectan a sus dos radios.
Además, no hace falta decir que, si pudiera hacer que ambas radios se transmitieran en el mismo SSID, entonces sus productos Apple simplemente se moverían pero quizás tenga una buena razón para no tener el mismo nombre de red y simplificar su trabajo.
Y para responder a la pregunta @nohillside "cómo decidir qué Wi-Fi es más fuerte" aquí hay algunas pautas.