METHOD DETAILS
This document specifies the Status and Error Code Numbers and also describes the events and functions supported by VaxVoice Proxy Server SDK Components:
CODE NUMBERS:
  - Error Codes
  - Status Codes
 
EVENTS:
  - OnClientRegisterEvent
  - OnClientUnRegisterEvent
  - OnClientConnectionLostEvent
  - OnClientTextEvent
METHODS:
  - Initialize()
  - UnInitialize()
  - SetLicenceKey()
  - GetVaxObjectError()
  - GetTotalRegisteredClient()
  - SetConnectionLimit()
  - GetRegisterClientIP()
  - GetRegisterClientPort()
  - SendTextToClient()
  - DisconnectClient()
  - BlockClient()
  - UnBlockClient()
  - RejectRegister()
  - AcceptRegister()
  - GetClientOutBoundTotalBytes()
  - GetClientInBoundTotalBytes()
  - GetClientOutBoundDataRate()
  - GetClientInBoundDataRate()
  - GetOutBoundDataRate()
  - GetInBoundDataRate()
  - GetOutBoundTotalBytes()
  - GetInBoundTotalBytes()
ERROR CODES DETAIL:
ERROR CODES DESCRIPTION
10 VAXOBJECT is not initialized properly, To initialize, the VaxVoice Object Initialize method should be called.
11 Can't open local communication/Listen port, port is invalid or is already in use. OR  Provided Listen IP is not valid
12 Invalid license key.
13 Provided UniqueId is not connected to the proxy server
14 Provided UniqueId is not valid
EVENTS:
OnClientRegisterEvent
This Event is triggered by the VaxVoice control, when a client registers/connects to the proxy server. 
Parameters Values:
  - Client UniqueId
  -  Password
  -  User Data  (User data can be any text based information.)
  - Client IP
  - Client Port
Remarks:
AcceptRegister method can be used to accept the client connection. For more details, please see the same source code.
OnClientUnRegisterEvent
This Event is triggered by the VaxVoice control, when a client un-registers/disconnects from the Proxy server.
Parameters Values:
  -  Client UniqueId
OnClientConnectionLostEvent
This Event is triggered by the VaxVoice control, to notify about the connection of the proxy server to a client lost.
Parameters Values:
  -  Client UniqueId
OnClientTextEvent
This Event is triggered, to notify about the text message sent by the client.
Parameters Values:
  - Text message string
  -  User Data  (User data can be any text based information.)
  - Client IP
  - Client Port
METHODS:
Initialize()
This method is called to initialize the VaxVoice control. It requires Port Number and IP to listen for incoming connections and/or data. After initializing, VaxVoice control starts listening for incoming Connections.  

Listen IP is required, if the machine on which you are running proxy server application has more than one IP addresses.

Parameters:
  - Listening Port Number
  - Listen IP (To bind the Proxy server application to a specific IP)
Return Value:
Non-zero on success, otherwise 0, and a appropriate error code can be retrieved by calling GetVaxObjectError() method.
UnInitialize()
To uninitialize the VaxVoice control, this method can be used.
SetLicenceKey()
Call this method, to set the License key.
Parameter:
  - License Key Provided by VaxVoice
Return Value:
Non-zero on success, otherwise 0, and a specific error code can be retrieved by calling GetVaxObjectError() method.
Remarks:
You must pay one-time License fee in order to get the License Key. After getting the License key, you will set it using this method and it will remove the evaluation message box & expiry.
GetVaxObjectError()
Call this method, to get the error for the last operation that failed.
Return Value:
  - Error Code Number
GetTotalRegisteredClient()
Call this method, to get the total number of clients registered to the Proxy Server.
SetConnectionLimit()
To set the connections limit.
Parameters:
- Number of connections (0 = Unlimited)
Return Value:
Non-zero on success, otherwise 0, and a specific error code can be retrieved by calling GetVaxObjectError() method.
GetRegisterClientIP()
Method to get the IP of any registered client.
GetRegisterClientPort()
Method to get the Port of any registered client.
SendTextToClient()
Method to send text message to any client.
Parameters:
  - Client IP
  - Client Port
  - Text Message
Return Value:
Non-zero on success, otherwise 0, and a appropriate error code can be retrieved by calling GetVaxObjectError() method.
DisconnectClient()
Method to close the connection of any client.
Parameters:
  - Client UniqueId
Return Value:
Non-zero on success, otherwise 0, and a appropriate error code can be retrieved by calling GetVaxObjectError() method.
BlockClient()
To block IP & port of a client.
Parameters:
  - Client IP
  - Client Port
Return Value:
Non-zero on success, otherwise 0, and a appropriate error code can be retrieved by calling GetVaxObjectError() method.
UnBlockClient()
To unblock IP & port of a client.
Parameters:
  - Client IP
  - Client Port
Return Value:
Non-zero on success, otherwise 0, and a appropriate error code can be retrieved by calling GetVaxObjectError() method.
AcceptRegister()
Method to accept the connection request sent by the client.
Parameters:
  - Client UniqueId
Return Value:
Non-zero on success, otherwise 0, and a appropriate error code can be retrieved by calling GetVaxObjectError() method.
RejectRegister()
Method to reject the connection request sent by the client.
Parameters:
  - Client UniqueId
Return Value:
Non-zero on success, otherwise 0, and a appropriate error code can be retrieved by calling GetVaxObjectError() method.
GetClientOutBoundTotalBytes()
To get the total outbound bandwidth used by a specific client.
GetClientInBoundTotalBytes()
To get the total inbound bandwidth used by a specific client.
GetClientOutBoundDataRate()
To get the outbound bandwidth per second used by a specific client.
GetClientInBoundDataRate()
To get the inbound bandwidth per second used by a specific client.
GetOutBoundTotalBytes()
Total Outbound bytes, since the VaxVoice Object is initialized.
GetInBoundTotalBytes()
Total Inbound bytes, since the VaxVoice object is initialized.  
GetOutBoundDataRate()
Outbound Bytes per second.
GetInBoundDataRate()
Inbound Bytes per second.