Событие, возникающее в момент отключения пользователя от сервера. Штатного или аварийного — значения не имеет, отслеживается сам факт дисконнекта.

 

Шаблон события

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.

 

Ещё посмотреть

IntToStr

Protocol