Скриптовое событие MyChat Server: OnBeforeRegister
Событие попытки регистрации нового пользователя.
Шаблон события
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.
Скрипт получает все данные по попытке регистрации пользователя и записывает их в текстовый файл.
Результат работы:
 
