OBIMP и Bimoid – немного о новом проекте

OBIMP.
Прошло более года с того момента, как я начал посвящать свое свободное время разработке нового проекта в сфере IM. Казалось бы, ничего особого нового привнести в эту сферу уже невозможно и это в чём-то правильное суждение. Крупных публичных IM сетей, на сегодняшний день, достаточно большое количество, но большинство из них работает на закрытых протоколах, и сторонние альтернативные клиенты, мягко говоря, не шибко приветствуются владельцами таких сетей. И только единицы из них работают на открытом протоколе Jabber, который активно продвигается проектами qip, google talk, yandex online. Но это всё публичные IM сети с миллионами пользователей, а как же обстоят дела с интранетовскими или локальными IM сетями для небольшого числа пользователей?

Тут дела обстоят несколько хуже. Да, есть всё тот же Jabber и возможно большинство сейчас им и пользуется в локальных сетях, но всё остальное выглядит скучноватым и унылым, особенно клиентская часть (исключая конечно мультипротокольные клиенты). Поскольку я, по большей степени, имел дело с бинарными IM протоколами и не нашел особых преимуществ в “гипертекстовых” протоколах, то появилось естественное желание написать открытый бинарный протокол, для использования его в локальных сетях (это конечно не исключает его использование в публичных IM сетях). После долгой и трудной работы над мультипротокольным Infium-ом, очень уж захотелось создать простой протокол, сервер и клиент, пусть даже его предназначение будет не столь глобальным. В итоге за пол года родился на бумаге протокол OBIMP (Open Binary Instant Messaging Protocol – открытый бинарный протокол для мгновенной передачи сообщений). В данным момент его спецификация дорабатывается, приводится в порядок и будет доступна по адресу obimp.com для всех желающих. Для разработчиков, текущая спецификация протокола будет доступна на форуме проекта Bimoid.

Проект Bimoid – это сервер и клиент, работающие на протоколе OBIMP, и написанные на данный момент на языке программирования object pascal (Слово “Bimoid” – состоит из “bim” – binary instant messaging, “o” связка, “id” – идентификатор/учётная запись/аккаунт). Будущий сайт проекта – bimoid.com.

Bimoid Server.
Самая легкая версия серверной части настолько проста, что даже не предполагает  использования какой-либо базы данных (установил сервер-системный сервис, запустил утилиту администратора, настроил как надо и все дела, подключайся, регистрируй, используй). Серверную часть можно использовать в компьютерах с ОС Windows 2000 и выше, т.е. не требуется серверный вариант ОС. Вариант серверной части с использованием базы данных появится по мере необходимости. Если найдутся желающие написать серверную/клиентскую часть под иксоиды, то это только всячески приветствуется т.к. сейчас нет вообще никакой команды разработчиков, пока всё в одном лице :). Надеюсь по мере развития и востребованности появится и команда, и помощники.

Bimoid Messenger.
Наиболее интересный продукт для рядового пользователя. Тут хотелось постараться и написать очень легкий клиент, но одновременно и достаточно функциональный, с поддержкой скинов, языков, статус картинок, анимированных смайлов, вкладок сообщений, шифрования сообщений и т.д. Получился клиент, чем-то напоминающий старый добрый qip 2005, но гораздо легче, симпатичнее, быстрее и качественнее. Судить в общем-то конечному пользователю.  Парочка скриншотов мессенджера для наглядности.

   

Открытый исходный код?
Насчет серверной части – возможно. А клиент будет с закрытым исходным кодом.

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

46 комментариев на “OBIMP и Bimoid – немного о новом проекте”

  1. #1. ViolentOr :

    Выглядит здорово! Ждем =)


  2. Забавно. А что-то типа s2s как в джаббере планируется? В смысле, включая и далёкие перспективы

  3. #3. santiago26 :

    Клиент выглядит неплохо, уже хочется попробовать.
    Однако возник вопрос – зачем нужен новый протокол? Есть же открытый XMPP, в котором много интересных возможностей. И Вы сами пробудили к нему интерес у многих пользователей QIP.

    “только единицы из них работают на открытом протоколе Jabber, который активно продвигается проектами qip, google talk, yandex online” – говорите Вы. Но есть же и корпоративные джаббер-сервера. Почему не продвигать их? – это саымй интересный вопрос по данной новости.


  4. хорошая задумка. Ее бы объединить с оперными потугами в строну opera unite с ее как-бы интернет-пейджером и будет вкусный продукт.

    а скрины – тот же инфиум ;) что собственно и не удивительно.


  5. >> предполагается размещение рекламы на сайте проекта.
    т.е. рекламы на форуме qip было мало ? а там будет достаточно ? *ирония*

    А вот что домены Bimoid.com и Bimoid.ru уже зарегистрированы – действительно опыт =)

    Визуально – нравится, а вот функционал – не мне судить, так как нужды в таком клиенте не было. (хотя, вроде же использовал Vypress Chat и что-то еще похожее)

    P.S.
    Удачи в начинании.


  6. @SunChaser
    Будет необходимость, сделаем. Тут уж не у кого спрашивать не будем, ведь всё теперь своё :)

    @santiago26
    Ну надо же чтобы у пользователей был хоть какой-то выбор, а не только великий и могучий jabber :)

    @Shedko
    Не один из серверов, которые я в то время арендовал, не выдерживал наплыва пользователей при очередной смене протокола в аське. А для аренды/покупки более мощных серверов никаких средств от рекламы на сайте не хватит, только привлечение инвестиций. Тут же все просто и думаю обойдусь без инвестиций. Спасибо.


  7. > Ну надо же чтобы у пользователей был хоть какой-то выбор, а не только великий и могучий jabber :)

    для локалки и так вогон и маленькая тележка всего, да и в локалке-то по сути всё-равно что использовать – а уже огромное кол-во клиентов у протокола xmpp несомненный плюс, а вот простых серверов для хомячков у jabber маловато

    OBIMP и Bimoid Server работают только под win наскоолько я понимаю. что не есть хорошо когда корпоративные сервачки на linux/bsd(ну и на win тоже), т.е. как обычно кладем болт на пользователей альтернативных ОС.

    А так, вполне себе велосипед сам в себе =)


  8. А нахрена еще один протокол, когда есть XMPP, который прекрасно со всем справляется и расширяется? Нахрена плодить сущности?
    Я сомневаюсь, что среднестатистический админ будет геморроиться с тем, что ему неизвестно, а добавлять что-то неизвестное ему начальство не позволит.

    >Открытый исходный код?
    >Насчет серверной части – возможно. А клиент будет с закрытым исходным кодом.

    Еще одна вещь в себе?


  9. Очень интересно, ждем, хочется уже потестить)))))


  10. Ребята, вы не вчитываетесь в статью. Я не планирую сделать этот протокол таким огромным и глобальным, как XMPP. Сервер и клиент для небольших сетей, где все возможности и вся мощь джаббера просто не нужна. В некоторых локалках/организациях даже и админов нет, а вы хотите чтобы они сервер jabberа накатили. Да, это всё пока очень просто и для windows. Но если учесть то, как быстро появляются алтернативные клиенты, и многие из которых кроссплатформенные, то народ долго себя ждать не заставит, если конечно это кому-то нужно будет.

    @Radjah
    Да, как и utorrent, skype и многое другое бесплатное, с закрытым исходным кодом, но не менее популярное.

    И давайте не будем с темой велосипеда. Если кто-то видит протокол и сервер с клиентом по другому, не как в jabber, это не значит, что он не имеет права создать что-то новое, работающее по другим принципам, протоколам, алгоритмам.

  11. #11. xpert :

    Да, задумка хороша. Ждем. Пусть это будет наш первый, открытый и свободный российский протокол передачи сообщений, пусть даже не с мировым масштабом :)

  12. #12. Brasilius :

    Давно ждал от вас нечто подобное. Готов тестить хоть сейчас в своей конторе.
    Вопрос: всякие навязывания, как сейчас в qip, также будут присутствовать? Я так понимаю, что это персонально ваш проект и пока в нем никого кроме вас нет?


  13. @Brasilius
    Я уже достаточно давно не принимаю участия в развитии проекта qip, об этом я писал ещё в прошлом году. Здесь в навязываниях нет смысла, ведь и сервер и клиент будут установлены у вас в сети. Да пока никого нет в проекте. У меня были сомнения на счет перспективности проекта, но они отпали сразу после того, как мой знакомый у себя в небольшой компании поставил bimoid сервер и клиент в тестовых целях. Все теперь пользуются с огромным удовольствием, но некоторым правда не хватает мобильных версий и версий под мак, ну это наверно дело времени, возможно очень длительного времени :)


  14. Не уверен, что никсоидам особо помогут сырцы клиента или сервера. В никсах object pascal далеко не в лучшем состоянии пребывает. Вот спеки да…
    Но вообще имхо таки никсовый вариант сервера таки нужен, ибо сервера очень часто таки крутятся на каких-нибудь фряхах да линуксах.
    Кстати, а протокол предполагает какую-нибудь децентрализованность аля jabber?

    Теперь пару слов по поводу внешнего вида клиента: как-то на мой взгляд в нем есть некоторые ошибки, которые кочуют из проекта в проект. Ну например, зачем лишние поля в окне чата? Мне так кажется, что тултипа или чего-нибудь подобного вполне себе хватило бы. Зачем в контактлисте две кнопки поиска? Зачем такая здоровая кнопища с надписью меню? Из скрина не очень понятно, что делает волшебная кнопочка с плюсиком. Не уверен, что всем так уж нужно постоянно лицезреть свою аватарку.


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

    мобильные версии… офисный такой протокол для маленькой локалки =) что-то вы не договариваете..

    > Ребята, вы не вчитываетесь в статью. Я не планирую сделать этот протокол таким огромным и глобальным, как XMPP. Сервер и клиент для небольших сетей, где все возможности и вся мощь джаббера просто не нужна.

    так и сделали бы маленький и малофункциональный жабер сервер без поддержки уймы xep’ов(только самый минимум нужный) и клиент по нуждам =)

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


  16. Алексей Сидоров :Кстати, а протокол предполагает какую-нибудь децентрализованность аля jabber?

    На данный момент в протоколе есть тот минимум, необходимый для полноценного stand-alone IM сервера, т.к. предполагается все-таки небольшое число пользователей. Протокол достаточно расширяемый, чтобы из него сделать всё, что угодно. Так что, если возникнет необходимость, можно будет расширить возможности.

    А по клиенту, у вас ещё будет возможность и покритиковать, и попредлагать что-то новое на оф сайте. На данный момент клиент поддерживает 6 компактных вариантов вида окна списка контактов и столько же режимов отображения самих контактов. Окно сообщений также может быть компактным. Пощупаете когда сами, оцените думаю. Все особенности клиента пока не описываю, т.к. статья все-таки называется “немного” :) Спасибо за хороший коммент.


  17. @muhas
    Я конечно не хочу казаться упёртым разработчиком велосипеда, но у меня есть своё представление о том, как и что должно выглядеть. Может это и ошибочное представление, тут уж только время покажет. Будем надеяться, что от этого только выиграет конечный пользователь.


  18. Будет ли вами поддерживаться бибиотечка протокола для QIP Inf и 2010. Очень хочется, и не хочется плодить клиентов на компе.
    Надеюсь нигде не пропустил этого вопроса…


  19. Здравствуйте, Ильхам!
    Возможно я не правильно понял, но я отчётливо помню, как до взлома блога и после вашего ухода из qip, вы заявляли что следующий ваш проект не будет связан с темой IM.
    Я ошибаюсь?

  20. #20. warningmax :

    Очень красивый и функциональный клиент получился :) когда-то лет пять назад я скал такое … мечты сбываются :) спасибо Ильхам :) Хочу в бета тестеры :)

  21. #21. Notsaint :

    А как с многоязычной поддержкой будет? Не в плане самого меню, а в плане обмена сообщениями?


  22. @Волк
    Если такая потребуется, Сега наверно сделает. Если понадобится моя помощь, то она не заставит себя долго ждать :). Правда в мессенджерах есть несовместимость, особенно в плане иерархии групп, в qip ее нет.

    @MaKCuMyC
    Если мне память не изменяет, я сказал, что проект никак не будет связан с icq. Возможно как-то по-другому, но в том же духе.

    @warningmax
    Да пока незачто).

    @Notsaint
    Только UTF8. Если кому нужно шифрование, то ставит галочку в настройках, и UTF8 шифруется с помощью нативной виндовой 3DES с использованием временного приватного и публичного ключей. Для пользователя шифрование совершенно прозрачное. Почему не AES? Потому что его поддержки нет в win 2000. Да и 3DES вполне достаточно для надежной передачи сообщений.


  23. Хоть меленький, хоть трехколесный, но это всё равно велосипед.
    Зачем делать еще один протокол? Зачем сгонять пользователя с привычного клиента?
    Если уж есть желание написать, то напиши свою реализацию XMPP для квипа. Не увеличивай энтропию. ;)


  24. Забыл добавить. Если уж есть желание сделать шифрование, то сделай его на основе TLS и SSL. 3DES давно мхом покрылся.

  25. #25. Brasilius :

    Radjah, ну сколько можно об одном и том же? Предназначение проекта не заменить собой jabber, icq, msn и прочие. Еще раз статью прочитай. Удивляюсь терпению Инфа, наверное за годы уже выработалась выдержка на таких неугомонных. Инф, все правильно делаешь, так держать!


  26. > Предназначение проекта не заменить собой jabber, icq, msn и прочие. Еще раз статью прочитай.

    это как-то отменяет велосипедизм нового протокола? имхо, никак.

  27. #27. Brasilius :

    muhas, давай тогда сравним велосипеды поисковых систем Google, Yandex и еще с десяток поисковых систем. Зачем их создали? Были ведь вначале WebCrawler, Lycos, AltaVista, Aport, Rambler? Да и велосипедизм есть и был везде, иначе не было бы конкуренции и был бы сплошной коммунизм. Устраивает? Или еще примеров привести?


  28. @Brasilius
    Не мучайтесь, ничего вы не докажите. Каждый проект будет жить своей жизнью и всё у всех получится :). Если даже почитать комменты этой статьи, можно понять, что все люди дико разные, одни только рады, другим ничего не надо, а третьим просто немного потроллить. За время работы над qip, я научился извлекать из откликов только полезное, на остальное просто не обращаешь внимание.

  29. #29. demanov :

    INF

    замутите параллельно и для MAC OS X многие будут очень благодарны Вам


  30. Инф может возьмешь меня как старого альфа тестера ? ))))


  31. @Базич
    альфа не нужны) бета нужны)))


  32. Куда писать заявку бета тестерам? :)


  33. @Волк
    как только появится сайт форум и тд

  34. #34. Dr.Boom :

    На все вопросы, которые успели промелькнуть в голове, уже ответы есть.
    INF, я просто хочу пожелать удачи проекту и хорошей перспективы ему.


  35. @Dr.Boom
    Спасибо.


  36. Добрый день!

    Поддерживаю начинание, ибо давно пора нормальный протокол для IM реализовать!


  37. Я бы взялся за никсовый сервер. Можно как-нибудь получить спеки?


  38. @SysMan
    Спасибо.

    @WestlandAVS
    Конечно. Только дайте мне немного времени привести их в порядок. Сейчас я немного занят сайтом проекта. На этой неделе или на следующей, сайт проекта Bimoid в принципе будет готов. Открою форум и займусь спецификацией. У меня почти всё описано, кроме таких важных вещей как login sequence, reg sequence и тд. Я то знаю, как и чего работает, но новому человеку будет сложновато разобраться.


  39. INF,
    как я и писал ранее готов поддержать проект реализации сервера под OpenVMS, что касается специй, то как раз login/reg – оченя хотел бы посмотреть *до* того как проект “пойдёт” и ничего нельзя будет изменить.


  40. @SysMan
    Правильно, поэтому вначале спецификация будет доступна только на форуме.

  41. #41. broas :

    А будет ли Bimoid Messenger поддерживать XMPP протокол? Очень бы этого хотелось, потому что в нашей сети используется jabber. А вот клиент очень даже неплохо выглядит, можно перейти.


  42. @broas
    Об этом я тоже думал, создать к примеру BimoidJ клиент на протоколе jabber, но пока от этой идеи я отказался. Может в будущем, кто его знает, один и тот же клиент на бинарном и на гипертекстовом протоколе, звучит неплохо :)


  43. @SysMan
    > Поддерживаю начинание, ибо давно пора нормальный протокол для IM реализовать!
    XMPP уже есть. Что еще надо?
    Или у кого-то где-то свербит, что пришлось попросить реализацию у разработчиков одного опенсорсного клиента? :)


  44. @Radjah
    XMPP – убог.


  45. @SysMan
    Ну вы то хоть не начинайте), тут и так троллей хватает.


  46. Сайт проекта был запущен вчера, всем спасибо за комменты.