Avec OSX 10.10, vous pouvez désormais envoyer et recevoir des messages texte via votre téléphone, depuis votre mac. Est-il possible de le faire par programmation? Soit via Applescript ou une API de reverse engineering?
Avec OSX 10.10, vous pouvez désormais envoyer et recevoir des messages texte via votre téléphone, depuis votre mac. Est-il possible de le faire par programmation? Soit via Applescript ou une API de reverse engineering?
Réponses:
En utilisant:
tell application "Messages"
get name of every service
end tell
J'ai remarqué que j'ai "SMS" comme 4ème option (le vôtre peut être différent). Alors j'ai utilisé:
launch application "Messages"
tell application "Messages"
activate --steal focus
set targetBuddy to "12345550123"
set targetService to id of service "SMS"
set textMessage to "Just a test"
set theBuddy to buddy targetBuddy of service id targetService
send textMessage to theBuddy
end tell
Cela me permet d’envoyer un message texte par SMS. Je ne suis pas sûr à 100% que je l'ai fait correctement, mais cela fonctionne si targetService pointe sur "SMS". Maintenant, convertissez-le en un script qui fonctionne à partir du terminal.
Il existe de nombreux bons exemples d'utilisation d'Applesccript pour envoyer des iMessages. Je n'en ai pas encore trouvé qui fonctionne avec un numéro via sms, le script ci-dessous ne fonctionne qu'avec iMessage. En outre, il est limité au (x) numéro (s) dans vos contacts (liste de contacts) et sera erroné si le contact / numéro ne figure pas dans vos contacts. En voici une que j'utilise pour envoyer des notifications de sauvegarde complète du serveur.
Créez un script appelé " sendMessage.scpt " avec le code suivant:
on run {targetBuddyPhone, targetMessage}
tell application "Messages"
set targetService to 1st service whose service type = iMessage
set targetBuddy to buddy targetBuddyPhone of targetService
send targetMessage to targetBuddy
end tell
end run
Ensuite, à partir de terminal.app, exécutez cette commande pour envoyer iMessage:
osascript /path/to/sendMessage.scpt 12345550123 "Your Text Message to Send"
remplacez simplement 12345550123 par le numéro de votre envoi.
send.scpt
on run {phoneNumber, message}
tell application "Messages"
send message to buddy phoneNumber of service "SMS"
end tell
end run
lancer depuis le terminal comme ceci:
osascript send.scpt +48500123456 'hello andi!'
cela fonctionne à la fois avec iMessage et SMS standard lorsque vous avez activé l'option sur votre iPhone Text Message Forwarding
en configurant votre périphérique MacBook, par exemple.