Opened 8 years ago
Closed 8 years ago
#194 closed улучшение (fixed)
Добавить функцию "чат" (служебная связь) в вебинтерфейс блока
Reported by: | san | Owned by: | alx |
---|---|---|---|
Priority: | средний | Milestone: | 1 очередь |
Component: | web-интерфейс (sw) | Keywords: | |
Cc: |
Description
При пусконаладочных работах и во время устранения аварий такая функция оказалась бы полезной.
Можно сделать отдельную вкладку "Чат" .
При появлении нового (непрочитанного пользователем) сообщения отображать значёк в заголовке вкладки (как в обновлениях ПО)
Любой пользователь подключенный к блоку может передавать сообщения в чат. Сообщения можно не хранить в ПЗУ, для вышеобозначеной задачи этого не требуется, история может очищаться при перезапуске.
Элементы вкладки:
- История переписки
- Поле ввода сообщения
- Имя (как представился пользователь, т.к. разные пользователи могут быть залогенены под одним и тем-же admin, как часто бывает при пусконаладке)
- кнопка отправить
Change History (3)
comment:1 by , 8 years ago
comment:2 by , 8 years ago
Milestone: | 2 очередь → 1 очередь |
---|
Note:
See TracTickets
for help on using tickets.
Если вместе с именем отображать имя хоста/IP адрес, с которого пришел клиент, то и имя вводить не надо, разные admin'ы и так будут различаться...
Есть предложения по алгоритму, каким образом браузер будет запрашивать новые сообщения? Так как HTTP - stateless протокол, и обновления могут происходить только периодически по запросам клиентов, получается, что swd должен хранить сообщения чата за некоторое время (заведомо превышающее период обращения клиентов), например 1 минуту. Логично? И, наверное, сообщения должны как-то идентифицироваться, чтобы клиент в запросе мог указать идентификатор последнего имеющегося у него сообщения. Как формировать такие идентификаторы, которые, к тому же, должны переживать рестарты swd (иначе чат перестанет работать после рестарта)? Есть мысли лучше чем время в секундах плюс некий номер?