Xabber. XMPP-клиент для платформы Android. Проблемы и перспективы протокола XMPP (Андрей Ненахов, OSSDEVCONF-2014)

Материал из 0x1.tv

Аннотация

Докладчик
Андрей Ненахов.jpg
Андрей Ненахов
  • Экосистема XMPP, текущее состояние, тренды и перспективы.
  • Проект Xabber.

Видео

on youtube

Посмотрели доклад? Понравился? Напишите комментарий! Не согласны? Тем более напишите.

Слайды

Xabber. XMPP-клиент для платформы Android. Проблемы и перспективы протокола XMPP (Андрей Ненахов, OSSDEVCONF-2014).pdf Xabber. XMPP-клиент для платформы Android. Проблемы и перспективы протокола XMPP (Андрей Ненахов, OSSDEVCONF-2014).pdf Xabber. XMPP-клиент для платформы Android. Проблемы и перспективы протокола XMPP (Андрей Ненахов, OSSDEVCONF-2014).pdf

Расширенные тезисы

XMPP — основанный на XML открытый протокол для обмена мгновенными сообщениями. Он появился в конце 90-х годов в качестве свободной и открытой альтернативы таким сервисам, как ICQ, AOL Instant Messenger, MSN и другим. Всё шло хорошо где-то до 2008-го года, когда аудитория чувствовала необходимость отказаться от проприетарных сервисов и иметь свободную возможность обмениваться мгновенными сообщениями на базе открытого стандарта. Такие компании, как Google, Yandex, Facebook внедряли свои сервисы обмена мгновенными сообщениями (Gtalk, Я.Онлайн), основанные на протоколе XMPP. Facebook, Вконтакте и Livejournal предоставляли XMPP-сервис (правда, Facebook и Вконтакте делали это без поддержки обмена сообщениями со сторонними серверами). Аудитория ICQ сокращалась. Но потом всё изменилось.

Мобильная угроза В 2007-м году публике был представлен iPhone, за которым год спустя последовали устройства на платформе Android. Внезапно оказалось, что простота установки и распространения ПО на мобильных платформах позволила стремительно развиться таким сервисам, как WhatsApp, Tango, Viber и другим. Предоставляя пользователям такие возможности, как обмен файлами, фотографиями, аудио и видеовызовов, сервисы стремительно набрали абонентскую базу. Формально, XMPP протокол также поддерживает все эти возможности, существуют различные XEP на все случаи жизни, но ввиду большого количества различных реализаций клиентского и серверного ПО приходится констатировать факт: пользовательские характеристики XMPP-сервисов сильно отстают от альтернативных предложений.

Ввиду этого протокол XMPP так и не смог стать тем, чем стал email: общим стандартом, отказаться от которого не может себе позволить ни одна компания.

Внезапное, но неизбежное предательство Почувствовав угрозу со стороны альтернативных мобильных сер- висов обмена сообщениями, со стороны ведущих технологических компаний призошёл отказ от поддержки федерации. Все захотели построить собственный закрытый сервис. По этому пути пошёл Google, в 2013-м году представивший публике свой новый продукт Hangouts, заменивший Gtalk. Facebook принуждает пользователей использовать только Facebook Messenger их собственной разработки. Отдельно стоит отметить иезуитский подход компании Google: изначально заявив, что новые возможности Hangouts невозможно было реализовать при помощи открытых стандартов (это неправда), и обещав сохранить совместимость с внешними XMPP-сервисами, совместимость отключалась поэтапно.

Проблемы экосистемы XMPP

Было бы глупо объяснять произошедший отход от поддержки открытых стандартов крупными корпорациями одной лишь капиталистической жадностью. Действительно, широкая номенклатура клиентских XMPP-приложений на разных платформах, неполное по- крытие ими расширений протокола (т. н. XEP — XMPP Extension Protocol) и, как правило, плохой дизайн отталкивают пользователей от этого решения. Так, автору доклада ни разу не удалось успешно осуществить видео или аудиовызов при помощи протокола XMPP с использованием двух различных клиентских приложений.

Проект Xabber

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

В 2010-м году компания «Редсолюшн» выпустила XMPP-клиент Xabber для платформы Android под свободной лицензией GNU GPL v3. Отличием Xabber от прочих мобильных XMPP-клиентов является простой и удобный интерфейс, широкие возможности по настройке отображения списка контактов. В настоящий момент приложение было установлено около 400000 раз. Особой популярностью пользуется функция OTR, позволяющая обмениваться шифрованными сообщениями.

Мы считаем, что главной проблемой XMPP в настоящий момент является комбинация следующих факторов:

  • Плохой дизайн приложений;
  • Отсутствие мультимедийных возможностей (обмен файлами, изображениями);
  • Невозможность удобно и надёжно осуществлять аудио и видеовызовы;
  • Отсутствие надёжного контроля доставки сообщений,

Главной причиной такого положения дел является то, что разработкой клиентских и серверных приложений XMPP занимаются разные разработчики, как правило, никак не связанные между собой. Мы считаем, что для разработки высокотехнологичного и удобного в использовании продукта необходимо тесное взаимодействие разработчиков серверного и клиентского программного обеспечения. Команду должно объединять общее видение продукта. Серверная реализация должна поддерживать все требующиеся пользователям функции, реализуя их с помощью XEP, а клиентское ПО с поддержкой этих функций должно быть представлено на всех ведущих платформах, как мобильных (Android, iOS), так и настольных (GNU/Linux, MacOS, Windows). Приложения должны иметь отличный дизайн, быть просты и удобны в использовании для новичков и иметь возможность гибкой настройки, востребованной опытных пользователей. Мы рассчитываем, что появление на рынке приложений, отвечающих таким стандартам подтолкнет разработчиков прочих XMPP-клиентов также начать поддержку всех необходимых современным пользователям функций.

Для реализации этой задачи мы работаем над новыми версиями Xabber для Android и iOS.

Примечания и отзывы

Plays:1253   Comments:0