Voila donc le script qui envoi un mail avec l'application "mail" d"apple, lorsqu’il y a une erreur.
Et le processus de mise en place.
Bloc de code:
tell application "Finder"
set nb to 0
set infodisk to ""
try
set infodisk to do shell script "/usr/local/bin/softraidtool status"
set infodisk to infodisk as string
set nb to offset of "Fail" in infodisk
on error messaError from f to t partial result p
tell application "Mail"
set newMessage to make new outgoing message with properties {subject:"SoftRaid erreur", content:"Erreur disque ! " & messaError}
tell newMessage
set toaddresslist to {"[email protected]"}
make new to recipient at end of to recipients with properties {address:toaddresslist}
end tell
send newMessage
end tell
end try
end tell
Dans ce script:
- tu remplaces «
[email protected] » par ton adresse mail
-Tu enregistres le script : menu—> fichier (avec touche option )—>Enregistrer sous…, tu choisis format de fichier : Application et tu te choisis un nom pour ton appli (évite les espaces ! ) dans mon exemple j’ai mis « Erreur_disque » et choisis comme destination le dossier Applications.
-Tu peux déjà essayer en lançant l’application par un simple double-clic
Lors du 1ere lancement de l’application,
Donner les autorisations à l’application et à mail .
Si tout fonctionne , alors on passe à la programmation
une solution Avec l'application "Calendrier"
Tu peux, si tu veux, créer un calendrier spécifique pour çà !
1 - Tu crées un évènement dans calendrier (il faudra faire un évènement par heure ou tu veux que l’application se lance)
2 - Tu cliques sur la date, tu paramètres: commence, se termine etc...
3 - Tu cliques sur" alerte aucune", tu sélectionnes personnaliser ...
3 - A la place de message tu choisis "ouvrir le fichier"
4 - A la place de calendrier tu choisis "Autre..." et tu sélectionnes ton application
5 - Tu choisis au moment de l'évènement pour exécuter ton application
6 - Tu cliques sur "OK"
7 - Récurrence tu choisis personnaliser et tu sélectionnes les jours ou tu veux lancer l’application puis toutes les semaines.
A répéter pour chaque heures ou l’appli doit être lancée
Autre solution avec un "Cron"
Tu ouvres le terminal, dans la fenêtre du terminal tu tapes
env EDITOR=nano sudo crontab -e
une demande de mot de passe , tu le tapes en aveugle (rien ne s’affiche à l’écran) et tu valides avec enter.
Tu es dans l’application minimaliste Nano
Là tu entres ta commande au format :
minute (entre 0 et 59)
heure (entre 0 et 23)
jour (entre 1 et 31)
mois (entre 1 et 12)
jour semaine (entre 0 et 6 —> 0 = dimanche)
Commande à exécuter (exemple pour ouvrir une application, open Chemin_application)
Chaque valeur étant séparée par un espace
Dans les valeurs une * = tous
plusieurs valeurs à séparer par une virgule
Une série —> début-fin
Donc tout est sur une seule ligne.
Bien sur dans les exemples ci-dessous tu remplaces le nom de mon application "erreur_disque.app" par le nom de ton appli...
exemple pour toutes les heures, de 10h à 16h, les lundi, jeudi et vendredi ouvrir l'application "erreur_disque"
0 10-16 * * 1,4,5 open /Applications/erreur_disque.app
Autre exemple pour toutes les heures de 10h00 à 17h00, tous les jours du mois (du 1 au 31), tous les mois (de 1 à 12), du lundi au vendredi
0 10-17 * * 1-5 open /Applications/erreur_disque.app
Pour enregistrer cette commande faire ctrl+o puis enter
Puis ctrl+x pour quitter nano
Dans le terminal Tu devrais avoir la confirmation: “installing new crontab
Voilà j'attends le retour...