протокол ТОС

Протокол обмена мгновенными сообщениями AOL

Протокол TOC , или протокол Talk to OSCAR , был протоколом, используемым некоторыми сторонними клиентами AOL Instant Messenger и несколькими клиентами, которые AOL выпустила сама. Где-то около 19 августа 2005 года AOL прекратила поддержку протокола и больше не использует его ни в одном из клиентов обмена мгновенными сообщениями, которые она активно поддерживает, например, в своих клиентах Windows и Mac для систем AOL Instant Messenger и ICQ . Однако когда-то она выпустила несколько собственных клиентов TOC, включая TiK и TAC , написанные на Tcl / Tk , TNT , написанный на Emacs Lisp , все из которых имеют открытый исходный код, и клиент Java, изначально называвшийся TIC, который позже стал веб-апплетом Quick Buddy. AOL также предоставила спецификацию протокола TOC разработчикам в открытом доступе в надежде, что они будут использовать ее вместо собственного протокола OSCAR, который они используют сами. В июле 2012 года AOL отключила серверы TOC2, и теперь невозможно подключиться к AIM с помощью этого протокола. [1]

TOC был протоколом на основе ASCII , тогда как OSCAR — это двоичный протокол. Кроме того, TOC содержал меньше функций, чем его аналог OSCAR. OSCAR предоставляет такие функции, как значки приятелей , передача файлов и реклама .

Как это работает

TOC выступал в качестве оболочки для протокола OSCAR. По большому счету, сервер TOC был не чем иным, как клиентом OSCAR, который прослушивал сокет , транслируя сообщения между двумя протоколами. При входе в систему клиент TOC указывал сервер входа OSCAR (предположительно login.oscar.aol.com или login.icq.com ), который сервер TOC использовал от имени клиента.

TOC использовал FLAP для инкапсуляции своих сообщений так же, как это делает OSCAR, однако FLAP был взломан таким образом, что его можно реализовать на том же порту, что и HTTP- сервер. По умолчанию сервер TOC работал в режиме HTTP, неотличимом от типичного веб-сервера. Если подключающийся клиент вместо HTTP-запроса записывает строку « FLAPON », за которой следуют два CRLF , TOC переключал передачи и начинал читать сообщения FLAP. Получив профиль пользователя, клиент должен был повторно подключиться к TOC и использовать его как HTTP-сервер, который будет размещать профиль пользователя в HTML .

После подключения существовало два основных формата сообщений для коммуникаций внутри FLAP. Сообщения клиент-сервер отправлялись в формате, напоминающем командную строку в стиле Unix : команды с аргументами, разделенными пробелами , кавычки и escape-последовательности с обратной косой чертой . Сообщения сервер-клиент были намного проще: они отправлялись как строки ASCII , разделенные двоеточием , способом, похожим на многие файлы конфигурации Unix . Таким образом, было довольно легко написать клиент, поскольку входящие сообщения было очень легко анализировать, а исходящие команды было легко генерировать.

Это контрастирует с OSCAR, который из-за двоичного представления данных может быть более сложным для понимания.

Оглавление2

Протокол TOC2 — это обновленная версия протокола TOC или протокола «Talk to OSCAR». Его существование никогда не документировалось AOL , и он используется только в нескольких клиентах AOL Instant Messenger . Некоторые клиенты начинают предлагать плагины для TOC2 в свете недавнего закрытия AOL своих серверов TOC. Как и его предшественник, TOC2 — это протокол ASCII и не имеет некоторых функций OSCAR , но в отличие от TOC, TOC2, как известно, поддерживает значки приятелей и прием файловых передач (не отправку). TOC2 работает по сути так же, как TOC, как оболочка для OSCAR. Перенос кода из TOC в TOC2 также удивительно прост.

Из-за сходства между TOC1.0 и TOC2.0 их лучше определить по их различиям, которых всего несколько:

  • В TOC1.0 подключение к пустому списку друзей приводило к тому, что другие не могли видеть вас в сети. Это было исправлено в TOC2.0.
  • В TOC1.0 есть команда toc_add_deny, но нет toc_remove_deny. TOC2.0 исправляет и это.
  • Процесс входа в систему в основном такой же, как и в TOC1.0, но с несколькими новыми параметрами: версия, номер и код, созданный на основе имени пользователя и пароля. Назначение номера неизвестно. Значение по умолчанию — 160, и, похоже, его изменение не оказывает никакого эффекта.
  • Разрешение и запрет были переработаны и стали намного проще и полнофункциональнее в TOC2.0. Команды toc2_add_permit, toc2_remove_permit, toc2_add_deny и toc2_remove_deny присутствуют и доступны в любое время.
  • Команды списка друзей также были улучшены. Управление группами стало проще с командами toc2_new_group и toc2_del_group. Кроме того, можно добавлять или удалять более одного друга одновременно и выбирать группы, в которых они находятся.
  • Также были сделаны некоторые изменения синтаксиса, и к некоторым командам были добавлены параметры. Использование этих параметров пока не определено.
  • Помимо этого, единственным изменением по сравнению с TOC является тот факт, что в большинство команд КЛИЕНТ->СЕРВЕР и наоборот была добавлена ​​цифра «2». Например, IM_IN2, UPDATE_BUDDY2 и т. д.
  • TOC2 также ограничивает количество ScreenNames, которые могут войти в систему с одного IP-адреса (10).

Смотрите также

Ссылки

  1. ^ «Возможное прекращение поддержки AIM [Обновление: подтверждено]». 27 июля 2012 г.

Реализации

Оглавление
  • Py-TOC (питон)
  • Net::AIM (perl)
  • PHPTocLib (php)
  • Тик (Tcl/Tk)
  • TNT (Emacs Lisp)
  • TAC (Tcl, без графического интерфейса)
  • AOL Quick Buddy Applet (TIC) (Java Applet)
  • naim (ncurses, не-GUI)
  • мини-цель (C++)
  • SimpleAIM (Java)
Оглавление2
  • Fluent.Toc (C#)
  • Raven::Aim (perl)
  • Плагин для Miranda Instant Messenger
  • PHPTocLib (PHP)
  • BlueTOC (PHP)
  • TerraIM (C++)
  • TNT ( Emacs Lisp )
Retrieved from "https://en.wikipedia.org/w/index.php?title=TOC_protocol&oldid=1100186733"