Подія спроби реєстрації нового користувача.

 

Шаблон події
function OnBeforeRegister(iCID: integer; sMACAddress, sIP, sHardwareID, sCompNetName, sVer, sNick, sLastname, sFirstname, 
                          sSurname: string; iAvatar, iGender: integer; sEmail: string;
                          iRole, iLoginStyle: integer;
                          sDomain, sClientType, sNodeUserAgent, sNodeReferral: string): boolean;
begin
  // your own code  
  
  result := true;
end;
begin
end.


Замість коментаря може бути будь-який ваш код.

 

Опис параметрів

Параметр

Тип

Значення

iCID

integer

Connection ID клієнта, унікальний сеансовий ідентифікатор в онлайн структурі мережевих підключень до сервера;

sMACAddress

string

MAC адреса мережевого інтерфейсу користувача. Може бути порожнім, якщо це не win32 додаток;

sIP

string

IP адреса користувача;

sHardwareID

string

унікальний номер "заліза" комп'ютера користувача, тільки якщо це win32 додаток, інакше буде порожній рядок;

sCompNetName

string

мережеве ім'я комп'ютера користувача (NETBIOS). Тільки для win32 програми;

sVer

string

версія клієнтської програми;

sNick

string

нік користувача, який реєструється;

sLastname

string

прізвище користувача;

sFirstname

string

ім'я користувача;

sSurname

string

по-батькові користувача;

iAvatar

integer

номер аватара користувача, число;

iGender

integer

стать користувача;

sEmail

string

адреса електронної пошти користувача;

iRole

integer

індекс групи прав користувача, число;

iLoginStyle

integer

тип автентифікації користувача;

sDomain

string

ім'я домену користувача;

sClientType

string

тип застосунку користувача;

sNodeUserAgent

string

User Agent браузера користувача, якщо це WEB-чат;

sNodeReferral

string

адреса реферального посилання, якщо користувач реєструється з WEB-чату.

 

Значення, що повертається

True, якщо ви дозволяєте спробу реєстрації нового користувача, False — якщо ні.

 

Приклад
const
  sFileName = 'c:\temp\log.txt';
function OnBeforeRegister(iCID: integer; sMACAddress, sIP, sHardwareID, sCompNetName, sVer, sNick, sLastname, sFirstname, 
                          sSurname: string; iAvatar, iGender: integer; sEmail: string;
                          iRole, iLoginStyle: integer;
                          sDomain, sClientType, sNodeUserAgent, sNodeReferral: string): boolean;
  
begin
  DeleteFile(sFileName);
  
  AddLineToFile('CID: ' + inttostr(iCID), sFileName);
  AddLineToFile('MAC: ' + sMACAddress, sFileName);
  AddLineToFile('IP: ' + sIP, sFileName);
  AddLineToFile('HWID: ' + sHardwareID, sFileName);
  AddLineToFile('NetName: ' + sCompNetName, sFileName);
  AddLineToFile('Ver: ' + sVer, sFileName);
  AddLineToFile('Nick: ' + sNick, sFileName);
  AddLineToFile('Lastname: ' + sLastname, sFileName);
  AddLineToFile('Firstname: ' + sFirstname, sFileName);
  AddLineToFile('Surname: ' + sSurname, sFileName);
  AddLineToFile('Avatar: ' + inttostr(iAvatar), sFileName);
  AddLineToFile('Gender: ' + inttostr(iGender), sFileName);
  AddLineToFile('Email: ' + sEmail, sFileName);
  AddLineToFile('Role: ' + inttostr(iRole), sFileName);
  AddLineToFile('LoginStyle: ' + inttostr(iLoginStyle), sFileName);
  AddLineToFile('Domain: ' + sDomain, sFileName);
  AddLineToFile('ClientType: ' + sClientType, sFileName);
  AddLineToFile('UserAgent: ' + sNodeUserAgent, sFileName);
  AddLineToFile('Referral: ' + sNodeReferral, sFileName);
  
  result := true;
end;
begin
end.


Скрипт отримує всі дані щодо спроби реєстрації користувача та записує їх у текстовий файл.

 

Результат роботи:
 

Скрипт протоколирования данных пользователя, который пытается зарегистрироваться на сервере MyChat

 

Дивитися ще

AddLineToFile

DeleteFile

IntToStr