2

How do you use Objective-C (iPhone) to send an AppleScript to a remote computer (on same network) to be executed?

I think something like NSNetService would be of use here, but I don't know.

EDIT: Ok, to clarify, all I want to do is send a command ID or something and then the Computer associate that with the corresponding AppleScript command.

Thanks!

4

2 回答 2

1

看一下SBApplication,它支持eppc:远程应用程序协议来发送远程 Apple 事件。

于 2010-05-10T23:50:08.793 回答
1

NSNetService 允许您广播您的服务的可用性,尽管您仍然需要提供自己的传输机制(例如 HTTPS)来传递数据。

一个更好的问题是:你想要达到什么目标?就个人而言,我对开放任何允许外部方在目标机器上运行任意代码的服务非常谨慎。甚至允许外部方发送 Apple 事件也是一个主要的安全问题。

如果您只是想远程操作 iTunes 或 iPhoto,我建议您实现一个服务器端服务,该服务仅公开您的 iPhone 客户端实际需要的功能。

或者,如果您真的想直接从您的 iPhone 控制 AppleScriptable 应用程序,我建议您通过 ssh 连接到远程 Mac 并使用 osascript 在那里运行 AppleScripts。除此之外,这将安全责任放在 Mac 管理员和 ssh 身上,而不是您自己身上。

于 2010-05-11T18:05:46.083 回答