Скриптовое событие MyChat Server: OnBroadcastMessage
Событие отправки оповещения пользователем MyChat.
Шаблон события
function OnBroadcastMessage(iCID, iUIN: integer; var sUsersList: string; var dtActualTo: double; var bReadNotify: boolean; iMsgType: integer; sMsg: string): boolean;
begin
// your own code
result := true;
end;
begin
end.
Вместо комментария может быть любой ваш код.
Описание параметров
Параметр |
Тип |
Значение |
iCID |
integer |
Connection ID клиента, уникальный сеансовый идентификатор в онлайн-структуре сетевых подключений к серверу; |
iUIN |
integer |
уникальный идентификатор отправителя сообщения (число > 0); |
sUsersList |
string |
изменяемый параметр. Список получателей сообщения, строка, UIN-ы пользователей через запятую; |
dtActualTo |
double |
изменяемый параметр. Дата актуальности сообщения (UTC); |
bReadNotify |
boolean |
изменяемый параметр. Уведомлять отправителя о прочтении сообщения каждым получателем или нет; |
iMsgType |
integer |
тип сообщения: |
sMsg |
string |
текст сообщения. |
Возвращаемое значение
True, если вы разрешаете отправку оповещения, False — если скрипт подавляет это оповещение.
Вы можете изменить получателей сообщения, флаг уведомления отправителя о прочтении, а также дату и время актуальности оповещения.
Пример
const
sChiefUIN = '3';
function OnBroadcastMessage(iCID, iUIN: integer; var sUsersList: string; var dtActualTo: double; var bReadNotify: boolean; iMsgType: integer; sMsg: string): boolean;
begin
result := true;
if inttostr(iUIN) <> sChiefUIN then
if not IsStringInList(sChiefUIN, sUsersList, ',', false) then
sUsersList := sUsersList + ',' + sChiefUIN;
end;
begin
end.
Скрипт проверяет, кто отправитель оповещения. Если это не начальник подразделения (UIN = 3) и он не включен в список получателей оповещения, то автоматически добавляет его в общий список получателей.