LINUX.ORG.RU
ФорумTalks

А есть какой минималистичный открытый и проще XMPP чатиковый протокол?

 


1

1
  1. Допустим, хочется накатить корпоративный чатиковый сервер.

  2. Раздавать всем JABBER-клиенты - плохо, люди не любят помнить монструозные почто-подобные логины с именем сервера. Максимум username/password. Поэтому в настройках клиента на взлёте должен быть один раз вбит некий сервер, а дальше клиент по логинности выглядит как тупая аська или скайп. То есть, толжны существовать или вестись разработки свободных открытых клиентов под такой протокол. Теоретически, в клиенте должна быть переключалка серверов, вбитых один раз в настройках. В рамках каждого сервера у тебя независимый свой login/password.

  3. Не хочется гонять по сети XML - это мегаизбыточно. Хочется простой бинарный, но расширяемый протокол. Условно, первый байт - команда, далее команда-специфик бинарщина. Штук 15 команд пусть уже определено спекой, все до 100 зарезервированы, остальные можешь юзать под себя, если ты решил форкнуть проект.

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

Цель в получении открытого набора инструментов для разворачивания корпоративного мессенджера: поднял сервак, раздал всем android-клиент и готово.

Ну или давайте сами замутим такое. Без всех этих XML-легаси говен и разваливающейся федеративности или какой-то там криптоанархии и приватности, а с более простой целью описанной выше - простой «свой» stand-alone открытый мессенджер.

Юзкейсы:

  1. контора на 1000 человек купила дешёвую виртуалку на амазоне, раздала всем android-клиент и держит там корпоративную переписку. Отделение работы от личной жизни: вся работа в спец-мессенджере. Контора обанкротилась - виртуалку выкинули, клиенты поудаляли и ничего не зааффектило домашних котиков в любимом телеграме/ватсапе.

  2. Ты замутил умный дом и тебе надо куда-то лить и просматривать в виде чатика MQTT-подобные логи в разные 32 чатика про то, что происходило с разными 32 объектами. Состояние вентиляции, теплого пола, температуры, влажности и т.п. Отправлять какие-то текстовые команды со смартфона. Да, щас проще telegram-бота запилить, но через лет 10 что будет с телегой никто не знает особо. Конечно скорее всего всё так и останется, но мало-ли.

  3. Ты решил запилить свой мессенджер и прославиться как Дуров, но у тебя нет денег пилить свой клиент с нуля, максимум - сервер. Вот берёшь готовый протокол, говоришь где скачать клиент и все прутся.

Ключевое: клиент для тупых блондинок, похожий на вотсапчик и жрущий минимум трафика. Реализация базовых фич на уровне спеки протокола и на уровне клиента:

  1. Отправка текстовых месаг.

  2. Понятие цитат и ответов.

  3. Понятие мультимедиа-объекта типа голосовухи, видеомессаги, видоса, фотки. Передача аналогично телеге. Или не передача, если сервер решил не поддерживаться.

  4. Всякая там куча настроек чатика. Лимит частоты отправки, автоудаление месаг, белые списки, чёрные… всё такое.

Возможно надо просто форкнуть телегу, да.

Ответ на: комментарий от LikeABoss

IRC

Оно сложное, про какую-то федеративность и не консистентное. Нет понятия «id мессаги» для чатика, которая должна линейно расти с начала. Невозможно с сервера заслать в клиент команду вида «диапазон месаг N…M обновлён, перезагрузи» и всякие другие приколы. Например media-мессаги, которая описывает себя как картинку и указывает URL откуда её физическую можно загрузить.

kilokolyan
() автор топика

Был тут один, писал перспективный супер быстрый чатик на цэпэпэ. Хотя погоди. Ох ты ж ё…

cocucka ★★★★☆
()

Ты замутил умный дом и тебе надо куда-то лить и просматривать в виде чатика MQTT-подобные логи в разные 32 чатика про то, что происходило с разными 32 объектами. Состояние вентиляции, теплого пола, температуры, влажности и т.п. Отправлять какие-то текстовые команды со смартфона. Да, щас проще telegram-бота запилить, но через лет 10 что будет с телегой никто не знает особо. Конечно скорее всего всё так и останется, но мало-ли.

Такое не в рамках чата надо делать.

theNamelessOne ★★★★★
()

так xmpp в виде ejabberd тебе и чатик и mqtt брокер. простенького бота написать, чтоб в оазнае комнаты разные ивенты кидал

Anoxemian ★★★★★
()
Ответ на: комментарий от theNamelessOne

Такое не в рамках чата надо делать.

Любая серия записей суть чатик, ибо есть последовательность событий. Представление вторично и настраиваемо. Хоть постранично.

kilokolyan
() автор топика
Ответ на: комментарий от theNamelessOne

Ты же свой убер-чат писал, что с ним случилось?

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

kilokolyan
() автор топика
Последнее исправление: kilokolyan (всего исправлений: 1)
Ответ на: комментарий от theNamelessOne

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

Не пойму. Молча всё это сделаю.

kilokolyan
() автор топика
Ответ на: комментарий от theNamelessOne

Так ты уже не со своим чатиком залезть хочешь же.

Как бы пофиг, постановка задачи включала и меня. Вот я изобрел себе какой-то бинарный протокол для обмена с сервантом по вебсокету, а лучше бы оно было не велосипед, а что-то открытое бинарное.

kilokolyan
() автор топика

Есть, CPU назвался когда-то... Клеви чатик... Ну и обьявляю перепись ^.-

Jetty ★★★★★
()
Последнее исправление: Jetty (всего исправлений: 1)

Не хочется гонять по сети XML - это мегаизбыточно.

Понятие мультимедиа-объекта типа голосовухи, видеомессаги, видоса, фотки.

Всякая там куча настроек чатика. Лимит частоты отправки, автоудаление месаг, белые списки, чёрные… всё такое.

Да ты ж офигел. XMPP.

t184256 ★★★★★
()

Не хочется гонять по сети XML - это мегаизбыточно. Хочется простой бинарный, но расширяемый протокол.

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

Раньше, когда я среди корешей продвигал XMPP в массы, так сказать, я им просто скидывал архив с запакованным PSI+ портативным для винды, а там уже все плагины настроенные были, смайлики нужные поставлены, темки, аккаунты на нужном сервере уже зареганы и забиты в профиль, нужные контакты уже добавлены и закладки на нужные конфы тоже. Просто распаковываешь архив, запускаешь и пользуешься. Это ведь несложно.

Да и вообще х.з. что там у вас за корпорации такие, что работники электронной почтой не пользуются… Логины и пароли примерно такие же. Только ведь люди на рабочем месте и не должны заниматься этими настройками. Для этого есть специалисты, пускай сами всё и настраивают. Да, логины с паролями тоже сами пускай вбивают там всё как надо. Это их работа вообще-то. А баба Срака должна просто прийти сесть за комп и работать, а не логины с паролями там всякие вводить, понимаешь ли. Максимум логин с паролем от своего пользователя в домене, чтоб в винде залогинится на компе у себя.

Daedalus
()
Последнее исправление: Daedalus (всего исправлений: 5)
Ответ на: комментарий от kilokolyan

В браузерной версии такое не можно - в оффлайне там считай всего клиента тупо нет

facepalm.jpg

сервис-воркеры + кэш

InterVi ★★★★
()

простой открытый минималистичный бинарный протокол

Метапрог.Онлайн.

mertvoprog
()
Ответ на: комментарий от kilokolyan

сервис-воркеры + кэш

Жопапальм.пнг

Ниасилил? Покури, там ничего сложного нет.

ddidwyll ★★★★
()
Последнее исправление: ddidwyll (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.