Рубрика «xmpp» - 2

Новая жизнь для XMPP. Делаем мессенджер, который не получится заблокировать - 1

Идея сделать независимый от корпораций P2P мессенджер не нова, однако разработка нового протокола и клиентских приложений для него достаточно дорогой и долгий процесс. А что, если использовать старый добрый XMPP, в котором уже все давно продумано и запилено?

Но это же не настоящий peer-to-peer, скажете вы, для работы XMPP нужен собственный сервер и домен. Это так, но мы можем запустить сервер на локалхосте, а для связи с серверами других пользователей использовать скрытый сервис в виртуальной сети I2P. Использование I2P избавит нас от необходимости платить за домен с хостингом, а так же защитит наши коммуникации от преступной онлайн-слежки.

Таким образом, получаем:

  • Гибридный P2P мессенджер, который можно запускать и на пользовательских устройствах, и на полноценном сервере.
  • Фичи, которых не хватает другим P2P мессенджерам: оффлайн сообщения, хранение контактов и истории "в облаке", работа нескольких клиентов с одним аккаунтом.
  • Готовые клиентские приложения на любой вкус.
  • За счет использования I2P, неуязвим для различных *надзоров (сори за мат).

Приступим же к реализации...

Читать полностью »

Добровольцы создают мобильную сеть Sopranica, свободную от слежки - 1Вот уже около года американский активист Денвер Джинджерич (Denver Gingerich) выкладывает в открытый доступ отдельные программные части большого проекта, который он с соратниками называет Sopranica. Это первая в мире мобильная сеть, которая объединяет пользователей на открытых принципах, без участия коммерческой компании-оператора сотовой связи. Присоединиться к сети на добровольной основе может любой пользователь в мире.

Например, в январе 2017 года Джинджерич опубликовал исходный код jmp-register — визарда регистрации для чата JMP (JIDs for Messaging with Phones). В чате JMP каждый выбирает себе свободный и анонимный ID с указанием телефонного номера типа +12113114111@cheogram.com, через который может обмениваться текстовыми сообщениями и картинками с другими пользователями. При регистрации в JMP вы указываете произвольный телефонный номер, который привязывается к анонимному Jabber-аккаунту.

Чат JMP — первый «кирпичик», составляющий свободную мобильную сеть Sopranica.
Читать полностью »

В одном из недавних проектов мы реализовывали взаимодействие Android-приложения с ejabberd-сервером через кастомизированный XMPP-протокол.

В этой статье приведены примеры как можно отправлять/получать кастомизированные пакеты XMPP-протокола в Android-приложении.

Для работы с XMPP протоколом была выбрана библиотека Smack 4.1.8.
Читать полностью »

Как Discord обрабатывает более 1 000 000 push-запросов в минуту с помощью Elixir GenStage - 1
Discord

Discord испытал небывалый рост. Чтобы справиться с ним, нашему отделу разработки досталась приятная проблема — искать способ масштабирования сервисов бэкенда.

В этом деле мы добились большого успеха с помощью одной технологии, которая называется Elixir GenStage.

Идеальный шторм: Overwatch и Pokémon GO

Этим летом наша система мобильных push-уведомлений стала скрипеть от нагрузки. Чат /r/Overwatch перевалил за 25 000 одновременных пользователей, а чат-группы Pokémon GO возникали повсеместно, так что внезапные всплески потока уведомлений стали серьёзной проблемой.
Читать полностью »

Сигнальные и транспортные протоколы WebRTC: срываем покровы - 1Наша платформа VoxImplant состоит из нескольких частей: облако, API, SDK для разных платформ. SDK для браузера подключается к облаку по WebSocket и позволяет звонить (и принимать звонки) как другим пользователям VoxImplant, так и на обычные телефоны. Раньше это работало с помощью flash, но в современных браузерах используется специально созданная для работы с голосом и видео технология WebRTC. Штука хорошая, но довольно сложная в использовании: возможность peer-to-peer коммуникаций, одна из ключевых «фишек» технологии, управляется полностью вручную. Чтобы два браузера могли организовать голосовой или видеочат друг с другом, разработчику нужно собрать информация об IP-адресах компьютеров, как-то передать эту информацию между браузерами, запустить NAT Traversal и скормить это все WebRTC. А если обойти NAT не получилось, то еще и предоставить Relay-сервер для передачи данных.

Недавно мы нашли на просторах интернета интересную статью, которая рассказывает технические подробности «передачи информации» между браузерами. Адаптированный для Хабра перевод – под катом.Читать полностью »

Ничего не предвещало интересного, но ещё с понедельника обратил внимание, что контакт лист пуст. Будто бы все друзья, коллеги и клиенты ушли одновременно в отпуск. Только пара контактов с сервера @ya.ru были в сети.
Мысль, что что-то не так закралась чуть позже и укрепилась, после отправки сообщения пользователю в статусе офлайн. Мой клиент огорчил ошибкой 404.
Читать полностью »

Metronome IM и Jappix: многофункциональный Jabber, без сложностей в настройке - 1
Что если я расскажу вам как без особых усилий поднять свой собственный jabber-сервер со всеми новомодными фичами, такими как: архивация, синхронизация сообщений между клтентами, уведомления о прочтении, публичные чаты и многое другое…
Так же поделюсь с вами замечательным Jabber-клиентом который не менее интересен, он поддерживает аудио и видео звонки, имеет неплохой интерфейс и работает прямо из браузера.
То и другое вы получите абсолютно бесплатно, так-как и сервер и клиент лицензируются по свободнлй лицензии.

Речь пойдет об Metronome IM и Jappix.Читать полностью »

Есть маленький ИТ-отдел в средних размерах организации с филиальной структурой. Сотрудники ИТ-отдела практически постоянно в разъездах по разным филиалам и не всегда бывают доступны по мобильному телефону. Для удобства сотрудников организации было принято решение сделать единый (легкозапоминающийся) номер для технической поддержки. В случае, если техподдержка занята или просто никого нет на месте — звонок должен переадресовываться на мобильные телефоны инженеров и информация о звонке должна прийти в виде сообщения в Jabber.
Читать полностью »

Компания Layer не оставляет попытки «подружить» между собой online-сервисы передачи мгновенных сообщений. Недавно был выпущен первый публичный релиз Atlas, библиотеки для создания пользовательского интерфейса мессенджеров. Но не напоминает ли это историю с XMPP? Может, и сейчас у руля стоят те же люди?Читать полностью »

С наступающим и кое-где наступившим!

Продолжаем славную традицию встреч нового года у компьютера.
Основная Jabber-конференция

habr2015@conference.leechcraft.org

Сервер: conference.leechcraft.org
Комната: habr2015

Резервная (лимит до 100):

habr2015@conference.jabber.ru

Сервер: conference.jabber.ru
Комната: habr2015

Просьба указывать часовой пояс в нике (Nickname[+3])

История:
2010 год — habrahabr.ru/post/111026/
2011 год — habrahabr.ru/post/135567/
2012 год — habrahabr.ru/post/164453/
2013 год — habrahabr.ru/post/207948/

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js