Exemples
La programmation AppleScript en exemples.

Planete
Télécommande via IP (eppc://).
Imaginons qu'on veuille lancer une application sur une machine distante. Pour y parvenir il existe plusieurs solutions telles que Apple Remote Desktop ou Timbuktu. Il est possible aussi de le faire sans l'aide de l'interface graphique en utilisant le protocole eppc. Pour utiliser les scripts ci-dessous, il faut avoir à disposition deux machines, connaitre le nom de l'utilisateur, son mot de passe ainsi qu'avoir activé "Apple Remote Event" dans les préférences système, section "Partage". Les exemples ci-dessous nécessitent d'être adaptés en fonction du nom de l'utilisateur, du nom de son disque dur et de son adresse IP. Ici, "10.0.1.3" n'est qu'un exemple.

Exemple 14 : récupérez l'AppleScript ici.

Le Script :

tell application "Finder" of machine "eppc://utilisateur:mot_de_passe@10.0.1.3"
open file
"nom_du_disques:Applications:Safari.app"
end tell


Explications :
On ne peut pas utiliser la formule classique "tell application "Safari" to activate" car l'application Safari n'est pas active sur la machine cible. Il faut donc l'ouvrir depuis le Finder avec la commande "open".





Exemple 15 : récupérez l'AppleScript ici.

Le Script :

tell application "Safari" of machine "eppc://utilisateur:mot_de_passe@10.0.1.3"
quit
end tell


Explications :
Ici on utilise la formule habituelle car l'application Safari, étant active sur la machine, peut être appelée. On peut donc utiliser la commande "quit" qui existe dans son dictionnaire.





Exemple 16 : récupérez l'AppleScript ici.

Le Script :

tell application "Mail" of machine "eppc://utilisateur:mot_de_passe@10.0.1.3"
activate
set nouveau_mail to (make new outgoing message with properties {visible:true, content:"Voici du contenu", subject:"sujet quelconque"})
tell nouveau_mail
set destinataire to (make new to recipient at beginning with properties {name:"Untel", address:"untel@untel.com"})
end tell
end tell


Explications :
Il s'agit d'un script déjà présent sur le site et qui a été modifié. Il suffit d'ajouter "of machine" pour cibler la machine distante.



Astuces :
• ce protocole eppc permettant de lancer des applications peut se révéler dangereux en terme de sécurité. Il faudra donc penser à ne pas laisser cette option cochée en permanence.
• le protocole eppc ne fonctionne pas de la même manière sur Mac OS X server. Les exemples ci-dessus ne fonctionnent pas.
• les exemples ci-dessus ne fonctionnent pas lorsqu'on cible une machine dont l'utilisateur n'est pas administrateur de la machine.
• les exemples ci-dessus ne fontionnent pas lorsqu'on essaie de cibler sa propre machine. Il faut réellement deux machines.