SimBioT19
@SimBioT19
{{ user.about }}

Как одноразовые уведомления реализованы в больших проектах?

Привет!
Вопрос простой, но интересна его правильная реализация.

Регистрируется клиент на сайте и ему показывается pop-up с короткой инструкцией, потому что он зашел в аккаунт самый первый раз. Затем похожее уведомление о том, что у нас скидка на premium аккаунты (рассказываем об этом один раз каждому клиенту).

И вот вопрос — как контролировать/хранить подобные "одноразовые" ситуации?
В БД создать для них отдельную таблицу с описаниями и устанавливать флаг? Правильно ли тогда будет, что каждый раз после входа в аккаунт нужно проверять, вызывался ли уже pop-up. А то, что это нужно проверять каждый раз, когда я захожу на страницу X?

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

Как же всё это разделить и не запутаться, так, чтобы потом ещё и иметь возможность пополнять список этих уведомлений?
  • Вопрос задан
  • 412 просмотров
Пригласить эксперта
Ответы на вопрос 2
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
если в сообщениях прослеживается определенная очередность, то можно иметь в таблице user доп поле типа integer, например stage и выводить сообщения. Относительно према, наверняка отдельная логика. Так как есть таблица с платежными данными и т.д. И есть отдельный компонент, который хранит логику соединения всего этого и формирования сообщения.
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Описанное Вами, ни что иное, как task-list автоматического менеджера, обслуживающего все аккаунты (на протяжении всего срока их существования).
1. Составляется таблица всех задач (task-list) для одного аккаунта (эталон). По мере надобности - пул может меняться: добавляться, редактироваться или меняться абсолютно полностью.
2. При создании нового аккаунта - ставятся авто-менеджеру эти задачи, применительно к новому аккаунту с отсчётом от срока активации аккаунта.
3. При входе пользователя - авто-менеджер берёт задачу из пула, и если есть что исполнять - исполняет: экскурсия по интерфейсу, оповещение о нововведениях и т.п.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы