Ejemplo n.º 1
0
        /// <summary>
        /// Changes the properties.
        /// </summary>
        /// <param name="interactionId">The interaction identifier.</param>
        /// <param name="proxyId">The proxy identifier.</param>
        /// <param name="dispositionNotes">The disposition notes.</param>
        /// <returns></returns>
        public OutputValues ChangeProperties(string interactionId, int proxyId, KeyValueCollection addedProperties, KeyValueCollection changedProperties)
        {
            OutputValues output = OutputValues.GetInstance();

            output.Message     = string.Empty;
            output.MessageCode = string.Empty;
            output.ErrorCode   = 0;
            RequestChangeProperties requestChangeProperties = RequestChangeProperties.Create();

            try
            {
                requestChangeProperties.InteractionId = interactionId;
                requestChangeProperties.ProxyClientId = proxyId;
                if (changedProperties != null)
                {
                    requestChangeProperties.ChangedProperties = changedProperties;
                }
                if (addedProperties != null)
                {
                    requestChangeProperties.AddedProperties = addedProperties;
                }
                if (Settings.InteractionProtocol != null && Settings.InteractionProtocol.State == ChannelState.Opened)
                {
                    IMessage response = Settings.InteractionProtocol.Request(requestChangeProperties);
                    if (response.Id == EventPropertiesChanged.MessageId || response.Id == EventAck.MessageId)
                    {
                        logger.Info("------------RequestChangeProperties-------------");
                        logger.Info("InteractionId  :" + interactionId);
                        logger.Info("ProxyClientId    :" + proxyId);
                        logger.Info(" RequestChangeProperties : response :" + response.ToString());
                        logger.Info("-------------------------------------------------");
                        logger.Trace(response.ToString());
                        output.MessageCode = "200";
                        output.Message     = "Change Properties Successful";
                    }
                    else
                    {
                        output.MessageCode = "2001";
                        output.Message     = "Don't Change Properties Successful";
                    }
                }
                else
                {
                    logger.Warn("ChangeProperties() : Interaction Server Protocol is Null..");
                }
            }
            catch (ProtocolException protocolException)
            {
                logger.Error("Error occurred while change properties request " + protocolException.ToString());
                output.MessageCode = "2001";
                output.Message     = protocolException.Message;
            }
            catch (Exception generalException)
            {
                logger.Error("Error occurred while change properties request " + generalException.ToString());
                output.MessageCode = "2001";
                output.Message     = generalException.Message;
            }
            return(output);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Closes the error.
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
 public void CloseError(object sender, EventArgs e)
 {
     try
     {
         _dataContext.ErrorMessage   = string.Empty;
         _dataContext.ErrorRowHeight = new GridLength(0);
         if (chkb_evas.IsChecked == false && chkb_gvas.IsChecked == false && chkb_nvas.IsChecked == false)
         {
             btnLogin.IsEnabled = false;
         }
         else if (btnLogin.IsEnabled == false)
         {
             btnLogin.IsEnabled = true;
         }
         if (_timerforcloseError != null)
         {
             _timerforcloseError.Stop();
             _timerforcloseError.Tick -= CloseError;
             _timerforcloseError       = null;
         }
     }
     catch (Exception ex)
     {
         _logger.Error("Error occurred at CloseSignatureError : " + ex.Message);
     }
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Initialises the stat ticker.
        /// </summary>
        /// <param name="statListener">The stat listener.</param>
        public void InitialiseStatTicker()
        {
            try
            {
                Pointel.Statistics.Core.Utility.OutputValues Output = new Pointel.Statistics.Core.Utility.OutputValues();

                if (((_configContainer.AllKeys.Contains("statistics.enable-mystat-aid") &&
                      ((string)_configContainer.GetValue("statistics.enable-mystat-aid")).ToLower().Equals("true")) ||
                     (_configContainer.AllKeys.Contains("statistics.enable-ccstat-aid") &&
                      ((string)_configContainer.GetValue("statistics.enable-ccstat-aid")).ToLower().Equals("true"))))
                {
                    _logger.Debug("Window_Loaded : StatTicker Plugin Subscription Started");
                    statTickerListener = this;
                    statSubscribe.Subscribe("AID", statTickerListener);
                    _logger.Debug("Window_Loaded : StatTicker Plugin Subscriptn Completed");

                    List <CfgAgentGroup> agentGroup = new List <CfgAgentGroup>();
                    if (_configContainer.AllKeys.Contains("CfgAgentGroup"))
                    {
                        agentGroup = _configContainer.GetValue("CfgAgentGroup");
                    }
                    Output = statSubscribe.ConfigConnectionEstablish(_dataContext.ApplicationName, _configContainer.ConfServiceObject, _dataContext.UserName, _dataContext.UserName, "StatServer", agentGroup);

                    if (Output.MessageCode == "200")
                    {
                        statSubscribe.StartStatistics(_dataContext.UserName, _dataContext.ApplicationName, 0, 0, true, false);
                    }
                }
            }
            catch (Exception commonException)
            {
                _logger.Error("InitialiseStatTicker : " + commonException.Message.ToString());
            }
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Changes the properties.
 /// </summary>
 /// <param name="interactionId">The interaction identifier.</param>
 /// <param name="proxyId">The proxy identifier.</param>
 /// <param name="dispositionNotes">The disposition notes.</param>
 /// <returns></returns>
 public static Pointel.Interactions.Chat.Core.General.OutputValues ChangeProperties(string interactionId, int proxyId, Genesyslab.Platform.Commons.Collections.KeyValueCollection addedProperties, Genesyslab.Platform.Commons.Collections.KeyValueCollection changedProperties)
 {
     Pointel.Logger.Core.ILog logger = Pointel.Logger.Core.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "AID");
     Pointel.Interactions.Chat.Core.General.OutputValues output = Pointel.Interactions.Chat.Core.General.OutputValues.GetInstance();
     Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Requests.InteractionManagement.RequestChangeProperties requestChangeProperties = Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Requests.InteractionManagement.RequestChangeProperties.Create();
     try
     {
         requestChangeProperties.InteractionId = interactionId;
         requestChangeProperties.ProxyClientId = proxyId;
         if (changedProperties != null)
         {
             requestChangeProperties.ChangedProperties = changedProperties;
         }
         if (addedProperties != null)
         {
             requestChangeProperties.AddedProperties = addedProperties;
         }
         if (Pointel.Interactions.Chat.Core.Util.Settings.IxnServerProtocol != null && Pointel.Interactions.Chat.Core.Util.Settings.IxnServerProtocol.State == Genesyslab.Platform.Commons.Protocols.ChannelState.Opened)
         {
             Genesyslab.Platform.Commons.Protocols.IMessage response = Pointel.Interactions.Chat.Core.Util.Settings.IxnServerProtocol.Request(requestChangeProperties);
             if (response.Id == Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Events.EventPropertiesChanged.MessageId || response.Id == Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Events.EventAck.MessageId)
             {
                 logger.Info("------------RequestChangeProperties-------------");
                 logger.Info("InteractionId  :" + interactionId);
                 logger.Info("ProxyClientId    :" + proxyId);
                 logger.Info(" RequestChangeProperties : response :" + response.ToString());
                 logger.Info("-------------------------------------------------");
                 logger.Trace(response.ToString());
                 output.MessageCode = "200";
                 output.Message     = "Change Properties Successful";
             }
             else
             {
                 output.MessageCode = "2001";
                 output.Message     = "Don't Change Properties Successful";
             }
         }
         else
         {
             logger.Warn("ChangeProperties() : Interaction Server Protocol is Null..");
         }
     }
     catch (Genesyslab.Platform.Commons.Protocols.ProtocolException protocolException)
     {
         logger.Error("Error occurred while change properties request " + protocolException.ToString());
         output.MessageCode = "2001";
         output.Message     = protocolException.Message;
     }
     catch (Exception generalException)
     {
         logger.Error("Error occurred while change properties request " + generalException.ToString());
         output.MessageCode = "2001";
         output.Message     = generalException.Message;
     }
     return(output);
 }
Ejemplo n.º 5
0
        /// <summary>
        /// Saves the initialize parameters.
        /// </summary>
        /// <param name="applicationName">Name of the application.</param>
        /// <param name="userName">Name of the user.</param>
        /// <param name="password">The password.</param>
        /// <param name="ConfigHost">The config host.</param>
        /// <param name="ConfigPort">The config port.</param>
        /// <returns></returns>
        public bool SaveInitializeParameters(string applicationName, string userName, string password, string Place, string ConfigHost,
                                             string ConfigPort, string applicationType, string AuthenticationType)
        {
            bool          isSaved = false;
            XmlTextWriter writeUserDetails;
            XmlDocument   doc = new XmlDocument();

            try
            {
                logger.Debug("XMLStorage : SaveInitializeParameters : Method Entry");

                writeUserDetails =
                    new XmlTextWriter(
                        Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) +
                        "\\PHS\\AgentInteractionDesktop\\login_config.xml", Encoding.Default);

                writeUserDetails.WriteStartElement(rootElement);
                writeUserDetails.WriteStartElement(loginParamsElement);
                //Genesys Parameters Writing

                writeUserDetails.WriteStartElement("Initialize");


                writeUserDetails.WriteElementString("username", userName);
                writeUserDetails.WriteElementString("password", password);
                writeUserDetails.WriteElementString("place", Place);
                writeUserDetails.WriteElementString("applicationName", applicationName);
                writeUserDetails.WriteElementString("configHost", ConfigHost);
                writeUserDetails.WriteElementString("configPort", ConfigPort);
                writeUserDetails.WriteElementString("apptype", applicationType);
                writeUserDetails.WriteElementString("authenticationType", AuthenticationType);


                writeUserDetails.WriteEndElement();

                //writeUserDetails.WriteStartElement("Login");
                //writeUserDetails.WriteEndElement();


                writeUserDetails.Close();
                writeUserDetails = null;
            }
            catch (Exception generalException)
            {
                logger.Error("XML Storage Class : SaveInitialixeParameters Method : Exception caught : " +
                             generalException.Message);
            }
            finally
            {
                writeUserDetails = null;
                GC.Collect();
                logger.Debug("XMLStorage : SaveInitializeParameters : Method Exit");
            }
            return(isSaved);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Saves the initialize parameters.
        /// </summary>
        /// <param name="Filepath">The file path.</param>
        /// <param name="FileName">Name of the file.</param>
        /// <param name="dicHoldingDetails">The dictionary holding details.</param>
        /// <param name="value">The value.</param>
        /// <returns></returns>

        #region SaveInitializeParameters
        public bool SaveInitializeParameters(Dictionary <string, string> dicHoldingDetails, iCallData value)
        {
            bool isSaved = false;

            try
            {
                string folder = "";
                if (value.FileData.DirectoryPath != string.Empty)
                {
                    folder = Path.Combine(value.FileData.DirectoryPath, "");
                }
                else
                {
                    logger.Warn("SaveInitializeParameters File path is not specified");
                    folder = Path.Combine(Environment.CurrentDirectory.ToString(), "");
                }
                try
                {
                    if (!Directory.Exists(folder))
                    {
                        Directory.CreateDirectory(folder);
                    }
                    string file = "";
                    if (value.FileData.FileName != string.Empty)
                    {
                        file = Path.Combine(folder, value.FileData.FileName);
                    }
                    else
                    {
                        logger.Warn("SaveInitializeParameters File Name is not specified");
                        file = Path.Combine(folder, "calldata_vd");
                    }
                    writeUserDetails = new XmlTextWriter(file + ".txt", Encoding.Default);
                }
                catch (Exception fileException)
                {
                    logger.Error("Error occurred while writing data in Text file" + fileException.ToString());
                }

                IDictionaryEnumerator Enumerator = dicHoldingDetails.GetEnumerator();
                while (Enumerator.MoveNext())
                {
                    writeUserDetails.WriteElementString(Enumerator.Key.ToString(), Enumerator.Value.ToString());
                }

                writeUserDetails.Close();
                writeUserDetails = null;
            }
            catch (Exception generalException)
            {
                logger.Error("Error occurred " + generalException.ToString());
            }
            return(isSaved);
        }
 private void Window_Activated(object sender, EventArgs e)
 {
     try
     {
         MainBorder.BorderBrush  = new SolidColorBrush((Color)(ColorConverter.ConvertFromString("#0070C5")));
         MainBorder.BitmapEffect = ShadowEffect;
     }
     catch (Exception _generalException)
     {
         _logger.Error("Error occurred as " + _generalException.Message);
     }
 }
 /// <summary>
 /// Releases the force party chat session.
 /// </summary>
 /// <param name="sessionID">The session identifier.</param>
 /// <param name="proxyID">The proxy identifier.</param>
 /// <param name="userId">The user identifier.</param>
 /// <param name="chatClosingProtocol">The chat closing protocol.</param>
 /// <returns></returns>
 public static Pointel.Interactions.Chat.Core.General.OutputValues ReleaseForcePartyChatSession(string sessionID, int proxyID, string userId, string messageText)
 {
     Pointel.Logger.Core.ILog logger = Pointel.Logger.Core.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "AID");
     Pointel.Interactions.Chat.Core.General.OutputValues output = Pointel.Interactions.Chat.Core.General.OutputValues.GetInstance();
     try
     {
         Genesyslab.Platform.WebMedia.Protocols.BasicChat.MessageText newMessageText = Genesyslab.Platform.WebMedia.Protocols.BasicChat.MessageText.Create();
         newMessageText.Text = messageText;
         Genesyslab.Platform.WebMedia.Protocols.BasicChat.Requests.RequestReleaseParty requestReleaseParty = Genesyslab.Platform.WebMedia.Protocols.BasicChat.Requests.RequestReleaseParty.Create(sessionID, userId, Genesyslab.Platform.WebMedia.Protocols.BasicChat.Action.ForceClose,
                                                                                                                                                                                                  newMessageText);
         if (Pointel.Interactions.Chat.Core.Util.Settings.ChatProtocol != null && Pointel.Interactions.Chat.Core.Util.Settings.ChatProtocol.State == Genesyslab.Platform.Commons.Protocols.ChannelState.Opened)
         {
             Pointel.Interactions.Chat.Core.Util.Settings.ChatProtocol.Send(requestReleaseParty);
             logger.Info("------------ReleaseForcePartyChatSession-------------");
             logger.Info("SessionID  :" + sessionID);
             logger.Info("ProxyID    :" + proxyID);
             logger.Info("UserID    :" + userId);
             logger.Info("-----------------------------------------------------");
             logger.Info(requestReleaseParty.ToString());
             output.MessageCode = "200";
             output.Message     = "Release Force Party ChatSession Successful";
         }
         else
         {
             logger.Warn("ReleaseForcePartyChatSession() : Chat Server protocol is Null..");
         }
     }
     catch (Exception generalException)
     {
         logger.Error("Error occurred while Release Party Chat Session request " + generalException.ToString());
         output.MessageCode = "2001";
         output.Message     = generalException.Message;
     }
     return(output);
 }
Ejemplo n.º 9
0
        /// <summary>
        /// Loads the XML contacts.
        /// </summary>
        /// <param name="XMLFile">The XML file.</param>
        /// <returns>Dictionary&lt;System.String, System.String&gt;.</returns>
        public Dictionary <string, string> LoadXmlContacts(string XMLFile)
        {
            Dictionary <string, string> xmlContacts = new Dictionary <string, string>();
            StreamReader readUserDetails            = null;
            XmlDocument  configXml = new XmlDocument();

            try
            {
                if (readUserDetails == null)
                {
                    readUserDetails = new StreamReader(XMLFile);
                }
                configXml.LoadXml(readUserDetails.ReadToEnd());
                XmlNodeList nodeList = configXml.GetElementsByTagName("Users");
                if (nodeList.Count > 0)
                {
                    foreach (XmlNode node in nodeList)
                    {
                        string[] tr = node.InnerText.ToString().Split('/');
                        xmlContacts.Add(tr[0].ToString(), tr[1].ToString());
                    }
                }
            }
            catch (Exception commonException)
            {
                logger.Error("XML File Not found: " + commonException.Message);
                readUserDetails.Dispose();
            }
            readUserDetails.Dispose();
            return(xmlContacts);
        }
        /// <summary>
        /// Agents the logout.
        /// </summary>
        /// <param name="proxyId">The proxy identifier.</param>
        /// <returns></returns>
        public OutputValues AgentLogout(int proxyId)
        {
            OutputValues output = OutputValues.GetInstance();

            output.Message     = string.Empty;
            output.MessageCode = string.Empty;
            output.ErrorCode   = 0;
            try
            {
                RequestAgentLogout requestAgentlogout = RequestAgentLogout.Create();
                requestAgentlogout.ProxyClientId = proxyId;

                if (Settings.InteractionProtocol != null && Settings.InteractionProtocol.State == ChannelState.Opened)
                {
                    IMessage message = Settings.InteractionProtocol.Request(requestAgentlogout);
                    if (message != null)
                    {
                        switch (message.Id)
                        {
                        case EventAck.MessageId:
                            EventAck eventAgentLogout = (EventAck)message;
                            logger.Info("-------------AgentLogout----------------");
                            logger.Info("ProxyClientId    :" + proxyId);
                            logger.Info("Name    :" + eventAgentLogout.Name.ToString());
                            logger.Info("----------------------------------------");
                            logger.Trace(eventAgentLogout.ToString());
                            output.MessageCode = "200";
                            output.Message     = "Agent Logout Successful";
                            break;

                        case EventError.MessageId:
                            EventError eventError            = (EventError)message;
                            string     LoginErrorCode        = Convert.ToString(eventError.ErrorCode);
                            string     LoginErrorDescription = Convert.ToString(eventError.ErrorDescription);
                            logger.Trace(eventError.ToString());
                            output.ErrorCode   = eventError.ErrorCode;
                            output.MessageCode = "2002";
                            output.Message     = "AgentLogout() : " + LoginErrorDescription;
                            break;
                        }
                    }
                    else
                    {
                        output.MessageCode = "2001";
                        output.Message     = "Agent Logout UnSuccessful";
                    }
                }
                else
                {
                    logger.Warn("AgentLogout() : Interaction Server Protocol is Null..");
                }
            }
            catch (Exception commonException)
            {
                logger.Error("Error occurred while Agent Logout request " + commonException.ToString());
                output.MessageCode = "2001";
                output.Message     = commonException.Message;
            }
            return(output);
        }
Ejemplo n.º 11
0
 private void btnCancel_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         //if (emailSettings.popupWindow != null)
         //{
         //    emailSettings.popupWindow = null;
         //    _frmMessage = null;
         //}
         this.DialogResult = false;
     }
     catch (Exception generalException)
     {
         logger.Error("btnOK_Click:" + generalException.ToString());
     }
 }
        /// <summary>
        /// Connects the ucs.
        /// </summary>
        /// <param name="configObject">The configuration object.</param>
        /// <param name="contactAppName">Name of the application.</param>
        /// <returns></returns>
        public OutputValues ConnectUCS(ConfService configObject, NullableInt tenantDBID, string contactAppName, Func <bool, bool> contactServerNotification)
        {
            OutputValues      output            = null;
            ReadConfigObjects readConfigObjects = new ReadConfigObjects();

            try
            {
                Settings.comObject  = configObject;
                Settings.tenantDBID = tenantDBID;
                readConfigObjects.ReadApplicationObject(contactAppName);
                ContactConnectionManager createProtocol = new ContactConnectionManager();
                createProtocol.ContactServerNotificationHandler += new NotifyContactServerState(contactServerNotification);
                output = createProtocol.ConnectContactServer(Settings.PrimaryApplication, Settings.SecondaryApplication);
                if (output.MessageCode == "200")
                {
                    messageToClient.NotifyContactProtocol(Settings.UCSProtocol);
                }
                else
                {
                    messageToClient.NotifyContactProtocol(Settings.UCSProtocol);
                }
            }
            catch (Exception commonException)
            {
                logger.Error("ContactLibrary:ConnectUCS:" + commonException.ToString());
            }
            return(output);
        }
Ejemplo n.º 13
0
        public static List <string> ReadConfigKeys(string keyName, string[] defaultValues, List <string> validValues)
        {
            List <string> listValues = new List <string>();

            Pointel.Logger.Core.ILog _logger = Pointel.Logger.Core.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType,
                                                                                        "AID");
            try
            {
                if (ConfigContainer.Instance().AllKeys.Contains(keyName) &&
                    !string.IsNullOrEmpty(ConfigContainer.Instance().GetAsString(keyName).Trim()))
                {
                    listValues = validValues.Intersect(ConfigContainer.Instance().GetAsString(keyName).Split(',').Select(x => x.Trim()).ToArray().ToList()).ToList();

                    if (listValues.Count > 1)
                    {
                        listValues = listValues.Distinct().ToList();
                    }

                    if (listValues.Count == 0)
                    {
                        listValues = new List <string>(defaultValues);
                    }
                }
                else
                {
                    listValues = new List <string>(defaultValues);
                }
            }
            catch (Exception generalException)
            {
                _logger.Error("btnAdvanceSearch_Click: Error occurred as " + generalException.ToString());
            }
            return(listValues);
        }
Ejemplo n.º 14
0
        /// <summary>
        /// Leaves the interaction from conference.
        /// </summary>
        /// <param name="interactionID">The interaction identifier.</param>
        /// <param name="proxyID">The proxy identifier.</param>
        /// <param name="agentID">The agent identifier.</param>
        /// <param name="_chatClosingProtocol">The _chat closing protocol.</param>
        /// <returns></returns>
        public static Pointel.Interactions.Chat.Core.General.OutputValues LeaveInteractionFromConference(string interactionID, int proxyID, string agentID)
        {
            Pointel.Logger.Core.ILog logger = Pointel.Logger.Core.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "AID");
            Pointel.Interactions.Chat.Core.General.OutputValues output = Pointel.Interactions.Chat.Core.General.OutputValues.GetInstance();
            try
            {
                Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Requests.InteractionManagement.RequestLeaveInteraction requestLeaveInteraction = Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Requests.InteractionManagement.RequestLeaveInteraction.Create();
                requestLeaveInteraction.InteractionId = interactionID;
                requestLeaveInteraction.ProxyClientId = proxyID;
                requestLeaveInteraction.Reason        = null;
                //ReasonInfo reasonInfo = ReasonInfo.Create();
                //reasonInfo.ReasonDescription = agentID.ToString() + " Leaving from the Conference";
                //requestLeaveInteraction.Reason = reasonInfo;
                requestLeaveInteraction.Extension = null;
                if (Pointel.Interactions.Chat.Core.Util.Settings.IxnServerProtocol != null && Pointel.Interactions.Chat.Core.Util.Settings.IxnServerProtocol.State == Genesyslab.Platform.Commons.Protocols.ChannelState.Opened)
                {
                    Genesyslab.Platform.Commons.Protocols.IMessage response = Pointel.Interactions.Chat.Core.Util.Settings.IxnServerProtocol.Request(requestLeaveInteraction);
                    if (response != null)
                    {
                        switch (response.Id)
                        {
                        case Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Events.EventAck.MessageId:
                            logger.Info("------------LeaveInteractionFromConference-------------");
                            logger.Info("InteractionId      :" + interactionID);
                            logger.Info("ProxyClientId      :" + proxyID);
                            logger.Info("AgentId            :" + agentID);
                            logger.Info("-------------------------------------------------------");
                            logger.Trace(response.ToString());
                            output.MessageCode = "200";
                            output.Message     = "Leave Interaction From Conference Successful";
                            break;

                        case Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Events.EventError.MessageId:
                            logger.Trace(response.ToString());
                            output.MessageCode = "2001";
                            output.Message     = "Don't Leave Interaction From Conference Successful";
                            break;
                        }
                    }
                    else
                    {
                        output.MessageCode = "2001";
                        output.Message     = "Don't Leave Interaction From Conference Successful";
                    }
                }
                else
                {
                    logger.Warn("LeaveInteractionFromConference() : Interaction Server protocol is Null..");
                }
            }
            catch (Exception generalException)
            {
                logger.Error("Error occurred while Leave Interaction From Conference request " + generalException.ToString());
                output.MessageCode = "2001";
                output.Message     = generalException.Message;
            }
            return(output);
        }
Ejemplo n.º 15
0
        //  private CfgPerson _person = null;
        #endregion Field Declaration

        public void ReadApplicationValue(ConfService configProtocol, string applicationName)
        {
            try
            {
                // application = new CfgApplication(.Instance().ComObject);
                //CfgApplicationQuery appQuery = new CfgApplicationQuery();
                //appQuery.Name = applicationName;
                //CfgApplication application = configProtocol.RetrieveObject<CfgApplication>(appQuery);
                //if (application.Options.ContainsKey("agent.ixn.desktop"))
                //{
                //    KeyValueCollection keyValue = (KeyValueCollection)application.Options["agent.ixn.desktop"];
                if (ConfigContainer.Instance().AllKeys.Contains("interaction.case-data.transaction-object"))
                {
                    ReadTransaction(configProtocol, ConfigContainer.Instance().GetAsString("interaction.case-data.transaction-object"));
                }
                if (ConfigContainer.Instance().AllKeys.Contains("interaction.disposition.key-name"))
                {
                    setting.VoiceDispositionKeyName = ConfigContainer.Instance().GetAsString("interaction.disposition.key-name");
                }
                if (ConfigContainer.Instance().AllKeys.Contains("interaction.disposition-collection.key-name"))
                {
                    setting.VoiceDispositionCollectionName = ConfigContainer.Instance().GetAsString("interaction.disposition-collection.key-name");
                }

                //}
            }
            catch (Exception ex)
            {
                logger.Error("Error occurred as " + ex.Message);
            }
        }
Ejemplo n.º 16
0
 /// <summary>
 /// Handles the Click event of the Right control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param>
 private void Right_Click(object sender, RoutedEventArgs e)
 {
     Application.Current.Dispatcher.Invoke((System.Action)(delegate
     {
         base.stayOpenTimer.Stop();
         base.DisplayState = Pointel.TaskbarNotifier.TaskbarNotifier.DisplayStates.Hiding;
     }));
     try
     {
         Button tempbtn = sender as Button;
         if (tempbtn.Content.ToString().Contains("Reject"))
         {
             ChatAction.Invoke("Reject", _interactionId);
         }
         else if (tempbtn.Content.ToString().Contains("Accept"))
         {
             ChatAction.Invoke("Accept", _interactionId);
         }
         else if (tempbtn.Content.ToString().Contains("Cancel"))
         {
             this.ForceHidden();
         }
     }
     catch (Exception generalException)
     {
         logger.Error("Error occurred while Right_Click() : " + generalException.ToString());
     }
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="InboundUserControl"/> class.
 /// </summary>
 /// <param name="_eventInvite">The _event invite.</param>
 /// <param name="eventGetInteractionContent">Content of the event get interaction.</param>
 public InboundUserControl(EventInvite _eventInvite, EventGetInteractionContent eventGetInteractionContent)
 {
     try
     {
         InitializeComponent();
         dockCc.Visibility  = Visibility.Collapsed;
         dockBcc.Visibility = Visibility.Collapsed;
         if (_eventInvite.Interaction.InteractionUserData.Contains("Subject") &&
             !string.IsNullOrEmpty(_eventInvite.Interaction.InteractionUserData["Subject"].ToString()))
         {
             txtInboundSubject.ToolTip = txtInboundSubject.Text = _eventInvite.Interaction.InteractionUserData["Subject"].ToString();
         }
         else
         {
             txtInboundSubject.ToolTip = txtInboundSubject.Text = "(No Subject)";
         }
         if (_eventInvite.Interaction.InteractionUserData.Contains("To"))
         {
             txtInboundTo.Text = Pointel.Interactions.Email.Helper.EmailAddressValidation.GetEmailAddress(_eventInvite.Interaction.InteractionUserData["To"].ToString());
         }
         if (_eventInvite.Interaction.InteractionUserData.Contains("FromAddress"))
         {
             txtInboundFrom.Text = Pointel.Interactions.Email.Helper.EmailAddressValidation.GetEmailAddress(_eventInvite.Interaction.InteractionUserData["FromAddress"].ToString());
         }
         BindContent(eventGetInteractionContent);
     }
     catch (Exception ex)
     {
         logger.Error("Error occurred at InboundUserControl constructor" + ex.ToString());
     }
 }
        public CfgApplication ReadApplicationLevelServerDetails(string applicationName)
        {
            CfgApplication application = null;

            try
            {
                application = new CfgApplication(_configContainer.ConfServiceObject);
                CfgApplicationQuery queryApp = new CfgApplicationQuery();
                queryApp.TenantDbid = WellKnownDbids.EnterpriseModeTenantDbid;
                queryApp.Name       = applicationName;
                application         = _configContainer.ConfServiceObject.RetrieveObject <CfgApplication>(queryApp);
            }
            catch (Exception commonException)
            {
                logger.Error("Error occurred while reading:ReadApplicationAndConnectionTab" + applicationName + "=" + commonException.ToString());
            }
            return(application);
        }
Ejemplo n.º 19
0
 /// <summary>
 /// Closes the error.
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
 public void CloseError(object sender, EventArgs e)
 {
     try
     {
         _dataContext.CSErrorMessage   = "";
         _dataContext.CSErrorRowHeight = new GridLength(0);
         if (_timerforcloseError != null)
         {
             _timerforcloseError.Stop();
             _timerforcloseError.Tick -= CloseError;
             _timerforcloseError       = null;
         }
     }
     catch (Exception ex)
     {
         _logger.Error("Error occurred at CloseSignatureError : " + ex.Message);
     }
 }
        /// <summary>
        /// Gets the contact list.
        /// </summary>
        /// <param name="tenantId">The tenant identifier.</param>
        /// <returns></returns>
        public static OutputValues GetContactList(int tenantId, List <string> attributeNames, int startIndex)
        {
            Pointel.Logger.Core.ILog logger = Pointel.Logger.Core.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "AID");
            OutputValues             output = OutputValues.GetInstance();

            try
            {
                RequestGetContacts requestGetContacts = new RequestGetContacts();
                requestGetContacts.IndexOfFirst = startIndex;
                StringList stringList = new StringList();
                for (int count = 0; count < attributeNames.Count; count++)
                {
                    stringList.Add(attributeNames[count].ToString());
                }
                //stringList.Add("EmailAddress");
                //stringList.Add("FirstName");
                //stringList.Add("LastName");
                requestGetContacts.AttributeList = stringList;
                requestGetContacts.TenantId      = tenantId;
                if (Settings.UCSProtocol != null && Settings.UCSProtocol.State == ChannelState.Opened)
                {
                    logger.Info("------------GetContacts-------------");
                    logger.Info("TenantId    :" + tenantId);
                    logger.Info("AttributeList: " + stringList);
                    logger.Info("-------------------------------------");
                    IMessage message = Settings.UCSProtocol.Request(requestGetContacts);
                    if (message != null)
                    {
                        logger.Trace(message.ToString());
                        output.IContactMessage = message;
                        output.MessageCode     = "200";
                        output.Message         = "Get Contacts Successful";
                    }
                    else
                    {
                        output.IContactMessage = null;
                        output.MessageCode     = "2001";
                        output.Message         = "Don't Get Contacts Successful";
                    }
                }
                else
                {
                    output.IContactMessage = null;
                    output.MessageCode     = "2001";
                    output.Message         = "Universal Contact Server protocol is Null or Closed";
                    logger.Warn("GetContactList() : Universal Contact Server Protocol is Null");
                }
            }
            catch (Exception generalException)
            {
                logger.Error("Error Occurred while Get Contacts request" + generalException.ToString());
                output.IContactMessage = null;
                output.MessageCode     = "2001";
                output.Message         = generalException.Message;
            }
            return(output);
        }
Ejemplo n.º 21
0
        public static Pointel.Interactions.Chat.Core.General.OutputValues ResumeInteraction(int proxyID, string sessionID, KeyValueCollection extensions, ReasonInfo reason)
        {
            Pointel.Logger.Core.ILog logger = Pointel.Logger.Core.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "AID");
            Pointel.Interactions.Chat.Core.General.OutputValues output = Pointel.Interactions.Chat.Core.General.OutputValues.GetInstance();
            try
            {
                Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Requests.InteractionManagement.RequestResume requestResume = Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Requests.InteractionManagement.RequestResume.Create();
                requestResume.InteractionId = sessionID;
                requestResume.ProxyClientId = proxyID;
                requestResume.Extension     = extensions;
                requestResume.Reason        = reason;
                if (Pointel.Interactions.Chat.Core.Util.Settings.IxnServerProtocol != null && Pointel.Interactions.Chat.Core.Util.Settings.IxnServerProtocol.State == Genesyslab.Platform.Commons.Protocols.ChannelState.Opened)
                {
                    Genesyslab.Platform.Commons.Protocols.IMessage message = Pointel.Interactions.Chat.Core.Util.Settings.IxnServerProtocol.Request(requestResume);
                    if (message != null)
                    {
                        switch (message.Id)
                        {
                        case Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Events.EventAck.MessageId:
                            logger.Info("------------RequestResume-------------");
                            logger.Info("SessionID  :" + sessionID);
                            logger.Info("ProxyID    :" + proxyID);
                            logger.Info("--------------------------------------");
                            logger.Info(requestResume.ToString());
                            output.MessageCode = "200";
                            output.Message     = "Interaction Resume Successful.";
                            break;

                        case Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Events.EventError.MessageId:
                            Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Events.EventError eventError = (Genesyslab.Platform.OpenMedia.Protocols.InteractionServer.Events.EventError)message;
                            string LoginErrorCode        = Convert.ToString(eventError.ErrorCode);
                            string LoginErrorDescription = Convert.ToString(eventError.ErrorDescription);
                            logger.Trace(eventError.ToString());
                            output.MessageCode = "2001";
                            output.Message     = "ResumeInteraction() : " + LoginErrorDescription;
                            break;
                        }
                    }
                    else
                    {
                        output.MessageCode = "2001";
                        output.Message     = "Chat Media Resume Interaction UnSuccessful";
                    }
                }
                else
                {
                    logger.Warn("ResumeInteraction() : IXN Server protocol is Null..");
                }
            }
            catch (Exception generalException)
            {
                logger.Error("Error occurred while Resume Interaction request " + generalException.ToString());
                output.MessageCode = "2001";
                output.Message     = generalException.Message;
            }
            return(output);
        }
Ejemplo n.º 22
0
 public SpellChecker()
 {
     _logger.Info("SpellChecker() Constructor Started..");
     try
     {
         Words           = new List <string>();
         MisspelledWords = new ObservableCollection <string>();
         IgnoredWords    = new List <string>();
     }
     catch (Exception generalException)
     {
         _logger.Error("Spell Checker Open problem : " + generalException.ToString());
     }
     _logger.Info("SpellChecker() Constructor Ended..");
 }
Ejemplo n.º 23
0
 public RequestType GetRequestType(string data)
 {
     try
     {
         string[] datas = data.Split('\r', '\n');
         if (datas.Length > 0)
         {
             if (datas[0].StartsWith("GET") && datas[0].EndsWith("HTTP/1.1"))
             {
                 return(RequestType.HTTPGet);
             }
         }
     }
     catch (Exception ex)
     {
         logger.Error(ex.Message);
     }
     return(RequestType.TCPClient);
 }
Ejemplo n.º 24
0
 /// <summary>
 /// Reads the case data push URL disposition.
 /// </summary>
 public void ReadCaseDataPushUrlDisposition()
 {
     try
     {
         loadCaseDataKey.Clear();
         loadCaseDataFilterKey.Clear();
         loadCaseDataSortingKey.Clear();
         loadAvailablePushURL.Clear();
         dispositionCodes.Clear();
         dispositionSubCodes.Clear();
         if (ConfigContainer.Instance().AllKeys.Contains("ChatAttachDataKey") && ConfigContainer.Instance().GetValue("ChatAttachDataKey") != null)
         {
             loadCaseDataKey = ConfigContainer.Instance().GetValue("ChatAttachDataKey");
         }
         if (ConfigContainer.Instance().AllKeys.Contains("ChatAttachDataFilterKey") && ConfigContainer.Instance().GetValue("ChatAttachDataFilterKey") != null)
         {
             loadCaseDataFilterKey = ConfigContainer.Instance().GetValue("ChatAttachDataFilterKey");
         }
         if (ConfigContainer.Instance().AllKeys.Contains("ChatAttachDataSortKey") && ConfigContainer.Instance().GetValue("ChatAttachDataSortKey") != null)
         {
             loadCaseDataSortingKey = ConfigContainer.Instance().GetValue("ChatAttachDataSortKey");
         }
         if (ConfigContainer.Instance().AllKeys.Contains("ChatPushUrl") && ConfigContainer.Instance().GetValue("ChatPushUrl") != null)
         {
             loadAvailablePushURL = ConfigContainer.Instance().GetValue("ChatPushUrl");
         }
         if (ConfigContainer.Instance().AllKeys.Contains("chat.disposition.codes"))
         {
             dispositionCodes = ConfigContainer.Instance().GetValue("chat.disposition.codes");
         }
         if (ConfigContainer.Instance().AllKeys.Contains("interaction.enable.multi-dispositioncode") && (((string)ConfigContainer.Instance().GetValue("interaction.enable.multi-dispositioncode")).ToLower().Equals("true")))
         {
             if (ConfigContainer.Instance().AllKeys.Contains("chat.subdisposition.codes"))
             {
                 dispositionSubCodes = ConfigContainer.Instance().GetValue("chat.subdisposition.codes");
             }
         }
     }
     catch (Exception ex)
     {
         logger.Error((ex.InnerException == null) ? ex.Message : ex.InnerException.ToString());
     }
 }
        private static StandardResponse GetResponseCategories(CategoryList categoryList, List <string> responsePath)
        {
            Pointel.Logger.Core.ILog _logger = Pointel.Logger.Core.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType,
                                                                                        "AID");
            StandardResponseList responselist = null;
            StandardResponse     response     = null;

            try
            {
                //pointel\Email\actional\actional
                //pointel\Email\emailaccount
                //response:Pointel\Sanofi\Email\Actonal\Sanofi\Email\Actonal
                //pointel\Sanofi\Email\Actonal
                int index = 0;
                foreach (string categoryName in responsePath)
                {
                    //it for find category list, Only if the Category is not last item and should has child category
                    if (responsePath.IndexOf(categoryName) != responsePath.Count - 1 && categoryList != null &&
                        categoryList.Count > 0 &&
                        categoryList.Cast <Category>().Where(c => c.Name.Equals(categoryName)).ToList().Count > 0)
                    {
                        Category category = categoryList.Cast <Category>().Where(c => c.Name.Equals(categoryName)).Single();
                        if (category != null)
                        {
                            categoryList = category.ChildrenCategories;

                            if (index == responsePath.Count - 2)
                            {
                                responselist = category.ChildrenStdResponses;
                                break;
                            }
                        }
                    }
                    else //if the user gives wrong signature path.
                    {
                        break;
                    }
                    index++;
                }

                if (responselist != null && responselist.Count > 0 && responselist.Cast <StandardResponse>().Where(s => s.TheName.Equals(responsePath.LastOrDefault())).ToList().Count > 0)
                {
                    response = responselist.Cast <StandardResponse>().Where(s => s.TheName.Equals(responsePath.LastOrDefault())).Single();
                }
            }
            catch (Exception ex)
            {
                _logger.Error("Error occurred at : " + ((ex.InnerException == null) ? ex.Message.ToString() : ex.InnerException.ToString()));
            }
            finally
            {
                _logger = null;
            }
            return(response);
        }
        /// <summary>
        /// Subscribes the specified provider.
        /// </summary>
        /// <param name="provider">The provider.</param>

        public virtual void Subscribe(CallDataProviders provider)
        {
            try
            {
                cancellation = provider.Subscribe(this);
                if (objConfiguration.IsServer)
                {
                    logger.Info("The pipe '" + objConfiguration.PipeName + "' is enabled server.");
                    Thread pipeServerThread = new Thread(new ThreadStart(StartServer));
                    pipeServerThread.Start();
                }
            }
            catch (Exception generalExcetion)
            {
                logger.Error("Error occurred as " + generalExcetion.Message);
            }
        }
        /// <summary>
        /// Adds the agent favorite response.
        /// </summary>
        /// <param name="stdResponse">The standard response.</param>
        /// <param name="agentId">The agent identifier.</param>
        /// <returns></returns>
        public static OutputValues AddAgentFavoriteResponse(string stdResponse, string agentId)
        {
            Pointel.Logger.Core.ILog logger = Pointel.Logger.Core.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "AID"); 
            OutputValues output = OutputValues.GetInstance();
            try
            {
                RequestAddAgentStdRespFavorite requestAddAgentStdRespFavorite = new RequestAddAgentStdRespFavorite();
                requestAddAgentStdRespFavorite.StandardResponse = stdResponse;
                // requestAddFavouriteResponse.Name = stdName;
                // string strAgentID = "1001";
                int? agentid = int.Parse(agentId.ToString());
                requestAddAgentStdRespFavorite.AgentId = agentid;
                // requestAddFavouriteResponse.Name = stdResponse;
                // requestAddFavouriteResponse.Name = name;
                if (Settings.UCSProtocol != null && Settings.UCSProtocol.State == ChannelState.Opened)
                {
                    logger.Info("------------AddAgentFavoriteResponse-------------");
                    logger.Info("StandardResponse  :" + stdResponse);
                    logger.Info("AgentId    :" + agentId);
                    logger.Info("-------------------------------------------------");
                    IMessage response = Settings.UCSProtocol.Request(requestAddAgentStdRespFavorite);
                    if (response != null)
                    {
                        logger.Trace(response.ToString());
                        output.IContactMessage = response;
                        output.MessageCode = "200";
                        output.Message = "Add Agent Standard Response Favorite Successful";
                    }
                    else
                    {
                        output.IContactMessage = null;
                        output.MessageCode = "2001";
                        output.Message = "Don't Add Agent Standard Response Favorite.";
                    }
                }
                else
                {
                    output.IContactMessage = null;
                    output.MessageCode = "2001";
                    output.Message = "Universal Contact Server protocol is Null or Closed";
                    logger.Warn("AddAgentFavoriteResponse() : Universal Contact Server protocol is Null..");
                }
            }
            catch (Exception generalException)
            {
                logger.Error("Error occurred while Add Agent Standard Response Favorite request " + generalException.ToString());
                output.IContactMessage = null;
                output.MessageCode = "2001";
                output.Message = generalException.Message;
            }
            return output;

        }
 /// <summary>
 /// Inserts the agent login activity.
 /// </summary>
 public void InsertAgentLoginActivity()
 {
     try
     {
         if (ConfigContainer.Instance().AllKeys.Contains("tblAgentLogin") &&
             !string.IsNullOrEmpty(ConfigContainer.Instance().GetValue("tblAgentLogin")) && !string.IsNullOrEmpty(settings.AgentLoginID))
         {
             logger.Info("InsertAgentLoginActivity : Entry");
             string time  = DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString();
             string query = "Insert into " + ConfigContainer.Instance().GetValue("tblAgentLogin") +
                            "(Date,AgentLoginID,TimeStamp) values('" + DateTime.Now.Date.ToString() + "','" + settings.AgentLoginID + "','" + time + "')";
             db                  = new Database();
             db.Provider         = "System.Data.SqlClient";
             db.ConnectionString = connectionString;
             db.CreateConnection(true);
             logger.Info("InsertAgentLoginActivity: Connection Created");
             db.ExecuteNonQuery(query);
             logger.Info("InsertAgentLoginActivity: Query Executed : " + query);
             db.CloseConnection();
             logger.Info("InsertAgentLoginActivity: Connection Closed");
             GetLoginDBID(ConfigContainer.Instance().GetValue("tblAgentLogin"), DateTime.Now.Date.ToString(), settings.AgentLoginID, time);
             logger.Info("InsertAgentLoginActivity : Exit");
         }
     }
     catch (Exception ex)
     {
         logger.Error("Exception During Inserting AgentLoginActivity: " + ex.Message);
     }
 }
Ejemplo n.º 29
0
 /// <summary>
 /// Gets the string query.
 /// </summary>
 /// <param name="searchCriteria">The search criteria.</param>
 /// <param name="matchCondition">The match condition.</param>
 private void GetStringQuery(Criteria searchCriteria, MatchCondition matchCondition)
 {
     try
     {
         Lucene.Net.Analysis.Token token  = null;
         Lucene.Net.Analysis.Token token2 = null;
         TokenStream stream = _analyzer.TokenStream(searchCriteria.Field.ToString(), new StringReader(searchCriteria.Value));
         do
         {
             token2 = token;
             token  = stream.Next();
             if (token2 != null)
             {
                 string       stoken      = token2.TermText();
                 BooleanQuery outputQuery = new BooleanQuery();
                 this.TokenToQuery(searchCriteria.Field.ToString(), stoken, searchCriteria.Condition.ToString(), ref outputQuery);
                 if (matchCondition == MatchCondition.MatchAll)
                 {
                     _tempQuery.Add(outputQuery, BooleanClause.Occur.MUST);
                 }
                 else
                 {
                     _tempQuery.Add(outputQuery, BooleanClause.Occur.SHOULD);
                 }
             }
         }while (token != null);
     }
     catch (Exception ex)
     {
         _logger.Error("Error while creating String Query :" + ex.InnerException == null ? ex.Message.ToString() : ex.InnerException.Message);
     }
 }
        /// <summary>
        /// Subscribes the specified provider.
        /// </summary>
        /// <param name="provider">The provider.</param>

        #region Subscribe

        public virtual void Subscribe(CallDataProviders provider)
        {
            try
            {
                cancellation = provider.Subscribe(this);
            }
            catch (Exception generalException)
            {
                logger.Error("Error occurred while Subscribe CRM DB Integration " + generalException.ToString());
            }
        }