Отправить AppleScript на удаленный компьютер в Objective-C - PullRequest
2 голосов
/ 11 мая 2010

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

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

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

Спасибо!

Ответы [ 2 ]

1 голос
/ 11 мая 2010

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

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

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

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

1 голос
/ 11 мая 2010

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

...