VMuktiAPI Print

3.1 VMuktiAPI:

VMuktiAPI is the core namespace which is used to create any user defined widgets for integrating it with Core VMukti Conferencing Engine. This library consits of various classes which helps other users to upload their modules and make it compactible with VMukti Platform.

 
                        Figure 10

There are some classes  and Namespaces  under VMuktiAPI . They are as follows:

Namespaces:

1) There is a namespace in the VMuktiAPI called VMuktiAPI.DomainBinders Which contains the methods for binding.
          VMuktiAPI.DomainBinders  have a class named DomainBinder  which inherits Binder class. The class have   following overrided methods.
                a)BindToMethod
                b)ChangeType

2) VMuktiAPI.Logging is a namespace under the VMuktiAPI , which include the class DebugTraceListener, having methods for tracing and logging application level data.
          DebugTraceListener  inherites CustomTraceListener and have the following overrided methods.
             a)TraceData    :    To format and write the line.
             b)Write           :    To write the line .
             c)WriteLine    :    To write line and end the line.

Classes:
      1) There is a sealed class named ClsConstants in the VMuktiAPI  which contains a listing of static constants used throughout the application.
           a  NullDateTime : The value used to represent a null DateTime value.
           b  NullInt            : The value used to represent a null int value
           c  NullLong         : The value used to represent a null long value.
           d  NullString       : The value used to represent a null string value.

      2) There is static class called  ClsException under the VMuktiAPI,  which includes the different static methods which raise on exceptions.

Method Name     

Description 

Log Error 

Create a new thread and sets priority for Error Log

Punch Error 

Creates an object of Exception and calls another methods.

WriteToDatabase 

Call the mathods to write into Error log file and EventLog file , if any database Exception is found. 

WriteToErrorLogFile 

Writes the Error Title ,Message , StackTrace and date and time to Error Log . 

WriteToEventLog

Writes the Error Message , StackTrace and Log Entry type Event Log File.

WriteToLogFile

. Writes the Error Message , StackTrace and Log Entry type Error Log File.

    3) There is also an important static class called  ClsGetIP4Address  which have a static method to find the IPv4 address. 

Method Name 

Description 

GetIP4Address 

Gets the host’s IPv4 Addresses . 

Another most important and most frequently used static class is VMuktiHelper, which includes static methods for registering event and also for firing registered Events. It also includes the method for starting the server and stopping it and also have some static Fields.

Method Name

Description

VMEvents 

This is list of VMuktiEvents type 

VMuktiServers 

This is list of NetPeerServer type. 

Static methods are as follows. 

Method Name

Description

CallEvent 

To call the registered events by eventName. with other arguments of object and VMuktiEventArgs type. 

RegisterEvent 

To register event with eventName. 

UnRegisterEvent 

To unRegister event with eventName. 

  1)  ClsLogging is a static class, which have a static method for writing into the trace log. 

Method Name

Description

WriteToTresslog 

To send information of any event to Monitoring System. 

2)    ClsPeer  is a class which have different peer fields , Properties and method . There are some private fields and all have the public property to get and set value.
Private field    Public property.

Private Field     

Public Property 

_ID User     

ID 

_DisplayName 

Loged In user’s Display name 

_FName 

Loged In user’s First name 

_LName 

Loged In user’s Last name 

_Emai 

loged In user’s Email Id 

_PassWord 

Loged In user’s PassWord  

_MeshID 

Mesh ID 

_Status 

User status 

_CurrPeerType 

_CurrPeerType 

_CurrAuthType 

Authentication type 

_Port4000Status 

Port 4000 Status 

_Port5060Status 

Port 5060 Status 

_Port1433Status 

Port 1433 Status 

_AuthServerIP 

Authentication server Ip 

_SuperNodeIP 

Super Node Ip 

_NodeIPs 

Current node Ip 

_CampaignID 

Campaign ID 

_GroupID 

GroupID 

_ActivityID 

ActivityID 

_CampaignName 

CampaignName 

_RoleName 

Role Name 

_StartTime 

Session Start Time 

_EndTime 

Session End Time 

 

There is a public method in the class.

Method 

Description

GetPeerDataContract 

To get all the information of the current peer for data contract. 

3)    ClsPeerDataContract  have the different peer field and properties and Enumerators.
      a. It has same Fields and Properties as in the ClsPeer.

4)    ConfData have  different methods to retrieve, add, update and delete values as per keys provided.

Method  

Description 

Init 

To init the keys 

GetKeyValue 

To get the key value 

AddKey 

To add the key value 

UpdateKey

To update the key value 

DeleteKey 

To delete the key value 

KeyExists 

To check that key Exists or not 

5)  VMuktiInfo is a static class under the VMUktiAPI which have static private variables and public properties. 

Private fields 

Public property 

_strMainConnectionString 

Main connection string 

_strSchemaNumber 

Schema Number 

_strSyncConnectionString 

Sync Connection string 

_strBootStrapIPs 

List of boostrap Ips 

_IsFileExists 

bool to show file exists or not 

_IsSoftPhone 

bool to show Soft Phone or not 

_objClsPeer 

ClsPeer object having current peer information 

_BootStrapDomain 

BootStrap Domain 

_SuperNodeDomain 

SuperNode Domain 

strFTPServerIP 

FTP server IP 

_strFTPPort 

FTP Port 

_strFTPUserName 

FTP User Name 

_strFTPPassword 

FTP Password 

_strFTPDirPath 

FTP Directory Path 

_strZipFileDownlaodLink 

Zip File Download Link