Mail.Ru Агент + Аська = interoperability

Discussion in 'Мировые новости. Обсуждения.' started by Ice_Burn, 29 Sep 2011.

  1. Ice_Burn

    Ice_Burn Member

    Joined:
    10 Feb 2009
    Messages:
    217
    Likes Received:
    26
    Reputations:
    1
    [​IMG]

    У проектов Mail.Ru Агент и ICQ большое событие – мы запустили серверный транспорт, дающий пользователям обеих сетей возможность общаться друг с другом. Иными словами, пресловутое interoperability или пиринг, о котором так долго говорили продвинутые пользователи мессенджеров, наконец-то свершилось!

    Что это значит для пользователя?

    Очень просто.
    Пользователи Mail.Ru Агента могут добавлять в свои списки контактов пользователей ICQ (и, конечно, обмениваться с ними сообщениями). При этом иметь учетную запись ICQ необязательно.

    Тот же принцип работает и в обратную сторону – пользователи ICQ могут добавлять в свой существующий контакт-лист пользователей Mail.Ru Агента.
    Пользователи Mail.Ru Агента могут находить пользователей ICQ через анкетный поиск (и наоборот).
    Для простоты мы будем рассматривать взаимодействие двух сетей на примере Mail.Ru Агента, хотя в ICQ-клиентах это работает совершенно аналогично.

    При поиске контакта по имени-фамилии теперь не обязательно задумываться о том, каким мессенджером пользуется этот человек – поиск автоматически выполняется сразу в обеих сетях.

    [​IMG]

    Я уже использую Mail.Ru Агент в качестве ICQ-клиента. Что делать??

    Ничего особенного. В Mail.Ru Агенте вы по-прежнему можете настроить учетную запись ICQ и самостоятельно решать, в какую учетную запись (Mail.Ru Агента или ICQ) добавить очередной ICQ-контакт. В это сложно поверить или даже просто понять, но добавление контактов из Агента в учетную запись ICQ в Агенте тоже работает! ;)

    Как это реализовано технически?

    Одной из ключевых задач, поставленных перед разработчиками, было обеспечение обратной совместимости со старыми клиентами (как Mail.Ru Агента, так и ICQ). Новый функционал реализован на серверной стороне, поэтому общение с пользователями, добавленными из другой сети, возможно почти во всех версиях Mail.Ru Агента и ICQ, включая старые. Но чтобы составит лучшее впечатление о сервисе, лучше все-таки обновить клиентские приложения.

    Клиенты Mail.Ru Агента по-прежнему подключаются к своим серверам через собственный протокол, клиенты ICQ делают то же самое. Клиенты Mail.Ru Агента «видят» ICQ-контакты в формате 12345@uin.icq, клиенты ICQ – в виде обычного адреса e-mail.

    Таким образом, аккуратно написанные клиентские приложения (ожидающие в качестве UIN'а строку, а не число), вообще не замечают никаких изменений, и корректно работают с новым типом контактов прямо «из коробки».

    Основная же «магия» происходит между серверами. Мы разработали специальный интерфейс между серверами Mail.Ru Агента и ICQ (на основе протокола SIP/SIMPLE), в рамках которого выполняется трансляция данных из одного протокола в другой и наоборот.

    В клиентах была проделана лишь «косметическая» работа – например, ICQ-контакты в списке контактов Mail.Ru Агента были визуально выделены (обозначены «цветочками»), обновлены тексты и подсказки, и т.д.

    [​IMG]

    Пока поддерживаются лишь самые базовые возможности обоих протоколов: передача сообщения, запрос/подтверждение авторизации, поиск контактов, presense-статусы, запрос анкеты. Однако в дальнейшем, в зависимости от популярности пиринга, мы планируем поддержать большинство популярных функций, включая передачу файлов, голосовые и видеозвонки и т.д.

    Обратите также внимание, что мы все еще тестируем наш сервер и исправляем ошибки, поэтому работоспособность interoperability гарантируется только на официальных клиентах Mail.Ru Агенты и ICQ. И, конечно же, мы, как и всегда, будем благодарны вам за багрепорты.

    Загрузить официальные клиенты для PC можно здесь:

    Mail.Ru Агент 5.9
    ICQ 7.6

    Зачем поддерживать два разных клиент-серверных протокола?

    Вопрос справедливый – на первый взгляд, проще перевести клиенты Mail.Ru Агента и ICQ на некий единый протокол, чем поддерживать два типа серверов с прослойкой между ними. Однако причина у такого «зоопарка» весьма прозаична – обратная совместимость. Аудитория обеих сетей составляет десятки миллионов пользователей в сутки, и все они пользуются клиентами самых разных версий. К сожалению, десктоп или мобильные платформы – это не веб, и мгновенно обновить все клиентские приложения на пользовательских устройствах просто невозможно. Особенно остро эта проблема стоит для сети ICQ, в которой значительную часть клиентов составляют клиенты «неродные».

    Поэтому, несмотря на нашу стратегическую готовность переключить оба продукта на одну единую технологию, нам, к сожалению, придется поддерживать два разных протокола еще довольно долго. Тем не менее, определенные шаги по направлению к унификации мы делаем уже сейчас.

    Кто выиграет от interoperability?

    Учитывая, что аудитория Mail.Ru Агента и ICQ примерно сопоставима, мы ожидаем, что синергия пойдет на пользу обеим сетям. Вообще, мы считаем, что искусственные барьеры в области персональных коммуникаций давно изжили себя, поэтому чем большим количеством способов пользователи различных сервисов смогут общаться друг с другом, тем будет лучше для всех.

    Дата: 29 сентября 2011
    Источник: http://habrahabr.ru/company/mailru/blog/129440/
    Илья Наумов, руководитель проекта Mail.Ru Агент