Настройка доступности пользователей в чате (Сообщения)
Добавлено: 15 апр 2026, 13:57
В работе очень необходимы две опции чата (сообщений):
1) возможность пользователю отключать статус "В сети"
2) возможность пользователю отключать прием сообщений от отдельных пользователей и групп пользователей.
Практика использования складывается так, что руководители подключены к чату наряду с другими пользователями (сотрудниками и клиентами).
В логике работы требуется, чтобы руководители имели возможность общения с сотрудниками и клиентами.
В текущей ситуации сотрудники и клиенты всегда видят доступность каждого руководителя в сети и могут спамить его сообщениями.
Текущий функционал позволяет только отключить целиком доступность чата с руководителями (пользователь соответствующей группы), что плохо, т.к. руководители по своим делам общаются с другими пользователями (сотрудниками и клиентами).
Решать ситуацию путем перенастройки групп доступа не получается, т.к. правила коммуникации людей между собой меняются динамически (мало того, что придется делать кучу сервисных групп доступа, но и постоянно менять членов этих групп, что "на лету" делать не получится).
Возможность выставления статуса доступности (в идеале для индивидуальных пользователей и (или) групп пользователей, равно как нотификатор доступности (кружок "онлайн"), была бы очень полезна.
Вариант реализации. Три статуса активности:
- Активный - работает как сейчас;
- Недоступен - статус offline для назначенных пользователей (групп пользователей) и невозможность этим пользователям (группам) отправлять сообщения адресату;
- Не беспокоить - статус offline для назначенных пользователей (групп пользователей), при этом пользователи могут отправлять сообщения, но они не показываются адресату до момента установки адресатом статуса "Активный".
*** небольшое уточнение к варианту реализации:
статусы (Активный, Недоступен, Не беспокоить), устанавливаются не пользователю системы (в примере - это руководитель), а тем пользователям, которые являются его контактами в чате (в примере - сотрудники и клиенты). По умолчанию для всех контактов пользователя в чате статус - Активный. А ручками можно нужным пользователям выставлять иные статусы и возвращать активный статус.
***
На примере. Есть связка настроек для чата:
- руководитель (пользователь группы "Руководители")
- сотрудник (пользователь группы "Сотрудники")
- клиент (пользователь группы "Клиенты")
могут общаться в чате между собой, но руководитель может, для отдельного сотрудника или клиента (в составе группы "Сотрудники" или клиенты):
-настроить статус свой статус как "Недоступен" и этому пользователю "руководитель" будет показываться со статусом offline (не показывать зеленым кружочек онлайна), а коммуникация пользователя с руководителем будет невозможна (пользователи видят руководителя в чате, но не могут отправлять сообщения),
-настроить свой статус как "Не беспокоить" и этому пользователю "руководитель" будет показываться со статусом offline (не показывать зеленым кружочек онлайна), но возможна односторонняя коммуникация пользователя с руководителем (пользователи могут отправлять сообщения руководителю, но эти сообщения не показываются руководителю до смены статуса на "Активный").
1) возможность пользователю отключать статус "В сети"
2) возможность пользователю отключать прием сообщений от отдельных пользователей и групп пользователей.
Практика использования складывается так, что руководители подключены к чату наряду с другими пользователями (сотрудниками и клиентами).
В логике работы требуется, чтобы руководители имели возможность общения с сотрудниками и клиентами.
В текущей ситуации сотрудники и клиенты всегда видят доступность каждого руководителя в сети и могут спамить его сообщениями.
Текущий функционал позволяет только отключить целиком доступность чата с руководителями (пользователь соответствующей группы), что плохо, т.к. руководители по своим делам общаются с другими пользователями (сотрудниками и клиентами).
Решать ситуацию путем перенастройки групп доступа не получается, т.к. правила коммуникации людей между собой меняются динамически (мало того, что придется делать кучу сервисных групп доступа, но и постоянно менять членов этих групп, что "на лету" делать не получится).
Возможность выставления статуса доступности (в идеале для индивидуальных пользователей и (или) групп пользователей, равно как нотификатор доступности (кружок "онлайн"), была бы очень полезна.
Вариант реализации. Три статуса активности:
- Активный - работает как сейчас;
- Недоступен - статус offline для назначенных пользователей (групп пользователей) и невозможность этим пользователям (группам) отправлять сообщения адресату;
- Не беспокоить - статус offline для назначенных пользователей (групп пользователей), при этом пользователи могут отправлять сообщения, но они не показываются адресату до момента установки адресатом статуса "Активный".
*** небольшое уточнение к варианту реализации:
статусы (Активный, Недоступен, Не беспокоить), устанавливаются не пользователю системы (в примере - это руководитель), а тем пользователям, которые являются его контактами в чате (в примере - сотрудники и клиенты). По умолчанию для всех контактов пользователя в чате статус - Активный. А ручками можно нужным пользователям выставлять иные статусы и возвращать активный статус.
***
На примере. Есть связка настроек для чата:
- руководитель (пользователь группы "Руководители")
- сотрудник (пользователь группы "Сотрудники")
- клиент (пользователь группы "Клиенты")
могут общаться в чате между собой, но руководитель может, для отдельного сотрудника или клиента (в составе группы "Сотрудники" или клиенты):
-настроить статус свой статус как "Недоступен" и этому пользователю "руководитель" будет показываться со статусом offline (не показывать зеленым кружочек онлайна), а коммуникация пользователя с руководителем будет невозможна (пользователи видят руководителя в чате, но не могут отправлять сообщения),
-настроить свой статус как "Не беспокоить" и этому пользователю "руководитель" будет показываться со статусом offline (не показывать зеленым кружочек онлайна), но возможна односторонняя коммуникация пользователя с руководителем (пользователи могут отправлять сообщения руководителю, но эти сообщения не показываются руководителю до смены статуса на "Активный").