The event for registering a new user.

 

Event template


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.


You can put your code instead of the comment.

 

Description of parameters

Parameter

Type

Value

iCID

integer

Connection ID of the client, unique session identifier in the online structure of network connections to the server;

sMACAddress

string

MAC address of the user network interface. It can be empty if it is not a win32 application;

sIP

string

user's IP address;

sHardwareID

string

unique number of computer hardware if it is not a win32 application (if yes — an empty string);

sCompNetName

string

user's computer network name (NETBIOS). Only for win32 application;

sVer

string

version of the client application;

sNick

string

nick for a user that is going to be registered;

sLastname

string

user's last name;

sFirstname

string

user's name;

sSurname

string

user's middle name;

iAvatar

integer

number of the user avatar, number;

iGender

integer

user's gender;

sEmail

string

user's email address;

iRole

integer

index for user's rights group, number;

iLoginStyle

integer

user's authentication type;

sDomain

string

user's domain name;

sClientType

string

type of the user application;

sNodeUserAgent

string

User Agent of the user browser, if it is a WEB chat;

sNodeReferral

string

referral link address if a user is going to register from the WEB chat.

 

Return value

True, If you allow user to register, False if not.

 

Example


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.


When a user attempts to register the script receives all data and records them to the text file.

 

Work result:
 

Script for logging the data of a user that attempts to register on MyChat ServerCid

 

See also

AddLineToFile

DeleteFile

IntToStr