Nous n'évoquerons pas le cas de Linux , la philosophie même de ce système d'exploitation rendant quasiment infinies les possibilités d'automatisation. En revanche, nous vous montrerons quelques solutions intéressantes sous Windows, du planificateur de tâches jusqu'à l'utilisation de scripts. De plus, nous vous présenterons une application surprenante disponible sous Mac OS X : Automator.
Commençons doucement : le planificateur de tâches
Le planificateur de tâches de Windows est probablement le degré 0 de l'automatisation sur un ordinateur. Mais ne vous y trompez pas, cette fonction du système d'exploitation de Microsoft peut se révéler tout à fait précieuse, notamment pour les débutants qui n'ont pas envie d'aller chercher d'autres logiciels comme nnCron.Si vous voulez utiliser le module de tâches planifiées de Windows, rendez-vous dans le panneau de configuration, puis choisissez « Tâches planifiées ». Cliquez sur « Création d'une tâche planifiée ». Après avoir cliqué sur « Suivant », vous verrez alors apparaitre une fenêtre qui vous proposera certaines (et c'est là l'un des problèmes) des applications présentes dans votre ordinateur. Si vous ne trouvez pas votre bonheur, cliquez sur « Parcourir ». Il vous faudra alors savoir où se trouve l'application qui vous intéresse parmi l'arborescence de votre disque dur. Sachez par exemple que le module de défragmentation, pourtant inclus directement dans le système d'exploitation, ne figure pas parmi la liste proposée. Si vous ne savez pas où se trouve l'exécutable correspondant, cela est rapidement décourageant...
La liste proposée lors de la création d'une tâche est incomplète et la recherche de l'exécutable est alors nécessaire
Une fois que votre choix est fait, vous devez définir la périodicité de votre action. Dans notre exemple, nous appelons notre tâche « Défragmentation », et nous la planifions toutes les semaines. Vous pouvez opter pour tous les jours, tous les mois ou à l'ouverture d'une session par exemple. Même prévue toutes les semaines, nous pouvons tout de même sélectionner plusieurs jours pour exécuter notre défragmentation. Nous choisissons donc ici de l'effectuer les lundis et jeudis de chaque semaine.
Les règles de périodicité ne sont pas particulièrement bien définies, mais on peut faire à peu près ce que l'on veut en cherchant un peu
Une fois définis les jours et l'heure à laquelle notre action s'exécutera, un résumé de la tâche apparaît. Nous cochons la case « Ouvrir les propriétés de cette tâche... », nous verrons pourquoi après. Il vous reste à entrer votre mot de passe (si vous en possédez un, ce que nous vous conseillons) pour valider la tâche qui sera créée si vous cliquez finalement sur suivant.
Un résumé de votre tâche s'affiche en fin de création, cette dernière étant finalement validée par votre mot de passe utilisateur
Nous avions coché plus haut la case permettant d'afficher les propriétés de la tâche créée. Elles se composent de trois onglets qui renseignent sur l'application utilisée, sa planification et ses paramètres. Des options qui n'étaient pas évoquées durant la création de la tâche sont ici présentes : la possibilité d'utiliser des horaires différents si plusieurs jours sont définis (comme c'est le cas ici), celle d'activer ou non la tâche (une case à cocher en bas de l'onglet « Tâche »), ou encore l'option permettant de démarrer l'action uniquement l'ordinateur est inactif (depuis un temps que vous pouvez définir). La gestion de l'alimentation est également disponible dans l'onglet « Paramètres » et sera utile notamment pour les utilisateurs d'ordinateurs portables.
Ces paramètres permettent d'ajuster plus finement certaines options invisibles lors de la création de la tâche
Une fois les paramètres validés, votre création apparaît alors dans la fenêtre des tâches planifiées. Est-ce terminé ? Certains l'auront peut-être déjà remarqué, mais une défragmentation c'est bien, mais définie sur un disque dur, c'est mieux ! Eh oui, ni le module de création de tâche, ni même les paramètres plus complets de cette dernière n'ont proposé de disque dur auquel appliquer la tâche créée... En réalité il vous faut définir cela « à la main » dans l'onglet « Tâche » des paramètres avancés, en ajoutant à la ligne « Exécuter » des arguments supplémentaires comme, par exemple :
C:\WINDOWS\system32\defrag.exe c:
Inutile donc de dire que si les options de planifications (possibilité de préciser l'heure, les jours, la fréquence de manière précise) sont suffisantes, le module reste tout de même un outil très peu convivial et rien ne permet de guider l'utilisateur lors de la création de tâches, même très simples. Pour effectuer une défragmentation de son disque régulièrement, il sera bien plus facile au novice de faire cela « à la main » plutôt que d'essayer d'une part de trouver l'exécutable dans l'arborescence de son ordinateur, et d'autre part de trouver les arguments à ajouter derrière l'application... De plus, ce module ne vous permet absolument pas d'effectuer un enchaînement d'opérations, par exemple un nettoyage de disque puis une défragmentation. Il vous faudra pour cela créer deux tâches différentes. Enfin, il vous faut oublier des actions légèrement plus complexes comme vider l'historique de votre navigateur à heure régulière par exemple si vous voulez vous contenter du planificateur de tâches de Windows. Sinon, passons à la page suivante.
Un peu plus dur : les macros
Nous passons tout de suite dans un monde permettant beaucoup plus d'actions que ne le l'autorisait le planificateur de tâches de Windows. Les macros sont des suites de tâches où le passage de variables d'une action à une autre est possible. Vous pouvez par exemple utiliser comme variable d'entrée dans un programme un texte écrit par ailleurs avec un éditeur, ou prendre le résultat d'une application (par exemple la sortie d'un calcul réalisé grâce à l'outil dédié de Windows) pour l'utiliser comme entrée dans une autre application (un tableau Excel par exemple). Les possibilités deviennent alors très nombreuses, voire infinies. La combinaison des actions va être source de tâches complexes et adaptées à un besoin précis.Pour illustrer ces propos, nous avons choisi le logiciel Super Macro, sachant qu'il en existe bien d'autres, comme Macro Angel par exemple. Ce logiciel, bien qu'a priori un peu austère, est probablement l'un des plus convivial à l'usage. Le monde de l'automatisation sous Windows n'est définitivement pas très convivial... Que cela ne tienne, tentons d'y comprendre quelque chose dans l'interface de Super Macro qui, agréable surprise, est en français. Trois zones sont à explorer principalement :
- les barres de tâches « Standard » et « Supplément », qui vont nous servir à définir les opérations ;
- la partie inférieure de la fenêtre, dans laquelle s'affichent les informations concernant les différentes commandes disponibles, ces dernières étant listées dans la partie droite du logiciel ;
- la partie centrale enfin, dans laquelle vont s'afficher les différentes actions définies par l'utilisateur.
En explorant la barre d'icônes « Standard », vous pouvez avoir une petite idée des actions réalisables avec ce logiciel, puisque sont disponibles :
- un module pour entrer du texte, qui pourra servir de variable d'entrée pour une autre application (ouvrez par exemple un document Word, ce module vous permettra alors d'y saisir du texte) ;
- un clavier virtuel qui vous permet de réaliser des combinaisons de touches, par exemple un CTRL+S pour sauvegarder un document, ou un ALT+F4 pour fermer une application. Si vous désirez en apprendre plus concernant les raccourcis-clavier, n'hésitez à consulter notre article « raccourcis-clavier, ou comment se passer de souris ». Ce clavier est bien pensé, puisque différentes actions sont prévues : appuyé, relâché ou appuyé et relâché, ce qui permet de réaliser à peu près tout ce que l'on veut en terme de raccourcis-clavier ;
- un module permettant de connaître la position de votre souris sur l'écran, afin de réutiliser cette position pour amener la souris aux coordonnées souhaitées ;
- un second fait pour simuler des clics ; vous pouvez appuyer le bouton de droite, relâcher le bouton de gauche ou toute autre combinaison qui pourrait vous servir ;
Concernant la souris, il est possible de trouver les positions de la souris et de simuler des clics divers
- vous pouvez également exécuter un programme externe, ce module permettant également d'entrer une adresse mail ou Internet ;
- la petite horloge représente la fonction de pause, dont vous pouvez définir le temps ;
- vous pouvez définir un « label », étiquette qui vous permet d'établir un point de repère précis dans votre chaîne d'actions ; ce point pourra être utilisé dans une procédure « Goto » par exemple (symbolisé par l'icône suivante), commande qui permet de revenir à un label donné ;
- le dernier lien permet d'ajouter à votre liste d'actions une commande « Quitter », qui se passe de commentaire.
Ces fonctions permettent déjà à elles seules de réaliser un grand nombre d'enchainements d'actions. Pour les utilisateurs plus pointus, la barre « Supplément » apporte des fonctions complémentaires intéressantes :
- définir un champ de données ;
- ouvrir une fenêtre de questions en entrant le titre de la fenêtre, le message, la réponse pouvant être utilisée comme variable d'entrée pour l'action suivante ;
- effectuer des calculs simples ou complexes ;
Les variables disponibles dans l'onglet « Supplément » peuvent être utilisées pour des scripts plus avancés
Finalement, au fur et à mesure de vos choix, vous voyez apparaître dans la fenêtre principale les différentes actions qui seront exécutées dans l'ordre que vous avez défini. Si vous voulez modifier cet ordre, cliquez sur l'action et appuyez simultanément sur CTRL et la flèche du haut pour le placer plus haut dans la liste, CTRL plus flèche du bas pour le faire descendre. Une fois vos derniers ajustements effectués, vous pouvez simuler l'exécution de votre chaîne d'actions en utilisant le bouton vert de lecture situé en haut à gauche de la fenêtre.
Il est clair que ce type de logiciel est assez puissant et permet de réaliser un grand nombre de créations originales et adaptées aux besoins de chacun. Des possibilités plus évoluées, comme l'utilisation de boucles ou de tests (avec des conditions, comme la commande if) sont également disponibles, via les commandes « EXAMINE », « GOTO » et « LABEL » par exemple. Enfin, des modules additionnels peuvent être téléchargés sur le site de Super Macro.
Pour aller plus loin : les scripts
Le logiciel que nous vous avons présenté avant n'est ni plus ni moins qu'une interface capable d'interpréter vos commandes en les transformant dans un langage compris par l'ordinateur. Ce langage peut être par exemple le Basic ou le Visual Basic. Le programme que nous allons vous présenter maintenant s'appuie sur un langage proche du Basic, mais contrairement à Super Macro, les libertés sont plus grandes et l'utilisateur peut à son aise disposer des commandes de boucles ou de conditions. Le logiciel propose son propre langage afin d'alléger la syntaxe, mais celui-ci est nettement plus complexe et proche d'une programmation que ce que proposait Super Macro. Ce programme est AutoIt et nous allons voir qu'il possède quelques fonctions très intéressantes.La devise du concepteur d'AutoIt pourraît être « si ce n'est pas faisable en un clic, c'est trop compliqué ». C'est un peu exagéré, mais c'est la philosophie du logiciel qui se compose :
- d'un éditeur fonctionnel, proche de ceux que l'on peut trouver sous Linux ;
- d'un module permettant d'obtenir simplement des variables du système comme la position de la souris, celle d'une fenêtre ou le titre d'une fenêtre ;
- d'une fonction capable de transformer vos scripts en exécutable, ce qui permet de lancer une série d'action sans forcément avoir installé AutoIt. Vous pouvez même attribuer à votre « application » une icône personnalisée.
Récupérer des informations du système ou créer un exécutable à partir de votre script : rien n'arrête AutoIt !
Contrairement à Super Macro, on ne trouve pas sur l'interface d'AutoIt les actions de bases ni même celles plus évoluées. Tout, absolument tout, doit être saisi « à la main », ce qui demande donc d'avoir lu en détail le module d'aide du logiciel, par ailleurs particulièrement bien écrit mais... en anglais. Autre prérequis : une connaissance basique des commandes de l'interpréteur de lignes de commandes (ou shell) de Windows. Elle vous sera très utile si vous ne tenez pas à utiliser exclusivement le langage du logiciel. Il vous suffit alors de demander à AutoIt d'ouvrir l'application cmd.exe et vous pourrez alors saisir de façon automatique du texte dans l'interpréteur.
La liste des commandes disponibles sous le Shell de Windows est loin d'être infinie...
Quel est l'intérêt d'AutoIt nous direz-vous alors ? Premièrement, le nombre de commandes disponibles via le shell de Windows est assez limité. De plus, il existe des commandes très simples à utiliser avec AutoIt, qui pourraient vous prendre beaucoup de temps à coder autrement, comme la possibilité d'afficher une fenêtre d'avertissement d'une certaine taille contenant un texte écrit par vos soins :
SplashTextOn ("Avertissement", "File is being updated", "100", "100")
En guise de démonstration, voici un (tout) petit exemple de ce qu'il est possible de faire avec AutoIt :
BlockInput(1)
;Avec cette commande, vous bloquez les entrées des périphériques comme la souris ou le clavier.
Run("cmd")
;Lance l'interpréteur en ligne de Windows.
sleep(2000)
;Met le logiciel en attente pendant deux secondes (ou 2000 millisecondes).
send("ftp -s:ftp.txt 88.xxx.xxx.xx{ENTER}")
;Ecrit le texte « ftp -s:ftp.txt 88.xxx.xxx.xx » dans l'interpréteur, puis simule l'appui sur la touche Entrée. Cette commande se connecte à un serveur et utilise un fichier ftp.txt qui contient l'identifiant et le mot de passe et récupère un fichier intitulé Idees.doc
sleep(3000)
send("move Idees.doc C:\")
send("{ENTER}")
send("Oui")
send("{ENTER}")
Run("C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE C:\Idees.doc")
;Après avoir changé le document de répertoire (déplacé à la racine du disque dur), on lance Word.
SplashTextOn ("Avertissement", "File is being updated", "100", "100")
sleep(2000)
send("{PGDN}{PGDN}{PGDN}")
;On lance un message d'avertissement précisant la mise à jour du fichier, on attend deux secondes que le document s'ouvre et on se place en bas de la page en simulant 3 appuis sur la touche « Page suivante».
send("J'ajoute la ligne du jour")
sleep(3000)
send("^s")
;On ajoute une ligne, on attend 3 secondes, puis un simule un CTRL+S pour sauvegarder le document.
sleep(1000)
send("!{F4}")
;On attend encore 1 seconde et on ferme la fenêtre par un ALT+F4.
SplashOff()
;Le message d'avertissement précédent se ferme pour laisser un autre (précisant la réussite de l'opération) apparaître.
SplashTextOn ("Avertissement", "File succesfully updated", "100", "100")
sleep(2000)
SplashOff()
BlockInput(0)
;On fait une pause de deux secondes, on ferme le message d'avertissement et on libère les périphériques d'entrée.
sleep(2000)
send("set path=C:\Program Files\WinRAR\;%path%")
;Encore une pause et on prend soin de définir le chemin de l'application Winrar
send("{ENTER}")
send("rar a -r C:\backup C:\Idees.doc")
;De retour dans l'interpréteur de commande (qui n'était pas fermé), on lance une compression du fichier Idees.doc
send("{ENTER}")
send("exit")
;On sort de l'interpréteur.
send("{ENTER}")
exit
;Finalement, on sort du script.
Vous l'aurez compris, le point-virgule sert à commenter les lignes sous AutoIt. Ce genre de chose n'est qu'un exemple vaguement représentatif des possibilités du logiciel. Lorsque vous êtes satisfait de votre script, n'oubliez pas de créer votre exécutable avec le module dédié, ce qui vous évitera de passer par AutoIt pour exécuter votre application. Enfin, vous pouvez utiliser le planificateur de tâches de Windows pour faire fonctionner votre création aux heures et aux jours que vous aurez choisis.
Le petit robot d'Apple : Automator
Oubliez tout ce que nous avons vu jusqu'à présent, voici Automator. Vous ne trouverez pas ce logiciel dans notre , il est livré par défaut avec Mac OS X. Lorsque vous lancez ce programme, vous apercevez immédiatement que l'interface n'a rien à voir avec ce qu'on a pu trouver sous Windows et ce n'est qu'un début.Dès le lancement du programme, l'interface interpelle comparée à celles des logiciels évoqués plus haut
Le principe d'Automator est le suivant : vous allez combiner des actions entre elles pour arriver à un résultat voulu. Mais ici aucune programmation n'est nécessaire, aucun script à rédiger. Tout se fait en un temps record grâce aux actions pré-programmées par Apple. Au lancement du logiciel, vous pouvez donc choisir parmi 5 catégories : fichiers et dossiers, musique et audio, photos et images, texte et personnalisé. Les 4 premières catégories proposent quelques actions les plus courantes dans les thèmes correspondants, mais la partie la plus intéressante est clairement contenue dans l'onglet « Personnalisé ».
C'est en effet dans cette partie du logiciel que vous allez pouvoir définir vos propres enchaînements. A votre disposition dans la colonne de gauche, vous trouverez différentes actions liées à des choses aussi diverses que la musique, le courrier électronique, les vidéos QuickTime ou la manipulation de dossiers, et des variables comme l'adresse IP ou l'heure et la date, à l'image de ce qui existe sous Super Macro.
Les actions et les variables vont vous permettre de créer des actions complexes
Sur la partie inférieure gauche de la fenêtre, vous pouvez observer de précieuses indications concernant les variables, mais surtout les actions : pour chacune d'elles vous est précisé ce qu'elle nécessite en entrée, le résultat et les éventuelles dépendances. Par exemple, la fonction permettant de convertir un texte en fichier audio va nécessiter une action précédente, celle d'aller chercher un texte. Le résultat est quant à lui annoncé sous la forme d'un fichier.
Automator est également capable d'enregistrer vos actions pour les reproduire. Pour cela rien de plus simple, cliquez sur le bouton rouge placé en haut à droite de la fenêtre. Un message apparaît alors pour préciser que l'enregistrement est en cours. Toutes vos actions sont alors scrupuleusement étudiées et analysées.
Une fois l'enregistrement terminé (il vous faut cliquer sur le bouton « Stop »), une liste répertoriant tous vos faits et gestes est alors affichée dans la fenêtre principale et vous pouvez définir cet enchaînement comme action à reproduire. Sachez également que vous pouvez définir des boucles, alors qu'il manque à notre avis la possibilité d'imposer des conditions.
Quelques exemples
Pour illustrer nos propos, deux exemples précis pour lesquels nous avons utilisé Automator : le premier permet de rechercher parmi les contacts de carnet d'adresses les personnes dont c'est l'anniversaire, de préparer un mail avec un texte prédéfini et une image de fête, et d'envoyer le tout aux contacts concernés.Pour fabriquer une telle action, nul besoin de programmation, mais juste de quelques clics :
- dans la rubrique « Contacts », cliquez sur l'action « Rechercher les contacts avec anniversaire » et déplacez cette action dans la zone de travail ;
- dans la rubrique « Mail », choisissez « Envoyer des voeux d'anniversaire », écrivez votre texte (sans préciser évidemment de prénom et d'éléments trop précis) et ajoutez l'image de votre choix. Notez qu'un correcteur orthographique est même présent et actif lors de la rédaction de votre texte ;
- toujours dans la même rubrique, déplacez l'action « Envoyer les messages de la boîte d'envoi » pour finaliser la procédure. C'est fini !
Un autre exemple plus complexe, la création d'un DVD contenant un diaporama Quicktime réalisé à partir de photos d'un répertoire précis. On commence par aller chercher les photos via la fonction « Obtenir les éléments du Finder indiqués » et le bouton « Ajouter ». Ensuite, nous décidons de rogner les images selon une largeur et une hauteur définie.
Dès lors, Automator vous avertit que l'opération à venir va modifier les fichiers images sélectionnés et vous demande si c'est réellement votre souhait. Si vous répondez « Non », il ajoute alors automatiquement une action qui va copier les fichiers sur le Bureau avant de les rogner. Vous pouvez bien entendu choisir l'emplacement de la copie.
Une fois les images à la bonne taille, vous pouvez ajouter l'action « Créer un diaporama Quicktime », diaporama dont vous pouvez régler le temps d'attente entre deux photos, le titre et le format (autonome, pour inclure les images dans le diaporama, ou non). Reste enfin à graver votre création : pour cela, choisissez la commande « Graver un disque » dans la rubrique « Utilitaires » et le tour est joué ! Vous pouvez tester votre enchaînement en utilisant le bouton « Exécuter » en haut à droite de la fenêtre.
Conclusion
Du planificateur de tâches de Windows à Automator en passant par AutoIt, l'éventail des possibilités est vaste. Le planificateur de tâches, nous l'avons vu, n'est adapté qu'à quelques besoins ponctuels et ne propose pas suffisamment d'options pour satisfaire l'utilisateur novice comme l'initié. Super Macro ou AutoIt sont respectivement assez convivial et particulièrement puissant. Tout le problème quand on dispose d'un tel arsenal de fonctions, de variables, bref, de telles possibilités, est probablement d'écrire un script optimisé, qui utilise le minimum de manipulations possibles. Autre difficulté : prévoir toutes les actions à effectuer, et même éventuellement des comportements inattendus. C'est là tout le « sport » de la programmation.Et si certains des scripts que nous vous avons présentés peuvent vous paraître inutiles, il ne faut pas négliger le plaisir de programmer, d'avoir un résultat, de faire faire à l'ordinateur ce qu'on attend de lui. Espérons que cet article aura fait germer en vous de nombreuses idées, car la principale limite à l'utilisation de ces logiciels est probablement... l'imagination !