Жаббер

Материал из Lurkmore.

(Перенаправлено с Jabber)
Перейти к: навигация, поиск
НЯ!
Эта статья полна любви и обожания.
Возможно, стоит добавить ещё больше?

XMPP — Extensible Messaging and Presence Protocol (англ. расширяемый протокол обмена сообщениями и информацией о присутствии), ранее известный как Jabber ([ˈʤæbə(r)], джа́ббер(англ. болтовня, трёп; тарабарщина) — это основанный на XML открытый, свободный для использования протокол для мгновенного обмена сообщениями и информацией о присутствии (см. список контактов) в режиме, близкому к режиму реального времени. Изначально спроектированный легко расширяемым, протокол, помимо передачи текстовых сообщений, поддерживает передачу голоса, видео и файлов по сети. В отличие от коммерческих систем мгновенных сообщений, таких, как AIM, ICQ, MSN и Yahoo, XMPP является децентрализованной, расширяемой и открытой системой. Любой желающий может открыть свой сервер мгновенных сообщений, регистрировать на нём пользователей и взаимодействовать с другими серверами XMPP. На основе протокола XMPP уже открыто множество частных и корпоративных серверов XMPP. Среди них есть достаточно крупные проекты, такие как Google Talk, LiveJournal и Gizmo5.

википедия
Вася Ложкин. Мясоповал (По мотивам "Про лампочку"). Мы-то знаем скрытый смысл: жабер, хотя бы на время, может превратить в человека кого угодно.
Вася Ложкин. Мясоповал (По мотивам "Про лампочку"). Мы-то знаем скрытый смысл: жабер, хотя бы на время, может превратить в человека кого угодно.

Жаббер (англ. Jabber) — жаргонное название православного открытого протокола XMPP, описывающего передачу сообщений через интернеты, используя XML-подобную разметку, которую можно читать хоть из телнета. Однако стоит отметить, что жаббер не полностью соответствует стандарту XML. В частности, нет возможности поддерживать кодировки, отличные от UTF-8, запрещает XML-комментарии, а иногда и формирует некорректный XML. Это не какая-то бинарщина вроде AMQP, где хоть и еще меньшие затраты трафика, но который совершенно невозможно читать. Особенно из телнета, как это делают Ъ. Свободная альтернатива Аськам и прочим MSN. Как и многое другое, задуманное и написанное кразноглазиками, обладает массой технических достоинств, вроде передачи голоса и даже файлов, передача которых тоже опциональна. То же есть и у аси, но кого это интересует? В связи с отсутствием поддержки Квип-Классиком, использование Jabber быдлом вызывает некоторые трудности. Хотя старший брат от квип-классика QiP Infium поддерживает, да и сам использует протокол XMPP, но все же быдлу не под силу разобраться с настройками. Однако ввиду тотального нищебродства джаббер в Зажопинских внутриобластных серверах различных быдлопровайдеров используют как «Бесплатную внутреннюю аську», что в разы увеличивает потребность в знании настроек мессенджеров с использованием джаббер-протокола.

Содержание

[править] Плюсы жаббера

  • Нет спама. Совсем. И вряд ли будет в масштабах аськи/емыла, так как куча серверов усложняет поиск, а значит и выделять целевую аудиторию сложнее и в отличие от почты, серваки могут передавать сообщения только от своего имени (релеев нет вообще), так что зобанить спамерский сервак проще. Максимум — спам через транспорты других протоколов и в чат-румах, где спам увидят сразу 10-20 человек, а значит КПД спамера будет больше. Впрочем, уже можно привинтить капчу на вход в чат-рум. Алсо, никто не мешает слать по уже засвеченным адресам. Алсо2, уже есть чат-боты для возмездия спаммерам.
  • Независимость от центрального сервера. Множество jabber-серверов взаимодействуют друг с другом, причем s2s-линки между ними периодически отваливаются. Особенно эпично выглядит в конференциях, как слет половины участников за 1-2 секунды. Можно зарегистрироваться на нескольких из них и разговаривать с пользователями других. Даже в случае отказа одного из серверов без связи не остаёшься. Только заебешься синхронизировать контакт листы, когда связи уже нет, щитайте это квестом. Однако есть несколько методов, которые помогают пройти этот квест.Вот и вот
  • Есть шифрование, что по нраву параноикам. Аська, например, совсем никак не шифрует, и вся переписка, рано как и пароли, может быть получена с помощью простейшего сниффера. Алсо, вся передаваемая через асечные сервера инфа переходит в собственность AOL, inc., что явно указано в лицензионном соглашении. Некоторые анонимусы предлагают ставить параноикам secureim и отмучиться уже, однако СекьюрИМ поддерживается полутора клиентами, равно как и OTR. Если у вашего собеседника шифрование не включено, то все ваши переговоры могут быть перехвачены.
  • Не тупые номерки, а пиздатые адреса вида имя@сервер, например: pelotka@Udaff.com, lytdybr@livejournal.com или thecakeisalie@jabber.ru Эти адреса были вбиты чисто для примера, насчёт их реальных владельцев (если они есть) никто не интересовался. Однако сервера эти есть. Есть мнение, что скорее всего, эти «клёвые адреса» на крупных серверах будут разобраны чуть более, чем полностью. И регаться придётся с адресом vasiliypoopkine2022@cool-jabber-serv.tld, как сейчас обстоит с почтой. Некоторые считают, что лучше иметь JID на каком-нибудь оригинальном сервере, а не на массовых gmail и yandex. А ещё лучше купить VPS/VDS за пару баксов в месяц, поставить туда ejabberd, купить домен (или бесплатный взять какой-нибудь в зоне типа pp.ru) и получать ПРОФИТ.
  • Сервер жаббера легко поднять и он есть во многих локалках. Так что даже если у вас отключили инет, то в жаббере вы всё равно сможете чатиться в случае, если администрация сервера адекватная. Например, на некоторых серверах в локалке доступ наружу отрубают с завидной регулярностью.
  • Т. н. транспорты, которые позволяют через жаббер общаться с пользователями других сетей, как то ICQ или MRA и конечно же, куда же без него, быдлоконтакт. Работают хуже, чем нормальные клиенты, не то, что ай-си-кью и меил.ру пытаются преподнести под видом клиентов для общения, а нормальные клиенты. Но при неоплаченности инета см. пункт 5. Однако весьма полезны RSS (посылают вам новые сообщения из выбраных rss-лент) и погодные транспорты (у вас в контакт листе будет новый контакт, в статусе которого всегда актуальная погода в выбраном городе).
  • Жаббер сервер так же легко поднять на собственном домене. Хостинг для жаббер-сервера обойдётся рублей в 150 в месяц. И в распоряжении отличный, собственный жаббер-сервер безо всяких проблем с регистрацией красивых аккаунтов. Кроме того, гугль и другие конторы предлагают специальный жаббер-хостинг для владельцев доменов, часто даже бесплатно.
  • Позволяет одновременное подключение под одним и тем же аккаунтом разными клиентами. Например: оставить на рабочем компе, на пути домой подключиться мобильным, и дома опять же подключиться. При этом адресат, при смене клиента, будет это видеть (при вашем желании). А подключенные транспорты ничего не заметят. И асечька не будет драться за клиент.

[править] Минусы жаббера

  • Многие исследователи отмечают существенные проблемы надежности и масштабируемости данного протокола, что характерно для красноглазого продукта, сделанного на коленке. В том же документе указано, что сами авторы статьи внесли на рассмотрение апдейты к xmpp относительно нескольких проблем, так что всё исправляется. Но да, отсутствие единого и непререкаемого руководства сказывается. Нет в мире совершенства.
  • Не с кем общаться. Все сидят в этой вашей аське и не хотят переходить на нормальный протокол[1]. Так что будьте готовы, что после регистрации вы сможете поговорить только сами с собой или каким-нибудь красноглазиком или с ботом (например, бот переводчик, что уже не так грустно, как с самим собой). Решается использованием мультипротокольного клиента или транспортов. Или агитацией знакомых (и не очень) аськоюзеров. Но большинство попыток насадить православный протокол заканчиваются фэйлом. На самом деле нет ничего хорошего в том, что гламурное кисо и быдло перейдет на джаббер (если это случится, то начнет распространяться спам, что нехорошо для красноглазиков и жабердрочеров, спокойно ведущих беседы в конференциях). В конце 2008 года QIP сделал автоматическую регистрацию всех своих юзеров в жабире на qip.ru, в связи с чем в жабире появились кисы, школьники и планктон, ибо свежий QIP автоматически добавляет собеседника в ростер, когда видит, что в довесок к ICQ у него есть адрес на QIP.RU. Это печально.
  • Нет централизованного поиска по имени/фамилии/полу/возрасту. Автор статьи не очень понимает, почему это относится к недостаткам, так как спасает от гламурных кис и спамеров, но многие на это жалуются. Некоторые считают, что на самом деле это не минус. Джаббер — средство для общения, а не для поиска, не надо его путать с ICQ, название которой как бы говорит нам о главной её фиче. Да и поиск, который находит чуть более, чем ничего, не особо-то и нужен. К. О..
  • Локальные сервера часто поднимают криворукие гоблины, из-за чего они лежат чуть реже, чем всегда. Решается проблема методом использования крупных серверов (при этом пропадает 5е преимущество) или выпрямлением рук админу сервака.
  • Существуют много способов передачи файлов, но реально работает только один, причём он жрёт дохрена трафика.

Виноваты в этом, естественно, провайдеры, использующие NAT. Алсо, есть сервисы-прокси для передачи файлов, но скорость при их использовании удручает. Существует мнение, что если использовать нормальные прокси и скорость будет в районе ~50-200кбайт/сек. Например, proxy.jabber.ru. Алсо в дефолтном ejabberd'е есть поддержка прокси.

  • Некоторые крупные сервера слабо дружат друг с другом (в частности жжшный и жэмыловский).
  • Не смотря на то, что протокол открыт, ровнёхонько полностью бесплатен и кошерен значительно более, чем полностью, он слишком уж XML-ный. Вот, например, тёплый ламповый SMTP, который появился в 1982 году и застал Брежнева:

S: 220 smtp.example.com ESMTP Postfix
C: HELO relay.example.org
S: 250 Hello relay.example.org, I am glad to meet you
...

Видите, он нам говорит I am glad to meet you (тут он может сказать и что-нибудь ещё более приятное, это позволено), с ним приятно работать даже по телнету. IRC (1988), кстати, тоже вполне тёплый, хотя и моложе на шесть лет.

А теперь посмотрим XMPP примерно в той же ситуации:

<stream:stream xmlns="jabber:client" to="gmail.com" version="1.0" xmlns:stream="http://etherx.jabber.org/streams" xml:lang="ru" >
...

а в ответ нам ещё хуже:

...
<stream:features>
 <starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls">
  <required/>
 </starttls>
 <mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl">
  <mechanism>X-GOOGLE-TOKEN</mechanism>
 </mechanisms>
</stream:features>
...

Никакого тепла и уюта, только холодное стальное дыхание межнациональных корпораций с раздутым бюджетом (хотя протокол, как и большинство реализаций[2], весь из себя бесплатный и ничей). Тем не менее, для программиста это вполне удобно, а пользователю, даже если он тоже программист, и вовсе разницы нет. Та же самая ICQ, к слову, не сильно старше жабера, а протокол у неё — вообще кусок говна, так что даже смысла нет рассуждать о том, тёплый он, или нет, и как он пахнет.

[править] Микроблоггинг

Пионером микроблоггинга был буржуйский Twitter, позволявший писать по IM (однако, эта фича была выпилена), SMS, разными клиентами (которых развелось более 9000) и вообще через что угодно. А вот первый отечественный сервис микроблогов Juick, наоборот, полностью базируется на Jabber: посты через Jabber, комментарии через Jabber, чтение подписок — как думаете, через что? Так что, знамо дело, он пока наполнен гиками чуть более, чем полностью, хотя в последнее время начинают появляться и гламурные кисы, школота и офисный планктон. Ещё есть сервис identi.ca, также поддерживающий джаббер, но более твиттероподобный. Зато его движок полностью открыт, благодаря чему появляется всё больше и больше пустых и унылых клонов твиттера. Также микроблоги появились и на qip.ru, так что хомячки в микроблогах уже есть.

[править] Групповое общение / комнаты

В Jabber есть групповой чат АКА конференции, наподобие каналов в IRC. С IRC народ в последнее время активно уходит, а вот в джаббер-конференциях народу всё прибавляется. Преимущества перед IRC:

  • Регистрация юзеров определена прямо в протоколе, а не в дополнительных костылях типа nickserv и chanserv, как в IRC. Так что не надо писать никаких скриптов чтобы тебя авторизовывало.
  • Нет проблем с кодировками. Всё всегда в кошерном UTF-8.
  • Простые адреса у конференций. По идее есть способ сделать ссылку, по тыку на которую джаббер-клиент будет сразу заходить на конференцию, но это поддерживают не все клиенты. В отличие от IRC не надо говорить желающим приджойниться «канал #хуита на сети хуитанет, выбери любой сервер на такой-то странице или заходи на irc.huitanet.com, если он не перегружен, на порту 6666 кодировка iso8859-5, а на 6667 обычно cp1251, но на хуитанете там cp866, поэтому заходи на порт 6668, потому что там utf-16»[3]
  • Нет таких ущербных ограничений на количество символов в сообщении, в псевдониме, темы комнаты. А так же можно делать сноски (перенос строки). Любые юникодные символы в том числе и в имени псевдонима.
  • Подгружается история комнат. Около 100 строк, а вообще зависит от настроек сервера. Так что шанс стать белой вороной как в IRC намного ниже.
  • Мобильные клиенты поддерживают комнаты, а если учитывать транспорты, то можно сидеть через джаббер в той же IRC. Некоторые считают это чистым мазохизмом и извращением.
  • Видна смена статусов пользователей, которую можно и отключить. А не уныльщина с away-костылями. Однако далеко не все клиенты это поддерживают.
  • Псевдоним можно установить для каждой комнаты отдельно.

Но не стоит забывать и про минусы:

  • Не хватает команд типа: /join /part /quit /nick /topic /kick и т. д. Всё что есть - самодеятельность клиентов и никак не стандартизовано (кроме /me).
  • Нет нормального решения для сортировки комнат по количеству пользователей (что, вообще говоря, является проблемой Jabber-клиента, и непонятно зачем нужно).
  • Нет цветов и форматирования как в IRC. Строго говоря, в IRC тоже нету ни того ни другого. Просто mIRC это умеет, а остальные подстраиваются. Тем не менее, какой-то XEP (нет, не то что вы подумали, а XMPP Extensions Protocol), появился на эту тему: с HTML разметкой, даже с возможностью внедрения картинок, только вот неизвестно когда это будет поддерживаться большинством клиентов на практике. Кто-то считает что форматирование нужно только гламурным кисам и быдлу, но для ботов типа CIA.vc это очень удобно.
  • В систему не встроен бан по IP. Бан по JID обходится менее чем за 30 секунд.

Спорное:

  • Не показываются комнаты, в которых сидит на данный момент пользователь, как в это сделано IRC. Однако в протоколе это предусмотрено.
  • Не совсем удачное разделение чат-контактов и ростер-контактов.


И вообще, IRC устарел. Сейчас в джабберных конференциях уже можно найти кучу гламурных кис и всяких школьников-контрстрайкеров.

Надо заметить, существует очень мало технологий для групчата: IRC, Jabber, Skype. В той же всеми любомой аське групчата вообще нету, например (вобщето есть, в оффициальном клиенте, но те люди которые знают что такое групчат оффициальный клиент уже давно не юзают).

[править] См. также

[править] Ссылки

[править] Примечания

  1. Впрочем, компания AOL активно занялась решением этого вопроса. пруфпик
  2. Gmail.com это не касается, естественно.
  3. А вот, кстати, и неправда. Для IRC тоже есть вполне узаконенный формат урлы: irc:[<connect-to>[(/<target>[<modifiers>][<query-string>]|<modifiers>)]]
Источник — «http://lurkmore.ru/Жаббер»
Личные инструменты
Инструменты