Alerte et notification sur le niveau batterie de la souris |
Bienvenue invité ( Connexion | Inscription )
Alerte et notification sur le niveau batterie de la souris |
4 Mar 2017, 13:55
Message
#1
|
|
Macbidouilleur de vermeil ! Groupe : Membres Messages : 910 Inscrit : 14 Oct 2003 Lieu : Breizh, Roazhon Membre no 10 376 |
Bonjour tous,
J'ai un hackinstosh depuis 2014 (voir ici : http://forum.macbidouille.com/index.php?showtopic=377566) et il est super stable. La SEULE chose qui le fait planter : le bluetooth qui part en vrille quand la batterie de la souris (une Magic Mouse) est à plat. A tout les coups : freeze et hard reboot. Ca fait des mois que je me dis qu'il faut que je mette en place un script pour surveiller le niveau de batterie et m'alerter quand il passe en-dessous d'un certain seuil. D'autant plus que comme j'utilise des piles rechargeables, la vitesse de décharge est très hétérogène. Voici donc le script bash qui produit une notification si le %age de batterie est < à 25 % et affiche un message Finder si ça passe en-dessous de 15 %, pour une action immédaite. Code #!/bin/sh # https://developer.apple.com/library/content/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_cmds.html#//apple_ref/doc/uid/TP40000983-CH216-SW224 # https://abs.traduc.org/abs-fr/ch07s03.html warning_title="Alerte batterie" warning_msg="Il faut changer les piles de la souris !" # get a string with the percent level #ioreg -c BNBMouseDevice | grep '"BatteryPercent" = ' | tr -cd [:digit:] batt_level=$( ioreg -c BNBMouseDevice | grep '"BatteryPercent" = ' | tr -cd [:digit:] ) # for testing #batt_level=20 echo "batterie souris = $batt_level %" warning_msg="$warning_msg \n $batt_level %" # test -le -> <= if [[ $batt_level -le 15 ]]; then # display Finder warning #osascript -e 'tell app "Finder" to display dialog "un message"' osascript -e 'tell app "Finder" to display alert "'"$warning_msg"'" with title "'"$warning_title"'" buttons {"OK"} with icon caution' # elif [[ $batt_level -le 20 ]]; then # display notification #osascript -e 'display notification "une notification"' osascript -e 'display notification "'"$warning_msg"'" with title "'"$warning_title"'" sound name "Purr"' # fi Ensuite, avec le logiciel LaunchControl j'ai créé un cron "local.check_batt.job" de type "Global Agents". Il lance le script toutes les heures (3600 s). Une évolution intéressante serait d'automatiquement éteindre le bluetooth si la charge est < à 15 %. AU moins comme ça : ça appelle une action et éviterait un plantage du mhack. Ce message a été modifié par YF-alubook - 4 Mar 2017, 14:00. -------------------- Hackintosh 2017 - OS X 10.14 - i5 3,9 GHZ - 16 Go - Fractal Define R5
MacBook Air 13 mars 2020 - 512 - 8 Go |
|
|
Nous sommes le : 26th April 2024 - 20:21 |