Скрипт реализован, но для этого пришлось немного доработать сервер, в версии 5.2 не было обработчика нужного события на сервере. В 5.3 будет работать, сможете подставить скрипт вот так:
broadcastlogscript.png
При создании оповещения будет писаться протокол в лог-файл:
broadcastslog.png
Собственно, текст скрипта:
Код: Выделить всёfunction OnCreateBroadcast(iCID, iUIN: integer; sUsersList: string;
dtActualTo: double; bMustRead,
bReadNotify: boolean; sMsg: string): boolean;
var
s, sName: string;
begin
sName := mGetNickFromUIN(iUIN);
s := 'Who: ' + inttostr(iUIN) + ' (' + sName + '), ' +
'To: ' + sUsersList + ' must read: ';
if bMustRead then s := s + 'yes' else s := s + 'no';
s := s + ', read notify: ';
if bReadNotify then s := s + 'yes' else s := s + 'no';
s := s + ', actual to: "' +
DateTimeToStr(dtActualTo, 'dd.mm.yyyy hh:nn') + '", ' +
'message: "' + sMsg + '"';
Protocol(s, mGetServerFolder('LOGS') + 'broadcasts.log', true);
result := true;
end;
begin
end.
Содержимое лога (пример):
Код: Выделить всё[25.04.2014 20:39:35] Who: 6 (Алексей Пикуров), To: 3, must read: yes, read notify: yes, actual to: "25.04.2014 23:59", message: "L$Привет, как дела? Это тестовое оповещение!"
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Team lead
Чат со мной