Enviar mensajes de texto mediante programación a través de la aplicación Messages en OS X 10.10

6

Con OSX 10.10 ahora puede enviar y recibir mensajes de texto a través de su teléfono, desde su mac. ¿Es posible hacer esto programáticamente? ¿Ya sea a través de applecript o una API de ingeniería inversa?

    
pregunta Glenn Vandamme 19.12.2014 - 02:06

3 respuestas

5

Hay bastantes buenos ejemplos para usar Applesccript para enviar iMessages. Todavía no he encontrado uno que funcione con un número a través de sms, el siguiente script solo funciona con iMessage. También se limita al número (s) en sus contactos (lista de amigos) y emitirá un error si el amigo / número no está en sus contactos. Aquí hay uno que uso para enviar notificaciones de una copia de seguridad del servidor completa.

Cree un código de manzana denominado " sendMessage.scpt " con el siguiente código:

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

Luego desde terminal.app ejecuta este comando para enviar iMessage:

osascript /path/to/sendMessage.scpt 12345550123 "Your Text Message to Send"

simplemente cambia 12345550123 al número al que envías.

Enlace a la guía original de stackeoverflow

    
respondido por el tron_jones 19.12.2014 - 15:52
5

Utilizando:

tell application "Messages"
    get name of every service
end tell

Noté que tengo "SMS" como una cuarta opción (la tuya puede ser diferente). Entonces utilicé:

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

Esto me permite enviar un mensaje de texto a través de SMS Relay. No estoy 100% seguro de haberlo hecho correctamente, pero funciona si targetService apunta a "SMS". Ahora, para convertirlo a un script que funcione desde el terminal.

    
respondido por el Dirk 22.12.2014 - 12:27
1

enviar.scpt

on run {phoneNumber, message}
    tell application "Messages"
    send message to buddy phoneNumber of service "SMS"
    end tell
end run

ejecuta desde una terminal como esta:

osascript send.scpt +48500123456 'hello andi!'

esto funciona tanto con iMessage como con SMS estándar cuando ha habilitado en su iPhone la opción Text Message Forwarding configurando su dispositivo de macbook, por ejemplo.

    
respondido por el andilabs 14.10.2017 - 15:59

Lea otras preguntas en las etiquetas