Отправить AppleScript на удаленный компьютер в Objective-C

Как вы используете Objective-C (iPhone) для отправки AppleScript на удаленный компьютер (в той же сети) для выполнения?

Я думаю что-то вроде NSNetService было бы полезно здесь, но я не знаю.

РЕДАКТИРОВАТЬ: Хорошо, чтобы уточнить, все, что я хочу сделать, это отправить идентификатор команды или что-то, а затем компьютер связать это с соответствующей командой AppleScript.

Спасибо!

2 ответа

Взгляни на SBApplication, который поддерживает eppc: протокол удаленного приложения для отправки удаленных событий Apple.

NSNetService позволяет вам транслировать доступность вашего сервиса, хотя вам все равно нужно предоставить собственный транспортный механизм (например, HTTPS) для передачи данных.

Лучший вопрос будет: чего вы пытаетесь достичь? Лично я был бы крайне осторожен, если бы открывал какой-либо сервис, который позволял бы внешним сторонам запускать произвольный код на целевой машине; даже разрешение сторонним лицам отправлять события Apple было бы серьезной проблемой безопасности.

Если вы просто хотите, скажем, манипулировать iTunes или iPhoto удаленно, я бы порекомендовал внедрить серверный сервис, который предоставляет только те функции, которые действительно необходимы вашему клиенту iPhone.

В качестве альтернативы, если вы действительно хотите управлять приложениями AppleScriptable непосредственно со своего iPhone, я бы предложил подключиться к удаленному Mac и использовать osascript для запуска там сценариев AppleScripts. Помимо всего прочего, это возлагает ответственность за безопасность на администратора Mac и ssh, а не на себя.

Другие вопросы по тегам