1

我将以我是 AppleScript 新手的事实作为开头...

我已将 iChat 设置为在收到新消息时运行此脚本:

using terms from application "iChat"

    on message received theMessage from theBuddy for theChat

        set theHandle to handle of theBuddy

        tell application "MyApp"
            receivedInstantMessage from theHandle message theMessage
        end tell

    end message received

end using terms from

这可以按预期工作,MyApp(我正在编码)接收两个字符串(好友的句柄和消息内容)。唯一的麻烦是这个脚本似乎只有在 iChat 中至少收到一条消息后才能工作。即脚本似乎只从第二条消息开始起作用。如果好友注销,他必须在我的应用收到 AppleEvent 之前再次发送两条消息。

我在这里犯了一个基本错误吗?

4

1 回答 1

0

第一条消息实际上是“文本邀请”,因此您的通知脚本将需要另一个处理程序:

on received text invitation theMessage from theBuddy for theChat
  --  your tell app statement goes here
end received text invitation
于 2011-02-01T12:08:43.823 回答