public bool IsEngineBusy(string domainName, string userName)
        {
            // User validation check
            if (!ServiceController.IsValidUser(domainName, userName))
            {
                return(true);
            }

            return(AgentsManager.GetAgent(userName).IsEngineBusy());
        }
        public bool IsConnected(string domainName, string userName)
        {
            // User validation check
            if (!ServiceController.IsValidUser(domainName, userName))
            {
                return(false);
            }

            return(AgentsManager.GetAgent(userName).IsConnectedToServer());
        }
        public ServerConnectionSettings GetConnectionSettings(string domainName, string userName)
        {
            // User validation check
            if (!ServiceController.IsValidUser(domainName, userName))
            {
                return(null);
            }

            return(AgentsManager.GetAgent(userName).GetConnectionSettings());
        }
        public ServerResponse GetAutomations(string domainName, string userName)
        {
            // User validation check
            if (!ServiceController.IsValidUser(domainName, userName))
            {
                return(null);
            }

            return(AgentsManager.GetAgent(userName).GetAutomations());
        }
        public ServerResponse DisconnectFromServer(ServerConnectionSettings settings)
        {
            // User validation check
            if (!ServiceController.IsValidUser(settings.DNSHost, settings.UserName))
            {
                return(InvalidUserResponse());
            }

            return(AgentsManager.GetAgent(settings.UserName).Disconnect(settings));
        }
예제 #6
0
        private EMailDataContext SendEmailInternal(EMailDataContext mailData)
        {
            if (mailData == null)
            {
                throw new ArgumentNullException("Mail data cannot be null.");
            }

            if (mailData.AgentId == null)
            {
                throw new ArgumentNullException("AgentId cannot be null");
            }

            AgentsManager manager = AgentsManager.GetManager();
            AgentItem     agent   = manager.GetAgent(mailData.AgentId);

            string fromEmail = mailData.FromEmail;
            string fromName  = mailData.FromName;

            try
            {
                // Replace some of the variables depending on your settings
                SmtpClient smtpClient   = new SmtpClient();
                var        smtpSettings = Config.Get <SystemConfig>().SmtpSettings;
                smtpClient.Host        = smtpSettings.Host;
                smtpClient.Port        = smtpSettings.Port;
                smtpClient.Credentials = new NetworkCredential(smtpSettings.UserName, smtpSettings.Password);

                MailAddress senderMail = new MailAddress(fromEmail, fromName);
                MailAddress agentMail  = new MailAddress(agent.Email, agent.Title);

                MailMessage message = new MailMessage(senderMail, agentMail);
                message.Subject    = "Real estate contact form response.";
                message.Body       = mailData.Message;
                message.IsBodyHtml = false;

                smtpClient.Send(message);

                if (mailData.SendCopy)
                {
                    MailAddress realEstateMail = new MailAddress(smtpSettings.DefaultSenderEmailAddress, "Real Estate");
                    MailMessage copy           = new MailMessage(realEstateMail, senderMail);
                    copy.Subject = "Copy from message sent to " + agent.Email;
                    copy.Body    = mailData.Message;
                    smtpClient.Send(copy);
                }
                mailData.HasSentMail = true;
            }
            catch (Exception)
            {
                mailData.HasSentMail = false;
            }
            return(mailData);
        }
        public async Task <bool> ExecuteAttendedTask(string projectPackage, ServerConnectionSettings settings, bool isServerAutomation)
        {
            var task = Task.Factory.StartNew(() =>
            {
                // User validation check
                if (!ServiceController.IsValidUser(settings.DNSHost, settings.UserName))
                {
                    return(false);
                }

                return(AgentsManager.GetAgent(settings.UserName).ExecuteAttendedTask(projectPackage, settings, isServerAutomation));
            });

            return(await task.ConfigureAwait(false));
        }