Pull to refresh

Comments 12

«Новые поступления», звучит как реклама в магазине.
Не моя вина, что слово «поступления» несколько перегружено значениями :) Так же как и слово «сообщения», кстати, и «записи», и многие другие.
Я бы лучше выбирал из одного слова — «Новое», «Свежее», «Последнее». Понятнее и чётче.
У этого способа есть огромный плюс — не приходится следить за тем что прочитал пользователь, что нет, когда был последний раз и каждый раз перепроверять это. За нас все сделает браузер самого пользователя. Казалось бы — такая мелочь, но это иногда на порядок разгружает сервер при большом потоке страниц/секунду
Но есть и минус — если пользователь заходит с разных компьютеров — мы будем заставлять его читать одни и те же новости по 2 раза.
На посещаемом ресурсе за время, потраченное на дорогу от одного компа к другому (например, с работы домой), все равно что-нибудь появится. А вообще первоочередное назначение фишки информировать посетителя о новых сообщениях в процессе лазения по вебсайту, то есть, грубо говоря, в ходе одной сессии (не в смысле HTTP-сессии).

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

Я нахожу только один — когда у пользователя открыт браузер со страницей годами.

Как бы у нас получается, когда пользователь заходит на страницу с новым контентом, то мы помечаем, что он заходил туда и одновременно меняем ссылку (будет отдаваться новая ссылка).

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

Я вижу это единственным способом, но насколько часто возникают такие ситуации? В большинстве случаев пользователь закрывает вкладку, когда уходит и/или обновляет/открывает страницу заново (это моё личное мнение и не надо сравнивать нас с обычными пользователями).

В общем в статье предложен хороший способ для сайтов, где уведомления сделаны без использования Comet/AJAX.
Что-то вы столько всего написали а не увидели очевидного варианта.
Допустим вчера пользователь все прочитал на всех компьютерах. Утром добавляем новость — пользователь просыпается и видит её дома — читает. Завтракает, едет на работу. А там там ему снова горит сообщение что есть новости.
Как бы у нас получается, когда пользователь заходит на страницу с новым контентом, то мы помечаем, что он заходил туда и одновременно меняем ссылку (будет отдаваться новая ссылка)
Кто-то из нас плохо понял медот описаный в статье, и это по ходу не я (:
То есть по вашему он не обновляет страниц и не закрывает вкладки?

Я вижу данный метод в том, что при прочтении в одном из браузеров нового контента, добавочная к URL информация меняется и при дальнейшем просмотрел просмотре уже другая URL выдаётся пользователю.

Рассмотрим на примере личных сообщений на сайте:
URL с добавочной информацией для разных состояний системы:
/messages/?notify={id}, где {id} — md5 от значения последнего обновления системы

Значение обновления системы может быть вызвано событиями «пользователь просмотрел сообщения», «пришло новое сообщение».

1. Изначальное состояние системы у пользователя нет новых сообщений — id(0).

2. Пользователь получает сообщение (событие «пришло новое сообщение»), у него меняется id(1). При переходе на новые страницы или открытия новых вкладок уже происходит с использованием нового id(1). Пользователь, не зависимо от браузера видит уведомление.

3. При переходе на данную (страницу с сообщениями) страницу из любого браузера ведёт к событию «пользователь просмотрел сообщения», у него вновь меняется id(2). Все вновь открытые вкладки будут выдаваться с новым id(2), а старые, в которых были открыты страницы с id(1), будут помечены как прочитанные в текущем браузере средствами браузера.

4. Остаются необработанными только страницы с id(1) в других браузерах, но человек скорее всего при переходе между браузерами закрывает окно или же обновляет страницу (о чём я выше писал).

Как-то так. Рабочий вариант логики системы, со всеми состояниями. Реализацию данной логики вижу на сайте в том или ином виде во Вконтакте.
Вы описали классический подход к системе уведомлений, а не тот, который описан в статье.
В статье описан вариант уведомлений без участия сервера и пользователь, своими действиями не вызывает никаких обновлений на сервере.
Можете привести примеры реализаций или где это можно применить (вариант без участия сервера)?
Вы как-то статью читаете по диагонали что ли. Автор ведь сам дал ссылку на свой проект где он использует этот метод real-english.ru/
Да и в комментариях выше мы обсудили с автором варианты, когда этот способ может быть полезен
Sign up to leave a comment.

Articles