Интересные Совпадения (Или Миранда Im Jabber И Мобильный Агент Mail.ru): Снова Двадцать Пять

Не успел я проснуться, как в мою дверь постучали МЛУ с новостью о том, что вышел Mail.ru Агент с поддержкой Jabber. И тут началось самое интересное.

Внимание! Я ни в коем случае не хочу сказать, что код Мобильного Mail.ru Агента использует наработки из GPL-проектов.

Ээта статья - всего лишь исследование работы агента Он сказал, что первое, что он сделал, это заглянул в консоль xml и увидел вот это:

 
 <presence from="test1234@ vke.ru/MobileAgent " to="jabber@ vke.ru/Notebook "  xml:lang="en ">
 <priority>5</priority>
 <c xmlns=" http://jabber.org/protocol/caps " node=" http://miranda-im.org/caps " ver="1.x" />
 <status>I'm online!</status>
 <status>Custom status</status>
 </presence>
 
Посмеявшись над двойным статусом и версией с подстановочными знаками, мы заметили node. Кто-нибудь решил воспользоваться капсулами Миранды? Далее мы решили сравнить работу с сервером по открытому протоколу XMPP сразу после входа в систему (пакеты с сервера были вырезаны за ненадобностью)
Миранда IM Jabber Мобильный агент v1.15
 
 <iq type="set" id="mir_0">
 <bind xmlns="urn:ietf:params:xml:ns:xmpp-bind">
 <resource>Miranda</resource>
 </bind>
 </iq>
 
 
 <iq type='set' id='seq_10'>
 <bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>
 <resource>MobileAgent</resource>
 </bind>
 </iq>
 
 
 <iq type="set" id="mir_1">
 <session xmlns="urn:ietf:params:xml:ns:xmpp-session" />
 </iq>
 
 
 <iq type='set' id='seq_11'>
 <session xmlns='urn:ietf:params:xml:ns:xmpp-session'/>
 </iq>
 
 
 <iq type="get" id="mir_2">
 <query xmlns="jabber:iq:private">
 <roster xmlns="roster:delimiter" />
 </query>
 </iq>
 
 
 <iq type='get' id='seq_12'>
 <query xmlns='jabber:iq:private'>
 <roster xmlns='roster:delimiter'/>
 </query>
 </iq>
 
 
 <iq type="get" id="mir_3">
 <query xmlns="jabber:iq:private">
 <storage xmlns="storage:bookmarks" />
 </query>
 </iq>
 
?
 
 <iq type='get' id='seq_13'>
 <query xmlns='jabber:iq:private'>
 <storage xmlns='storage:bookmarks'/>
 </query>
 </iq>
 
 
 <iq type="get" to="vke.ru" id="mir_4">
 <query xmlns=" http://jabber.org/protocol/disco#info " />
 </iq>
 
 
 <iq type='get' to='vke.ru' id='seq_14'>
 <query xmlns=' http://jabber.org/protocol/disco#info'/ >
 </iq>
 
Небольшой анализ: Закроем глаза на то, что идентификаторы пакетов похожи.

В случае с Мирандой они формируются начиная с нуля, здесь с 10. Кстати, если AOL вдруг внедрит jabber-сервер, то им стоит принять это к сведению - можно забанить хоть одного клиента =).

Каждый пакет соответствует пакету Миранды.

Можно было бы списать это на простое совпадение, если бы не несколько забавных моментов, а именно:

  • Пакет mir_2 в Миранде используется для запроса разделителя групп с сервера, подгруппы мы храним в виде «Группа\Подгруппа\Подподгруппа\etc», насколько я знаю, этот метод используется только Мирандой и ткаббером, в агента для корректного отображения вложенных групп мы не нашли
  • Агент почему-то запрашивает закладки с сервера, хотя в интерфейсе они не реализованы
  • Запрос mir_4 (seq_14) — диско-сервер — при входе в систему делается для проверки наличия на сервере PEP для отображения меню выбора «Настроение и активность».

    У агента нет ни того, ни другого.

  • Непонятно, зачем вообще в презентациях отправляется тег caps, ведь агент caps тоже не поддерживает
В целом у нас есть стойкое ощущение, что разработчик не читай описание протокола стандартное, и не знает, что там и зачем.

Стоит отметить, что не все одинаково.

Например, вход на сервер осуществляется методом авторизации PLAIN, а Миранда использует DIGEST-MD5. Кроме того, наши коллеги только что прислали мне этот журнал:

JasFas0la (21:50:44 26.04.2008) Джаббер есть в Миранде.

что предопределяет его успешную интеграцию в программу.

JasFas0la (21:52:11 26.04.2008) а про Миранду я вспомнил потому.

Вы не против, если в проекте будут использоваться наработки из открытых источников? т.к.

в новом клиенте я уже не пишу руками.

а доверяю источникам от Миранды.

?

Это один из разработчиков бывшего смэппера, которого, как известно, купил mail.ru. Я не знаю, действительно ли разработчики использовали наш код. Я просто привел вам факты.

Кстати, исходного кода клиента, естественно, нигде нет. УПД: официальная позиция Mail.ru :

Мобильный Агент Mail.Ru для Jabber не использует фрагменты исходного кода Miranda и написан полностью самостоятельно разработчиками Mail.Ru. Что касается якобы обнаруженных «сходств», то это следствие предпринятых нами мер предосторожности.

Чтобы новости о выходе продукта не утекли за пределы компании раньше времени, было решено перестраховаться и поручить программистам определять Агента с поддержкой Jabber как Миранду.

А статус бета-версии очень четко объясняет тот факт, что не все возможности интерфейса в Mail.Ru Агенте с Jabber, «встроенные» в код, уже реализованы.

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

При чем здесь копирование кода — не очень понятно.

Комиссарова Валерия, Пресс-атташе Mail.Ru Связи с общественностью

Теги: #miranda #jabber #mail.ru #im #GPL #мессенджеры
Вместе с данным постом часто просматривают: