Bonjour PurRe,
Je n'ai pas utilisé de scripts avec Messages, mais en regardant le dictionnaire de Messages dans l'éditeur de script, voici ce qui est écrit:
service n [inh. item] : A service that can be logged in from this system
elements
contains buddies, chats; contained by application.
properties
id (text, r/o) : A guid identifier for this service.
name (text) : The name of this service as defined in Account preferences description field
enabled (boolean) : Is the service enabled?
connection status (disconnecting/*connected/*connecting/*disconnected, r/o) : The connection status for this account.
status (away/*available/*offline/*invisible) : My status on this service.
status message (text) : My status message, visible to other people on this service while I am online.
service type (AIM/*Bonjour/*Jabber/*iMessage, r/o) : The type of protocol for this service
responds to
log out, log in, send.
D'une part, "service type" demande un espace entre les 2 mots, ce qui ne semble pas être le cas de ton script.
D'autre part, les valeurs possibles de service type semblent être AIM, Bonjour, Jabber ou iMessages. Je ne vois pas que cette variable puisse être assignée à la valeur d'un "account "SMS".
Enfin, r/o signifie que service type est "read only", donc que tu ne peux pas assigner une valeur à cette variable, mais simplement la lire
En cherchant dans le dictionnaire AppleScript de Messages, je ne vois d'ailleurs aucun référence au mot "account", ni à "SMS".
Cependant, mon système et mon éditeur de script étant assez anciens (El Capitain), il se peut que ces mots clés aient été ajoutés par Apple dans des versions ultérieures, comme la tienne.
Je te suggère donc de vérifier en premier lieu dans ta version en ouvrant l'Editeur de Script, menu Fenêtre / Bibliothèque et en ouvrant le dictionnaire de Messages.
Tu pourras ainsi vérifier les valeurs possibles pour service type sur ta version.
Par ailleurs, sur le net, j'ai trouvé des exemples de script tells que:
tell application "Messages" to set targetService to 1st service whose service type = SMS
ou encore
tell application "Messages" to set targetService to id of 1st account whose service type = SMS
1- il n'y a pas de guillemets autour de SMS. Cela sembler indiquer que SMS et pas "SMS" est une valeur valide de service type dans les nouvelles versions de iMessages.
2- cela confirme que service type ne peut être assigné à une valeur, mais que le targetservice est assigné en cherchant parmi tous les services types, celui que à la valeur SMS.
3- le second exemple utilise bien la notion d'account, mais, une fois encore, en lecture et pas en écriture.
j'espère que cela peut t'aider.
Cordialement
Partager