Это старая версия документа.


Уведомления в Web-интерфейсе

Уведомления включены по умолчанию в интерфейсе администратора и клиента.

Для отключения уведомлений в интерфейсе администратора, перейдите в меню Профиль и поставьте галочку в разделе «События» напротив «Отключено».

Для отключения уведомлений в кабинете пользователя, добавьте в libexec/config.pl $conf{USER_PORTAL_EVENTS_DISABLED} = 1.

Реализация

Клиентская часть

В клиентской части, приёмом сообщений занимается AMessageChecker, в скрипте messageChecker.js

Этот объект через заданый интервал (по умолчанию, 30 секунд) отправляет запрос на функцию form_events

Результат запроса в зависимости от наличия уведомлений:

  1. JSON масив объектов
  2. Пустая строка (нулевой длины)

При возврате непустой строки, происходит обработка уведомлений в зависимости от типа уведомления.
На даный момент, поддерживаются типы:

  1. Сообщение

Формат уведомлений

В зависмости от типа уведомление имеет следующий вид:

== Message ==

{ 
  "TYPE" : "MESSAGE",
  "TITLE" : "Message Title",
  "TEXT"  : "This is sample message text",
  "MESSAGE_ID" : 23,
  "EXTRA" : "https://demo.abills.net.ua:9443/admin/index.cgi",
  "CLIENT" : { "UID" : 2, "LOGIN" : "testuser" }
}

Все параметры, кроме TYPE, TITLE и TEXT являются опциональными.

Параметр MESSAGE_ID служит для создания ссылки для быстрого перехода к сообщению в Msgs
Параметр EXTRA - ссылка, которая будет отображена с тестом «TITLE».
Объект CLIENT отвечает за дополнительную отображаемую информацию о клиенте, к которому относится сообщение.