Jabber что это такое

Это — jabber.ru, крупнейший jabber сервер в рунете. По совместительству — старейший и, вероятно, самый надёжный. Если вы не представляете себе что такое jabber или xmpp, то вы можете прочесть статью в wikipedia (она излишне заумная). Просто поверьте нам на слово: jabber — это чат. Чат, который одинаково хорошо работает на телефоне, компьютере и вообще где угодно.

Jabber правильно называть XMPP (Extensible Messaging and Presence Protocol), но мы по привычке продолжим использовать старое название.

Просто чат?

Да, просто чат. Чат 1 на 1, чат со множеством людей, чат с самим собой. Просто, надёжно и легко. Не способ найти собеседников, поддерживать социальную сеть или контролировать пользователя. Просто чат.

Уже потом, на волне популярности, к этому чату приделали возможность играть в шахматы, оповещения о почте, прогнозы погоды, всяческих ботов и "шлюзы" в другие сети (например, icq). Но изначально, jabber — попытка сделать общение между людьми проще.

Вот далеко не полный список наших плюсов:

  • Мы бесплатны, надёжны и независимы. И это, пожалуй, самое важное.
  • В jabbere используется множество независимых серверов. Неполадки одного сервера или банкротство компании не разрушат систему общения в целом;
  • Наличие клиентов под все основные платформы. Можно пользоваться одним чатом и на телефоне, и на компьютере, и где угодно ещё;
  • Отсутствие рекламы. Ваши сообщения не используются для продажи вам же рекламы. А со спамом мы боремся;
  • Возможность использовать со своими адресами (user@your.domain.tld). Как email, только быстрее (это же "instant messaging"!);
  • Зашифрованные сообщения позволяют передавать в jabber’е любую важную информацию без опасений её перехвата (эта функция выключена по умолчанию, но полюбилась очень многим);

Если же сравнивать нас (jabber.ru) с другими публичными серверами, то из плюсов можно выделить надёжную и, главное, долгую работу нашего сервиса: несмотря на бесплатность, мы серьёзно относимся к своему делу.

Вы классные, я хочу помочь

Да, мы — классные. Но мы можем быть куда лучше. Да и существуем только благодаря поддержке сообщества. Если у вас есть идеи, предложения или возможность помочь проекту, вы можете обратиться к нам через форму обратной связи или через jabber, написав в конференцию support@conference.jabber.ru.

Джаббер — это просто. Чтобы начать общаться нужно:

  • Зарегистрироваться, указав имя пользователя и email;
  • В почте найти письмо от нас, пройти по ссылке и указать свой пароль;
  • Скачать программу, которая пришлась по вкусу;
  • В программе ввести имя пользователя (будет выглядеть так: user@jabber.ru, где "user" — нужно заменить на свой логин) и пароль;
  • Если вы дошли до этого места — помочь другу и добавить его в контакты;
  • Начать общение.

На ваш выбор. Мы рекомендует Xabber для телефона, встроенный messages для OS X, для windows: Psi+, VacuumIM, Miranda NG. Если вы пользуетесь Линуксом, то вы сами знаете, какой клиент поставить. Также мы разрабатываем веб-клиент Kaiwa, который вы тоже можете попробовать.

Во-первых, попытайтесь решить проблему сами: проверьте логин (должен содержать "@"), пароль, попробуйте поискать текст ошибки в интернете и почитать советы. Если ничего не помогает — попросите помощи у друзей или у нас через форму обратной связи.

Друзьям нужно сообщить имя, которое состоит из двух частей: вашего логина на сайте и домена "jabber.ru". Получится что-то похожее на "user@jabber.ru".

Символ "собачки", изначально, используется для указания принадлежности пользователя системе: user@server — пользователь "user" на сервере "server". Так и в джаббере, и в почте: user@jabber.ru — пользователь "user" на сервере "jabber.ru". Разделение имени пользователя на две части позволяет использовать множество серверов. А серверам — находить нужных пользователей.

Если письмо с регистрацией не приходит — проверьте папку "Спам", попробуйте зарегистрироваться ещё раз. Если ничего не помогает — напишите нам в форму обратной связи внизу страницы. Возможно, наш почтовый сервер тупит и нам нужно починить его. Вместо ответа на обращение вы просто получите письмо с ссылкой на регистрацию. Пожалуйста, не используйте тот же email, на который не приходит письмо о регистрации: возможно, ваш ящик заблокирован или переполнен и мы не сможем вам ответить.

Нет, не можете. Несмотря на то, что адреса очень похожи внешне, они используется разными программами. Позже, мы постараемся добавить возможность отправлять и принимать почту. Но использоваться для этого будет другая программа, не чат.

С одним именем пользователя вы можете подключаться к джабберу несколькими клиентами. Ресурс — это имя клиента. Можете вписать туда название устройства, случайную строку или вовсе игнорировать. Работать чат будет и без "ресурса".

В большинстве случаев, проблемы будут на вашей стороне. Прежде чем вы напишете нам в support@c.j.r, не поленитесь проверить свой сервер через сервис XMPP Observatory. Если по их данным с вашим сервером всё хорошо, проверьте, что регистрация на вашем сервере закрыта капчей. Так как мы не любим получать спам, мы предпочитаем закрываться от сервисов с открытой регистрацией. Проверить наличие вашего сервера в нашем спам листе можно сделав запрос к нашей DNSBL зоне ‘dnsbl.jabber.ru’. Например, "jabber.ru.dnsbl.jabber.ru". Если же регистрация у вас закрыта, XMPP Observatory говорит, что с сервисом всё хорошо, а в DNSBL листе вы не значитесь — добро пожаловать в саппорт. Возможно, вы действительно нашли проблему у нас.

Принципиально, удалять аккаунт смысла нет. Но если осознание наличие аккаунта не даёт спокойно жить, то советуем воспользоваться функцией "Отмена регистрации" в различных клиентах. Например, такая функциональность есть в psi+. Администрация удалением аккаунтов не занимается.

В большинстве клиентов есть соответствующая функциональность. Попытайтесь воспользоваться ей. Если клиент не умеет менять пароль, то вы можете воспользоваться ссылкой "напомнить пароль", ввести свой логин, и вам придёт ссылка для ввода нового пароля.

В феврале 2017 года мы запустили антиспам. Условия доставки сообщений достаточно просты: собеседник должен быть у вас в контакт листе и вы должны авторизовать его. Если вы уверены, что эти условия выполнены, а сообщения не проходят всё равно — напишите нам в support@c.j.r.

Пожалуйста, свяжитесь с нами через форму обратной связи или в support@c.j.r и мы постараемся прекратить поток спама.

Please report spam through feedback form at the bottom of this page or report spam to support@c.j.r. We’ll do our best to stop spam.

Наши планы не всегда реалистичны или адекватны нашим возможностям. Но тем не менее, мы стремимся к следующему:

«Джаббер» (Jabber) в переводе с английского означает "болтовня" или "трескотня". Это первоначальное наименование свободного протокола обмена мгновенными сообщениями ХМРР, а также собирательное название работающих с его использованием клиентских программ. За неполные двадцать лет технология пережила этап бурного развития и приобрела мировую известность. Что такое «Джаббер» в настоящем и как им пользоваться? Об этом и многом другом вы узнаете из статьи.

История появления

Официальной датой рождения технологии ХМРР принято считать 4 января 1999 года. В этот день было размещено в Сети сообщение о начале работы над проектом. Изначально разработка получила достаточно большую поддержку со стороны информационных корпораций. Параллельно велся процесс создания серверной части и клиентских программ для различных операционных систем. Были разработаны специальные сетевые шлюзы, которые позволяли обмениваться сообщениями с уже существующими на тот момент крупными IM-клиентами, такими как ICQ, MSN Messenger и AIM.

К середине 2000 года разработка первой стабильной версии серверной части была завершена. Еще через год была создана Jabber Software Foundation — организация, задачей которой являлось дальнейшее развитие протокола и модернизация его технических спецификаций. Позднее, в 2007 году, она была переименована в ХМРР Standarts Foudation, отделив таким образом развитие самого протокола обмена от разработки программного обеспечения с аналогичным названием.

«Золотой век»

В 2005 году компания Google, уже являвшаяся к этому времени поисковым гигантом мирового масштаба, объявила о запуске проекта Google Talk. Сервис обеспечивал передачу текстовых и голосовых сообщений с использованием протокола ХМРР. Спустя полгода был открыт сетевой шлюз, а пользователи Google Talk получили возможность межсерверного общения. Фактически они могли переписываться с любым юзером в мире, использующим клиентскую программу, работающую по протоколу ХМРР.

Разумеется, такой шаг Google не мог остаться без внимания. Возможность работы по протоколу ХМРР в течение короткого времени была реализована всеми конкурентами в сфере поиска и крупнейшими социальными сетями. Доступ обеспечивался как с помощью сетевых шлюзов, так и путем создания собственных мессенджеров. Наступил «золотой век» для пользователей «Джаббер». XMPP-протокол позволял подключить несколько аккаунтов к одной программе и свободно обмениваться сообщениями, используя их одновременно.

Забегая вперед, надо сказать, что продолжалось такое взаимное проникновение технологий недолго. Один за другим гиганты IT-индустрии начали отключать сетевые шлюзы, чтобы вернуть себе целевую аудиторию. Google начал новый проект, основанный на проприетарном протоколе, и с 2013 года постепенно сокращал поддержу межсерверных транспортов. В 2015 Google Talk был официально закрыт. Без лишнего шума следом завершил аналогичный проект и «Яндекс».

Особенности протокола ХМРР

В отличие от всех прочих сервисов обмена сообщениями, Jabber не привязан к единому центру. Любой желающий может установить сервер «Джаббер» на компьютер. В этом протокол ХМРР похож на электронную почту. Новый сервер может быть связан с другими по всему миру или работать в изолированной закрытой сети. Такая особенность делает его удобным для использования в качестве корпоративного клиента.

Спецификации ХМРР позволяют организовывать связь с использованием различных механизмов шифрования сообщений. Реализация такого способа защиты переписки возможна как на сервере, так и со стороны клиентских приложений, поддерживающих использование технологий SSL и PGP.

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

Как зарегистрироваться?

Что такое «Джаббер», вы уже знаете. Если эта технология вас заинтересовала, и вы решили опробовать ее в действии, то мы расскажем, как это сделать. Зарегистрироваться в «Джаббере» можно на любом действующем сервере. Для примера мы рассмотрим всю процедуру применительно к старейшему в России сервису Jabber.ru. Он отличается стабильностью работы, большой базой клиентов и предоставляет подробные инструкции для новых пользователей.

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

Выполнив эти простые манипуляции, вы получаете полноценный доступ к сети «Джаббер». JP или XMPP-протокол делает возможным общение с любым пользователем Jabber вне зависимости от того, на каком сервере он проходил регистрацию. Для отправки сообщения необходимо только знать JID нужного абонента.

Клиенты для компьютера

Существует множество программ под различные операционные системы. Можно подобрать подходящее по функционалу приложение и начать использование сервиса «Джаббер». Регистрация вами уже пройдена, поэтому при начальной настройке вы указываете полученное имя. Заполняете поле с названием сервера и соглашаетесь с автоматическим определением порта для его работы. Для упрощения выбора мы приводим несколько самых популярных клиентов:

Если вы используете MacOS, то сможете обойтись без скачивания сторонних приложений. Стандартная программа «Сообщения», входящая в состав этой операционной системы, позволяет подключить в ней «Джаббер». Вход в сеть будет осуществляться автоматически при каждом запуске.

Мобильные клиенты

Современный сервис невозможно представить без мобильных клиентов, а найти человека, который не пользовался бы сервисами мгновенных сообщений, достаточно сложно. Несмотря на конкуренцию со стороны популярных мессенджеров с многомиллионными аудиториями, «Джаббер»-клиент для мобильных устройств существует, причем даже в нескольких вариантах. Некоторые проекты находятся в застое, а некоторые активно развиваются. К примеру, программа Talkonaut, которая имеет версии под Android и iOS с регулярно выходящими обновлениями.

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

Cisco Jabber

Нельзя сказать, что идея использования ХМРР-протокола погибла в расцвете сил, не выдержав конкуренции. Да, многие проекты держатся исключительно на работе энтузиастов, поэтому бесплатный «Джаббер» не слишком активно развивается. В то же время есть примеры успешного применения этой технологии в корпоративной среде.

В 2008 году фирма Cisco Systems (один из мировых лидеров IT-индустрии) приобрела платформу Jabber XCP. За прошедшее время компания смогла, используя свободный протокол ХМРР, превратить этот проект в успешный корпоративный продукт. Пользователям доступны возможности мессенджера, функции голосовых и видеозвонков. Версии Cisco Jabber разработаны под Windows и MacOS, а для мобильных платформ — под iOS и Android. Продвигается продукт на корпоративном рынке в качестве современного интегрированного решения организации многофункциональной связи.

Джаббер и Linux

Что такое «Джаббер», хорошо знают пользователи «Линукса». Любой дистрибутив этой свободной операционной системы (независимо от того, какая графическая среда в нем используется) содержит в себе встроенную программу для обмена мгновенными сообщениями. Практически любая из их числа умеет подключаться и работать по протоколу ХМРР.

Одной из интересных возможностей, поддерживаемых этой программой, являются конференции. Это специально создаваемые тематические комнаты, какое-то подобие виртуальных клубов по интересам. Для участия в такой конференции достаточно иметь работающий «Джаббер». Регистрация в каждой из них отдельно не требуется. На сервере Jabber.ru можно найти перечень действующих конференций с привязкой к реальному времени.

Ежесуточно, на постоянной основе, работают сотни таких маленьких форумов. Более половины посвящены различным версиям Linux. В них можно задать вопрос и быстро получить ответ от других линуксоидов.

Сильные и слабые стороны

Разберем сильные и слабые стороны этой технологии, чтобы понять, почему она после бурного старта и «золотого века» своего использования оказалась отодвинутой в сторону более успешными конкурентами с закрытыми протоколами.

  • Гибкая архитектура сети, использующая децентрализованный механизм доступа.
  • Открытость стандарта ХМРР для разработчиков программного обеспечения.
  • Безопасность и шифрование на уровне сервера и клиента.
  • Расширяемость платформы путем использования сетевых транспортов.
  • Нерациональный расход трафика. Более половины информации, передаваемой по сети с использованием ХМРР-протокола, составляют данные о присутствии пользователя.
  • Неудобный механизм передачи файлов, оказывающий нагрузку на управляющие серверы Jabber.

Итак, мы видим, что основным недостатком, присущим этому протоколу, является нерациональное использование сетевых ресурсов. Надо сказать, что работа в этом направлении ведется, а ХМРР Standarts Foudation регулярно обновляет спецификации протокола. Разработаны механизмы компрессии и прямого обмена данными между клиентами, позволяющие снизить нецелевой расход трафика, таким образом уменьшая общую нагрузку на сеть.

Перспективы

В предыдущем разделе мы описали достоинства и недостатки Jabber-протокола. Устранение их не является нерешаемой задачей, и можно рассчитывать на то, что последующие редакции спецификаций позволят найти приемлемое решение. Насколько это поможет развитию стандарта – покажет время. Надо полагать, что второй бум использования не будет столь масштабным. Социальные сети быстро сделали вывод о том, что целевая аудитория пользователей, применяя возможности межсерверного общения, меньше заходит на свои страницы.

Реакцию на эти действия мы можем наблюдать на примере сервисов мобильных сообщений. Популярный WhatsApp был куплен социальной сетью Facebook, но при этом у нее имеется и собственная разработка. Программа Messenger позволяет обмениваться сообщениями с пользователями внутри сети.

Google, запустив сервис Hangouts, перешел на использование проприетарного формата, ликвидировав свободный Google Talk и тем самым привязав пользователей к своим сервисам еще теснее.

ХМРР дает своим пользователям свободу выбора и некоторую независимость от социальных механизмов сетевого общения. Насколько это окажется необходимо, мы с вами еще увидим. По крайней мере для «Линукс»-сообщества он точно будет еще долго актуален.

В заключение

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

XMPP (англ. eXtensible Messaging and Presence Protocol «расширяемый протокол обмена сообщениями и информацией о присутствии»), ранее известный как джа́ббер (англ. Jabber [1] [ˈʤæbə(r)] «болтовня, трёп, тарабарщина») — открытый, основанный на XML, свободный для использования протокол для мгновенного обмена сообщениями и информацией о присутствии (см. список контактов) в режиме, близком к режиму реального времени. Изначально спроектированный легко расширяемым, протокол, помимо передачи текстовых сообщений, поддерживает передачу голоса, видео и файлов по сети.

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

В отличие от коммерческих систем мгновенного обмена сообщениями, таких как AIM, ICQ, WLM и Yahoo, XMPP является федеративной, расширяемой и открытой системой. Любой желающий может открыть свой сервер мгновенного обмена сообщениями, регистрировать на нём пользователей и взаимодействовать с другими серверами XMPP. На основе протокола XMPP уже открыто множество частных и корпоративных серверов XMPP. Среди них есть достаточно крупные проекты, такие как Google Talk, Одноклассники.ru, LiveJournal, Juick и др. Ранее протокол поддерживался также сайтами общения Facebook [2] , ВКонтакте и сервисом Яндекс.Почта [3] [4] .

Содержание

История [ править | править код ]

Проект Jabber был основан Джереми Миллером в начале 1999 года с разработки сервера jabberd [5] . Первое сообщение о проекте появилось 4 января 1999 года на сайте Slashdot [6] . Эту дату принято считать днём рождения технологии [7] . Вскоре после этого к проекту присоединилось несколько основных разработчиков, которые стали работать над сервером jabberd, клиентами для Windows и GNU/Linux, а также шлюзами в основные системы IM (AIM, ICQ, MSN, и Yahoo). Позже, в 1999 году, Webb Interactive Services начало спонсировать основных разработчиков, что ускорило процесс создания проекта. В то время появилась основа протокола Jabber, а также сервер jabberd и ранние клиенты, такие, как WinJab (устарел и получил своё развитие в Exodus) и Gabber. Этот ранний период постоянных изменений закончился в мае 2000 года с выпуском jabberd 1.0.

Ранний протокол Jabber сформировал основы для стандарта XMPP, опубликованного как RFC 3920. Часто этот момент рассматривается как начало соперничества с SIMPLE, основанным на протоколе SIP, как стандартного протокола для мгновенного обмена сообщениями и информацией о присутствии.

С августа 2001 года протокол Jabber переходит под контроль Jabber Software Foundation (16 января 2007 года Jabber Software Foundation была переименована в XMPP Standards Foundation [8] ), для более точного описания своей работы развития расширений собственно протокола, в отличие от линии развития программы с одноимённым названием.

Jabber, Inc. занимается развитием двух проектов — Jabber Extensible Communications Platform (Jabber XCP) и JabberNow. Первый является фреймворком, а второй — программно-аппаратное решение (специально собранный и настроенный компьютер). Сайт jabber.org всё ещё функционирует. Инвесторами проекта Jabber являются Jona, Inc., France Telecom, Intel Capital, и Webb Interactive Services, Inc. [1]

В августе 2005 года Google представил сервис Google Talk — комбинацию VoIP и клиента для обмена сообщениями, использующий XMPP для функций переписки, а также как основу для передачи голоса и файлов. Первоначальный запуск сервиса от Google не включал межсерверного общения, но к 17 января 2006 года такая возможность была добавлена [9] . Однако, в мае 2013 Google объявил о сокращении поддержки межсерверных коммуникаций в связи с продвижением своего сервиса Google Hangouts [10] . Тем не менее, несмотря на официальные заявления, Google Talk всё ещё поддерживает XMPP [11] [12] .

Протокол [ править | править код ]

Семейство протоколов XMPP принято как стандарт RFC [13] . Стандартный порт для XMPP — 5222 [14] . Также возможно использовать порт 80 и/или 443 [15] , если возникают проблемы с файрволом. Протокол описывает клиент-серверные (c2s) и интерсерверные коммуникации (s2s). Мессенджер с поддержкой XMPP не обязательно должен соблюдать c2s стандарт, чтобы поддерживать федеративную связь по s2s с другими XMPP-мессенджерами. Ряд XMPP-мессенджеров с регистрацией по номеру телефона не позволяют использовать другие XMPP-клиенты или подключаться к другим серверам, но поддерживают федеративное общение с другими XMPP-серверами.

Преимущества [ править | править код ]

  • Децентрализация: Архитектура сети XMPP схожа с электронной почтой; кто угодно может запустить свой собственный XMPP-сервер и нет какого-либо центрального сервера.
  • Открытый стандарт: Internet Engineering Task Force формализовал XMPP как стандарт мгновенного обмена сообщениями и технологии присутствия под названием XMPP, и спецификации XMPP были опубликованы как RFC 3920 и RFC 3921. Никаких привилегий не требуется для добавления поддержки этих спецификаций, и их разработка не привязана к какому-либо разработчику. Существует множество реализаций серверов и клиентов, а также библиотек с открытым исходным кодом.
  • Бесконечная расширяемость. Любой может написать своё расширение XEP и добавить его в протокол. Изначально предполагалось, что крупные компании будут создавать свои расширения протокола для интеграции собственных мессенджеров. Это бы позволило создать универсальный протокол общения между разными менеджерами. На практике это не произошло. Крупные Интернет-компании стали предпочитать собственные, закрытые протоколы.
  • История: Технологии XMPP используются с 1998 года. При поддержке таких крупных компаний, как Sun Microsystems и Google, создано множество дополнений к стандартам XMPP для клиентов, серверов, компонент и библиотек кодов. В настоящее время XMPP существует практически без инвестиций, однако это не мешает дальнейшему развитию протокола сообществом, и постоянно появляются новые расширения.
  • Безопасность: XMPP серверы могут быть изолированы от публичных сетей XMPP (например, во внутренней сети компании) и хорошо защищены (благодаря использованию SASL и TLS) встроенными в ядро XMPP спецификациями. Для поддержки использования шифрования канала XMPP Standards Foundation также использовал вспомогательный Центр сертификации xmpp.net, обеспечивая цифровые сертификаты для администраторов XMPP серверов при содействии StartCom Certification Authority (который является основным хранителем сертификатов для всех вспомогательных). Многие реализации серверов используют SSL при обмене между клиентом и сервером, и немало клиентов поддерживают шифрование с помощью PGP/GPG внутри протокола [16][17][18] .
  • Гибкость: Настраиваемая функциональность может быть надстроена поверх XMPP; для поддержки возможности взаимодействия различных сетей стандартные расширения поддерживаются XMPP Software Foundation. Приложения XMPP в дополнение к функциональности клиента сетевого общения включают в себя администрирование сети, распределение ресурсов, утилиты для совместной работы, обмен файлами, игры и мониторинг удалённых систем.

Слабые стороны [ править | править код ]

  • Экономическая невыгодность для крупных мессенджеров. Открытый протокол приводит к оттоку пользователей у крупных мессенджеров, на множество мелких частных серверов и других поставщиков услуг.
  • Избыточность передаваемой информации: Более 70 % межсерверного трафика XMPP составляют сообщения о присутствии [19] , около 60 % которых являются излишними [20] . XMPP создаёт избыточный трафик при доставке сообщений о присутствии (то есть «статус-сообщений») нескольким пользователям. Для решения существует несколько расширений. XEP-0352 передаёт только сообщения вместо статуса присутствия. Также решением является расширение XEP-0138 [21] — компрессия передаваемых данных протокола алгоритмами lzw и zlib, а также использование компрессии в рамках шифрования соединения TLS RFC 3749, глава 3 [22] .
  • Масштабируемость: XMPP сейчас страдает от фактически той же проблемы избыточности, но применительно к чат-комнатам и возможностям публикации информации[23] . Решение этих проблем также ожидается в виде XEP-расширений. Пока они не введены, большие чат-комнаты образуют избыточный трафик.
  • Неэффективность передачи бинарных данных: Так как XMPP является, по сути, одним длинным XML-документом, невозможно передать немодифицированную двоичную информацию. В результате для передачи файлов стараются использовать дополнительные расширения, например HTTP (http upload). Для передачи же файлов и другой бинарной информации непосредственно в XMPP потоке используется кодирование base64. С другой стороны, некоторые клиентские программы для передачи используют технологии p2p, не задействуя при этом сервер.

Расширения XMPP [ править | править код ]

Протокол XMPP включает лишь базовую основу для передачи сообщений. Для реализации дополнительных возможностей используются расширения XEP (XMPP Extension Protocols). Модульная система позволяет собирать системы на основе XMPP, как для передачи сообщений, так и для передачи данных IoT-устройств и других задач. Для полноценной работы Jabber клиентов требуется поддержка соответствующих расширений. Одними из наиболее важных для работы XMPP клиентов являются расширения:

  • XEP-0163 Personal Eventing Protocol. Размещение аватарок, передача ключей OMEMO
  • XEP-0191 Блокирование контактов. Чёрный список собеседников
  • XEP-0198 Менеджер потоков. Необходим для доставки сообщений при нестабильном интернет-канале и выключенном архиве сообщений. Если сервер не получает уведомление о доставке, сервер повторно отправляет сообщение
  • XEP-0237 Версии ростера. Вместо полной загрузки данных собеседников, передаются лишь обновлённые данные
  • XEP-0280 Дублирование сообщений. Отправка сообщения на все включённые устройства. Используется, если не включён архив сообщений
  • XEP-0352 Состояние клиента. Если XMPP клиент свернут, сервер передаёт лишь сообщения. Это экономит расход батареи и интернет-трафик
  • XEP-0363 HTTP File Upload. Универсальная передача файлов между разными клиентами (через HTTP)

Боты [ править | править код ]

Большой популярностью в Jabber’е пользуются боты для конференций. Они широко используются для защиты конференций от спама, в качестве цензора, ведения различной статистики, парсинга веб-сайтов (анекдоты, новости и т. п.), создания «мостов» между чатами, ведения логов, управления конференциями и так далее. Функциональность xmpp-ботов и область их применения ограничены только фантазией их разработчиков.

Известные боты [ править | править код ]

  • Neutron [24] — англоязычный бот на Python (библиотека «xmpppy»), один из первых xmpp-ботов;
  • FreQ — многофункциональный xmpp-бот, зарекомендовавший себя стабильностью в работе [источник не указан 1414 дней] , написан на Python (библиотека Twisted);
  • Sulci — бот-говорун, какое-то время был крайне популярен в качестве развлечения;
  • Gluxi — многофункциональный бот, написанный на C++;
  • Talisman — русскоязычная модификация бота Neutron, примечателен наличием множества модификаций и является наиболее популярным [25] ботом в русскоязычных Jabber-конференциях;
  • EndLess — модификация бота Talisman. Примечателен тем, что он стал первым ботом, использующим более одного J >[26] — модификация бота Talisman/Neutron со слегка изменённой библиотекой «xmpppy». В последних версиях полностью переписан и практически не имеет ничего общего со своими предками. Для обеспечения наибольшего быстродействия его код распространяется в скомпилированном виде, что, однако, не противоречит GNU GPL v2. Примечателен высокой надёжностью и отказоустойчивостью. Локализации EN и RU.
  • Snapi [27] — изначально являлся модификацией бота Talisman, но позже его «перерос». Можно охарактеризовать, как «Talisman с корректным кодом». Примечателен тем, что базируется на полностью переписанной библиотеке «xmpppy»;
  • BlackSmith mark.1 [28] — активно развивающийся бот, написанный на Python. Примечателен широкой функциональностью, высокой стабильностью и устойчивостью к различным проявлениям флуда. Имеет свою систему плагинов а также частично совместим с ботом Talisman посредством специального модуля. Является open-source проектом и распространяется по лиценции Apache 2;
  • BlackSmith mark.2 [29] — имеет мало чего общего с предыдущим ботом, не считая названия. Написан на Python и использует слегка модифицированную библиотеку «xmpppy». Примечателен поддержкой нескольких J >[30] — бот для конференций, написанный на Tcl.
  • Pako [31] — бот, распространённый в англоязычной части Jabber-сети. Написан на C#;
  • Is >[32] — многофункциональный и многоязычный бот, написан на Python (библиотека «xmpppy»). Примечателен тем, что это единственный бот, который в полной мере использует muc-filter [33] , а также тем, что его код противоречит большинству пунктов Python Style Gu >[34] ;
  • Erl [35] — бот, написанный на Erlang, примечателен функциями защиты конференций от спама.

Адресация [ править | править код ]

Каждый пользователь в сети Jabber имеет уникальный идентификатор — Jabber ID (сокращённо JID). Адрес JID, подобно адресу электронной почты, содержит имя пользователя и доменное имя сервера, на котором зарегистрирован пользователь, разделённые знаком @. Например, пользователь user, зарегистрированный на сервере example.com, будет иметь адрес: user@example.com.

Пользователь может иметь одновременно несколько подключений, для различия которых используется дополнительный атрибут JID, называемый ресурсом и добавляемый через слэш в конец адреса. К примеру, пусть полный адрес пользователя будет user@example.com/work, тогда сообщения, посланные на адрес user@example.com, дойдут на указанный адрес вне зависимости от имени ресурса, но сообщения для user@example.com/work дойдут на указанный адрес только при соответствующем подключённом ресурсе.

Адреса JID могут также использоваться без явного указания имени пользователя (с указанием имени ресурса или без такового) для системных сообщений и для контроля специальных возможностей на сервере.

Соединение с другими протоколами [ править | править код ]

Полезной особенностью XMPP систем являются транспорты, или шлюзы, позволяющие пользователям получать доступ к сетям, использующим другие протоколы. Это могут быть другие протоколы мгновенного обмена сообщениями, IRC или такие протоколы, как SMS и электронная почта.

В отличие от мультипротокольных клиентов, XMPP предоставляет доступ на уровне сервера, посредством коммуникации через специальные сервисы-шлюзы, выполняющиеся на удалённом компьютере.

Любой пользователь может «зарегистрироваться» на одном из этих шлюзов, предоставив информацию, необходимую для входа в сеть, и может общаться с пользователями сети так, как если бы они были пользователями сети джаббер. Это значит, что любой клиент, полностью поддерживающий XMPP, может быть использован для доступа к любой сети, для которой существуют шлюзы, без какого-либо дополнительного кода в клиенте и без необходимости клиенту иметь прямой доступ в Интернет.

Реализация шлюзов зависит от конкретного XMPP-сервера и подвержена нестабильности из-за закрытости коммерческих IM-сервисов.

Примеры глобальных интеграций XMPP [ править | править код ]

Высокая отказоустойчивость и низкие издержки XMPP-серверов [36] способствуют тому, что ряд крупных компаний использует XMPP как базовую платформу для создании закрытых мессенджеров и чатов, а также для доставки push-уведомлений [37]

800 млн пользователей, использует модифицированный протокол XMPP для чатов
Electronic Arts

40 млн пользователей, использует XMPP для чатов
Nintendo Switch NPNS

35 млн устройств. Доставка новостей, уведомлений и других сообщений [38]

  • Одноклассники (социальная сеть) — 42 млн пользователей. Внутренняя доставка сообщений между пользователями. Доступно подключение к социальной сети через XMPP-клиент
  • League of Legends
  • 27 млн пользователей, использует XMPP для чатов

  • Neverwinter (MMORPG) −16 млн пользователей, использует XMPP для чатов
  • Fortnite
  • 250 млн пользователей, использует XMPP для чатов
    EVE Online

    1 млн пользователей, использует XMPP для чатов
    Star Trek Online

    900 тысяч пользователей, использует XMPP для чатов
    Google

    1.5 млрд пользователей. Доставка push-уведомлений
    Apple

    500 млн пользователей. Доставка push-уведомлений

  • Агентство национальной безопасности США использует XMPP для внутренних коммуникаций [39]
  • Военные США [40] и НАТО[41] используют протокол для передачи сообщений в военных мессенджерах
  • НАТО использует XMPP в военном клиенте JChat
  • Фермилаб — Национальная ускорительная лаборатория им. Энрико Ферми использует XMPP для организации внутренней связи.
  • Европейский парламент — Служба безопасности европейского парламента рекомендует использовать парламентариям Cisco Jabber вместо Signal и WhatsApp [42]
  • Федеральная полиция Германии использует секретный мессенджер на основе XMPP [43] и Conversations
  • Программное обеспечение [ править | править код ]

    XMPP-серверы [ править | править код ]

    • CommuniGate Pro
    • ejabberd — свободный распределённый и отказоустойчивый XMPP-сервер, написанный на Erlang. Работает на крупнейшем российском XMPP-сервере jabber.ru.
    • jabberd2 — свободный сервер, написанный на языке C
    • Openfire (ранее Wildfire, ещё ранее Jive Messenger) — свободный многофункциональный и отказоустойчивый XMPP-сервер, написанный на Java. Занимал первое место в рейтинге по возможностям на jabber.org (по состоянию рейтинга на конец марта 2007 года) [44]
    • Prosody — кроссплатформенный XMPP-сервер, написанный на языке программирования Lua
    • Tigase XMPP Server — сервер, поддерживающий кластеризацию «из коробки» [45]
    • Wokkel — библиотека, добавляющая поддержку расширений XMPP в Twisted [46]
    • Xabber Server — сервер, основанный на форке ejabberd. Код проекта распространяется под лицензией AGPLv3 [47] .

    XMPP-клиенты [ править | править код ]

    По статистике публичного XMPP-сервера 404.city [48] (на лето 2017 года), самые популярные клиенты для десктопов и ноутбуков — Pidgin и Psi+ . На Android лидируют Xabber и Conversations.

    Для ПК и ноутбуков [ править | править код ]

    • Miranda NG — мультипротокольный мессенджер для MS-Windows с поддержкой OTR, PGP, OMEMO и собственного плагина SecureIm, работающего на основе открытой библиотеки Crypto++
    • P > Для Android [ править | править код ]
    • Xabber — XMPP-клиент с поддержкой OTR, PGP.
    • Conversations — XMPP-клиент с поддержкой OTR (с версии 2.0.0 данная функция не поддерживается), PGP, OMEMO. Есть возможность отправки картинок, файлов различных типов, геокоординат, записи и отправки голосовых сообщений.
    • IM+ — мультипротокольный мессенджер с OTR.
    • yaxim.
    • ChatSecure — XMPP-клиент с поддержкой OTR, OMEMO от коллектива The Guardian Project[en] .
    • Zom — XMPP-клиент с поддержкой OTR, OMEMO. Является ответвлением от проекта ChatSecure. Поддержка отправки файлов и голосовых сообщений.
    Оцените статью
    Ремонт оргтехники
    Добавить комментарий