Моя цель - отправлять автоматизированные тексты в macOS на телефонный номер в записи FileMaker, используя шаг Perform AppleScript
FileMaker (поэтому tell app "FileMaker"
отсутствует в приведенном ниже сценарии).
Это контакты, которых нет в базе данных Contacts.app, поэтому tell app "Messages" to send ...
не вариант, по крайней мере, напрямую.
Вот мой текущий сценарий.
set _delay to 0.5
set _phone_number to repetition 1 of cell "APPLESCRIPT_PIPE" of layout "DEV"
set the clipboard to _phone_number
set _msg to repetition 2 of cell "APPLESCRIPT_PIPE" of layout "DEV"
tell application "System Events"
tell process "Messages"
set frontmost to true
keystroke "n" using {command down}
delay _delay
keystroke "v" using {command down}
delay _delay
keystroke return
delay _delay
tell text area 1 of scroll area 4 of splitter group 1 of window 1
set value to _msg
delay _delay
keystroke return
end tell
end tell
end tell
activate
Это работает безупречно при отправке текста на iPhone, но когда получатель использует телефон без iMessages, иногда он не доставляется.
![enter image description here](https://i.stack.imgur.com/B30G3.png)
Нажатие на кнопку «Не доставлено», а затем «Попробовать еще раз» отправляет ее по SMS.
tell app "Messages" to send...
работает, если номер телефона находится в базе данных Contacts.app, по крайней мере, он есть на нескольких, которые я тестировал, но добавление контакта в базу данных и затем попытка отправить этот контакт текст не Работа. Вот сценарий, который я попробовал:
tell application "Contacts"
set _person to make new person with properties¬
{first name:"Bruce", last name:"Wayne"}
tell _person
make new phone at end of phones of _person with properties¬
{label:"mobile", value:"1234567890"}
end tell
save
end tell
tell application "Messages"
send "Chuck's test" to buddy "1234567890" of service "SMS"
end tell
Контакт добавляется в базу данных, но сообщение не отправляется. Ошибка не генерируется, просто не отправляется.
У кого-нибудь есть идея, как сделать так, чтобы тексты на телефонах Android проходили в первый раз, или, в качестве запасного варианта, способ определить, когда они этого не делают?