Скриптовое событие MyChat Server: OnClientDisconnect
Событие, возникающее в момент отключения пользователя от сервера. Штатного или аварийного — значения не имеет, отслеживается сам факт дисконнекта.
Шаблон события
procedure OnClientDisconnect(iCID, iUIN: integer; sIP, sClientType: string);
begin
// your own code
end;
begin
end.
Вместо комментария может быть любой ваш код.
Описание параметров
Параметр |
Тип |
Значение |
iCID |
integer |
Connection ID клиента, уникальный сеансовый идентификатор в онлайн-структуре сетевых подключений к серверу; |
iUIN |
integer |
уникальный идентификатор пользователя. Если пользователь не был авторизован по какой-то причине, может быть равен -1; |
sIP |
string |
IP адрес пользователя, который только что отключился; |
sClientType |
string |
тип клиентского приложения пользователя. |
Пример
Скрипт отслеживает, какой пользователь отключается от сервера, и, если он был авторизован (UIN <> -1), а также входил в чат из браузера (тип приложения = 'web'), то это событие протоколируется в текстовый файл лога с указанием даты, времени, UIN пользователя и его IP адреса.
const
LOG_FILE = 'c:\temp\webclients.log';
procedure OnClientDisconnect(iCID, iUIN: integer; sIP, sClientType: string);
var
s: string;
begin
if (sClientType = 'web') and (iUIN <> -1) then begin
s := 'UIN: ' + inttostr(iUIN) + ', IP: ' + sIP;
Protocol(s, LOG_FILE, true);
end;
end;
begin
end.