ТОС-протокол


Протокол 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, который из-за двоичного представления данных может быть более трудным для понимания.