【发布时间】:2016-12-25 22:53:07
【问题描述】:
所以我正在创建一个基本上可以自动发送信息的applescript。我现在的工作是:
on run {msg, phoneNum}
tell application "Messages"
set serviceID to id of 1st service whose service type = iMessage
send msg to buddy phoneNum of service id serviceID
end tell
end run
这在大多数情况下都有效,但在开始新对话时不起作用。当您将脚本运行到您在消息中没有与之对话的号码时,您会收到一条弹出警告,提示“您的消息没有任何收件人”。但是,这会创建与该人的对话,并且当您再次运行相同的脚本时它会起作用。
我想如果它第二次起作用,一定有一种方法可以以某种方式创建一个新的对话,但是我以前从未真正使用过 applescript 或任何脚本语言,所以我不知道该怎么做。
编辑:发布后我立即想到了一个粗略的解决方法。如果在您发送消息之前发送一个空字符串,您可以创建一个新对话,并且它适用于已经存在的对话。
on run {msg, phoneNum}
tell application "Messages"
set serviceID to id of 1st service whose service type = iMessage
send "" to buddy phoneNum of service id serviceID
send msg to buddy phoneNum of service id serviceID
end tell
end run
虽然这可行,但我想有一个比这个更好/更优雅的解决方案。
【问题讨论】:
-
这不起作用...开始新对话
标签: macos applescript imessage