Идея для плагина - моментальные уведомления

Идея не нова, но как уже где то сказали — хорошие художники копируют)

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

Предлагаю отслеживать такие событий:
— Новое письмо
— Новый ответ к личному сообщению
— Ответ на комментарий пользователя
— Комментарии к топику пользователя
— Новые комментарии в подписанном топике (давно не хватает такой функции блин, элементарно же! Сделать кнопку «подписаться» и слать уведомления о ВСЕХ новых комментах к топику. Топик теряется в потоке информации, и каждый раз искать его в эфире, или даже в избранном, где у меня более 150 топиков… мягко говоря, неудобно.)

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

Вот, набросал для наглядности.
www.picatom.com

64 комментария

avatar
Вы не первый. кто-то уже просил подобное
avatar
Этот ответ мне понимать, как типа «достали уже с этими уведомлениями» или «вы не первый, значит спрос есть и пора бы мне уже заняться его разработкой»? =))))
avatar
просто констатация факта
avatar
просто как действительно указано ниже — это нагрузка на сервер. это его периодическое опрашивание каждым пользователем на предмет получения «свеженького»
avatar
ДА пора!)))
avatar
Такие вещи работают благодаря node.js и вк не исключение. Если вы хотите убить ваш задрипанный впс к чертям от аякс запросов то пожалуйста. Но те кто создает серьезные качественные проекты реализуют его посредством node.js Поэтому сразу же отпадают все те кто использую хостинг для содержания LiveStreet, а плагин со своими зависимостями из раздела общедоступных и простых переходит в статус высокобюджетных и серьезных.

Если есть вопросы или критика по поводу моих мыслей и мнений прошу отписаться.
avatar
Вопрос конечно может быть глупым, но… что такое node.js и почему он не может работать на впс?
avatar
Как раз таки только на впс он и может работать, а для всех терминологических вопросов есть google
avatar
Был бы плагин, а вопросы мощностей — решаемы.
avatar
Вопросы мощностей всегда решаемы, а вот финансовая сторона такой разработки и ее поддержки высокая.
avatar
нет денег на хостинг — отключи функционал, о чем разговор вообще?
avatar
Стоит вспомнить сколько лет вк работало без этой вроде бы простой фишки и подумать почему же появилась сейчас.
avatar
наверное потому, что комет-сервер сделали только сейчас?
avatar
для 04 livestreetcms.com/addons/view/220/ сообщения которые в личку
avatar
видел, знаю)
avatar
Уже готовы наработки в связке с node.js
Встал вопрос много ли народу имеет VPS/VDS, так же самостоятельно сможет установить ноду?
Создал голосование.
avatar
node.js, как я понял, пингует сервак через определенный отрезок времени. Так может уменьшать интервал пинга и выводить определенный «список событий» за определенное время(5 минут, например)?
Например вынести это как настройку в плагине между VPS/VDS(стандартный интервал пинга) и обычным хостинг-аккаунтом(интервал времени и список).
avatar
Честно говоря я понял вас только на половину.

Node.js это событийно-ориентированнный и что важно заметить сервер! Такой же как apache под которым крутиться php модуль, благодаря которому и работает наш любимый livestreet. Node.js выдерживает тысячи и более подключений и именно он отдает нам эти самые уведомления. А livestreet и php в моей реализации всего лишь при происхождение нужных событий(новое письмо, новый комментарий) передают параметры с именами и текстами в очередь сообщений node.js
avatar
Допустим, node.js не такой же, как apache, который уже давно из веб-сервера превратился в сервер приложений. Но меня сейчас интересует не понятийный аппарат, а совершенно практический вопрос — какого рода наработки имеются и где с ними можно ознакомиться?
avatar
90% готово, осталось только передать в метод отправки уведомлений необходимые тексты для отображения. Т.е создать необходимые делегаты.
avatar
не сочти за труд написать пост, когда будет готова демка или напиши мне в инбокс, если не считаешь нужным доводить это до широких масс
avatar
есть ли новости по этому вопросу?
avatar
У меня не было цели доделать до конца к новому году, но в перспективе она есть.
За это время все переписано с нуля и упрощено.

В итоге имеем следующие вещи:
связь php и node.js через unix-socket, и это очень здравое и полезное решение; используем либу socket.io, что гарантирует нам охват всех пользователей от самых древних браузеров до современных с использование вебсокетов. Т.е сейчас например пользователь хрома практически моментально получит уведомление о сообщении.
avatar
также очень заинтересован, спасибо!
avatar
socket.io — это очевидное, если не сказать безальтернативное решение. К концу месяца понятно, что скорее всего будет не до этого. Есть ли какие-то ориентировочные планы по реализации?
avatar
Плагин готов, теперь нужны тесты и обкатка.
Реализовано все что указано в топике(кроме подписки на комментарии топика) + остальные уведомления которые так же имеют место быть.

Прилагаю скрин:
avatar
beauty_free
demo есть? потестировать
avatar
Готов предоставить сервер, если необходимо
avatar
Готов принять участие в тестировании. Какова стоимость плагина?
avatar
Вистую на участие в тестировании и на покупку.
avatar
Когда плагин выйдет?
avatar
Плагин уже работает и хочется заметить лучше чем планировалось.
Переписывается архитектура на более гибкую и расширяемую, что бы в будущем докачивать новый функционал, создается документация по установке, делается инсталлятор.

Помимо уведомлений теперь имеется подгрузка комментариев.
Дальше больше, но сейчас приоритет создать гибкую архитектуру node.js сервера для будущего дополнения livestreet'a real-time решениями.
avatar
Погонять и попробывать можно написав мне в скайп, когда будет релиз конечно будет тестовая версия для всех благодаря поддержки пользователя peholod .
avatar
а как насчёт dklab.ru/lib/dklab_realplexor/?
установка быстрая, работает с апаче и т.д.
avatar
Знаком с ним чисто теоритически, а мнения о нем по отзывам, но думаю лучше чем тут написали не сказать.

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

Node.js работает хорошо даже на впсках бюджетного уровня и будет держать большее количество клиентов чем любой realplextor. Да и по сути самый производительный вариант это писать на Erlang.

Я думаю тут на каждом варианте можно поиграть.
avatar
Т.е если до сих пор не понятно то пользователь нашего сайта отсылает переодически запросы(long poll) к node.js и получает уведомления. php как уже написал выше только создает очередь сообщений на node.js
avatar
Расскажите пожалуйста откуда вы взыли это

Такие вещи работают благодаря node.js и вк не исключение.

Во-первых node.js это всего лишь фреймворк, даже не технология, и все что можно делать на нем можно сделать и без него.

Во-вторых вконтакте не использовали node.js у себя, о чем упоминали на своем последнем докладе на highload (очень, кстати, волновавший участников конференции вопрос был)
avatar
Вконтакте использует node.js, но как я понимаю только для своего мессенджера:
# node.js — прослойка для реализации XMPP, живет за HAProxy

Вот статья на тему архитектуры вконтакте: www.insight-it.ru/masshtabiruemost/arkhitektura-vkontakte/

Хотя статья уже старовата, и возможно сейчас что-то поменялось…
avatar
Или что-то поменялось cо времен того highload, не суть.
Я к тому, что мне интересно откуда выросло утверждение, что для простых оповещений нужно использовать Node.js
avatar
Ну это уж наверное никто и не скажет…
А что предлагаете Вы использовать для реализации простых оповещений?
avatar
Я бы сделал на js + php и ждал первый проект на ЛС, которому мощностей среднего VPS не хватит, чтобы обслуживать эти реквесты, а потом уже думал о вынесении этой логики из LS.
avatar
Это серьёзная архитектурная ошибка, для таких задач нужны соединения, позволяющие серверу (Comet) отправлять данные клиенту без дополнительных запросов.
avatar
Давайте разложим по полочкам
Node.js конечно же фреймворк работающий под v8, но в савокупности при установке получается именно сервер.

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

Варианты реализации я прекрасно знаю: php+memcached, создать демоны на php, nginx, cgi, python.
Но нода на мой взгляд самое лучше в этом плане решение. Но сможете ли вы все это сделать в скорлупке хостинга? Нет, поэтому смысл дискуссии?
avatar
Отвечу тут.

Comet, WebSocket'ы это все хорошо и _правильно_, но проблемы надо решать по мере их поступления. В случае возникновения проблем из-за реализации на php с демоном нужно делать с использованием вышеназваных технологий, но… какая нужная нагрузка, чтобы вышеназыванный средний VPS начал загибаться под такой нагрузкой? Человек 500 онлайна как минимум, есть у кого-то здесь такой проект на LS?
avatar
нет и вряд ли будет в скорости времени.
avatar
Вы слабо разбираетесь в данной тематике.
avatar
К чему в результате то пришли, самим плагином кто нибудь занимался? Искал подобную тему и нашел, мне было бы достаточно уведомлений о новых личных сообщений и все, но я так понимаю разработкой плагина никто не занимается?
avatar
читайте комменты, занимаются.
avatar
Скажите когда ждать плагин? И будет ли он вообще?
avatar
Скоро, отписал в личку
avatar
Так разработка все таки движется?!
avatar
Очень интересует данный плагин, куплю, нужна для версии 051
avatar
Интересно, релиз этого плагина все-таки состоится?)
avatar
плагин, плагин!
avatar
да, кстати, уже без месяца год топику. Может пора уже релизить плагин? :)
avatar
Кто возьмется за разработку? Готов скинуться
avatar
читай топик, уже готово, просто автор что то медлит с новостями.
avatar
боюсь огорчить, но я автора в свое время замучал вопросом «ну когда же?» и собственно все грустно. Может он передумал за последний месяц, если нет то не видать нам плагина.
avatar
Как-то ставил такое чудо, юзеры недельку поигрались, потом взвыли, потребовали, чтобы убрал. Напрягает и раздражает.
  • aex
  • 0
avatar
так можно же просто сделать настройку, кого раздрает пусть отключит.
avatar
Можно конечно, но всех раздражало. Сталкивался вообще с этими окошками? Когда их десятки вылазят? А тебе просто почитать, что-то хочется, или ты текст топика пишешь и обдумываешь. Только мешают. Да и тормоз приличный для сайта.
avatar
скажем так, в моих планах это не десятки, сообщения будут переделываться под специфику проекта.

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

Подробнее о плагине в топике livestreet.ru/blog/addons/13630.html
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.