public void Unregister(UDAgent pAgent)
        {
            try
            {
                //Unregister with Agent Web Service
                WSAgent.unRegister(pAgent);

                //Stop polling for events
                if (mpEventPollingTimer != null)
                {
                    mpEventPollingTimer.Dispose();
                    mpEventPollingTimer = null;
                }

                //Unregister with Events Web Service
                if (miAgentIndex > 0)
                {
                    WSEvents.unregisterAgentEventSubscriber(miAgentIndex);
                }
            }
            catch (Exception pError)
            {
                Console.WriteLine(pError.StackTrace);
            }
        }
        public void RegisterEx(UDAgent pAgent, UDAgentInfo pAgentInfo, UDProperty[] properties)
        {
            try
            {
                //Start polling for this agent's events
                miAgentIndex = WSEvents.registerAgentEventSubscriber(pAgent.agentLoginName);
                TimerCallback timerDelegate = GetNextEvent;
                mpEventPollingTimer = new Timer(timerDelegate, this, 100, 100);

                //Log into Centercord
                WSAgent.registerEx(pAgent, pAgentInfo, properties);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }