Удаленное соединение через iChat

Создать удаленное к Мак ОС Х можно разными путями: VNC, SSH, ARD (Apple Remote Desktop), VPN и так далее… путей много и выбор за вами, но я хочу рассказать о ещё одном альтернативном пути. Для начала вам надо иметь OS 10.5 ( а.к.а Леопард ) так как нам нужен iChat 4, а так же пара Jabber аккаунтов… например GTalk или любой другой.

И так как это работает теоретически. iChat имеет опция для шаринга десктопа… На удалённой машине включается iChat, далее вы со своего iChat-а спрашиваете удаленную машина что бы начать шаринг десктопа… Удаленная машина соглашается и вы получаете соединение с удалённой машиной, где вы имеете все права под которым бежит iChat. Теперь остается вопрос, а как удалённая машина согласиться на соединение если на том конце не кого нету ( например как на моём сервере )? Тут придёт на помощь Apple Script, что бы автоматизировать соглашение…

Переходим к более практической части… И так на удалённой машине вы уже настроили iChat с соответственным Jabber аккаунтом в моём случае это будет турим@меирз.нет ( анти-спам… гы-гы ). Далее добавляем контакт то есть меня меир@меирз.нет ( я использую свой собственный Jabber сервер, но это безразлично каким Jabber сервером вы пользуетесь… )… Добавили контак, а теперь нам надо что бы удалённая машина автоматически принимала приглашение на удалённое соединение. Для этого идём ( на удалённой машине ) в Finder -> /Library/Script/iChat/ и копируем файл “Auto Accept.applescript” в туже папку.

Далее переименовываем файл в что-то более подобающее… например “Auto Accept Remote.applescript”. Теперь открываем файл любым редактором, например обычным TextEdit-ом. Далее нам надо отредактировать 2 строки, а точнее удалить их… Ищем эту часть кода:

on received audio invitation theText from theBuddy for theChat
if (screen sharing of theChat is none) then
accept theChat
end if
end received audio invitation

И превращаем в это:

on received audio invitation theText from theBuddy for theChat
accept theChat
end received audio invitation

Готово, сохраняем файл и возвращаемся в iChat. Выбираем из контакт листа того для кого мы хотим разрешить авто-подсоединение в моём случае это я MeIr. Правый клик на контакт и жмём на “Show Profile”, далее жмём на вкладку “Alerts”. В “Event:” выбираем “Audio Invitation” и ставим галку в “Run AppleScript” и из листа выбираем “Auto Accept Remote.applescript”.

Всё готово… теперь когда я буду делать запрос на удалённое соединение к Turim то запрос будет автоматически принят на удалённой машине. Пожалуй всё… если у кого будут вопросы то пишите в комменты.

Такой вариант для удалённого соединения имеет свои плюсы и минусы:
+ Вам не надо настраивать NAT таблицу в роутере… ( что не сложно, но некоторые не имеют доступа к роутеру ).
+ Вам не надо знать внешний IP

– У вас должна быть Mac OS 10.5 а.к.а Леопард
-/+ Вы должны пользоваться iChat. Многие предпочитают альтернативы типо Adium, а зря! iChat предлагает на много больше…

P.S: Небольшой демо видео о выше описанном материале.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.