public void CheckTradingSystemInPool()
        {
            var time = DateTime.Now.AddMinutes(-1 * GetRandomMinutes(5));
            var accounts = db.TradingSystemPool.Where(x => x.ApplicationDate < time);

            ServicePointManager.CertificatePolicy = new TrustAllCertificatePolicy();

            foreach (var tradingSystemPool in accounts)
            {
                var myHttpWebRequest = (HttpWebRequest)WebRequest
                    .Create(string.Format("https://my.forexinn.ru/agent-api/check-involved-account/broccoli/jcmbogje9b5uxs/{0}", tradingSystemPool.Accounts.AccountNumber));

                var myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();

                var myStreamReader = new StreamReader(myHttpWebResponse.GetResponseStream(), Encoding.UTF8);

                var response = myStreamReader.ReadToEnd();
                dynamic json = JToken.Parse(response);

                var tradingSystem = this.GetById(tradingSystemPool.TradingSystemId);

                if ((bool)json["result"] && this.CanTakeTradingSystem(tradingSystem.Systems.Id, (int)json["count"]))
                {
                    tradingSystem.StatusId = 2;
                    tradingSystem.IsNew = true;

                    var em = new EmailMessage
                    {
                        Subject = string.Format("{0} активирован", tradingSystem.Systems.Name),
                        Message = string.Format("Здравствуйте, {0}. {1} активирован.", tradingSystem.Users.Name, tradingSystem.Systems.Name),
                        From = "*****@*****.**",
                        To = tradingSystem.Users.Email
                    };

                    new QueueService().QueueMessage(em);
                }
                else
                {
                    tradingSystem.StatusId = 3;
                    tradingSystem.IsNew = true;

                    var em = new EmailMessage
                    {
                        Subject = string.Format("Заявка на {0} отклонена", tradingSystem.Systems.Name),
                        Message = string.Format("Здравствуйте, {0}. Заявка на {1} отклонена.", tradingSystem.Users.Name, tradingSystem.Systems.Name),
                        From = "*****@*****.**",
                        To = tradingSystem.Users.Email
                    };

                    new QueueService().QueueMessage(em);
                }

                db.TradingSystemPool.Remove(tradingSystemPool);
            }

            db.SaveChanges();
        }
Пример #2
0
 static void msgQ_Send(EmailMessage message)
 {
     lock (lockObject)
     {
         // The message is plain text.
         new EmailService().SendMessage(message,
             "*****@*****.**",
             "g<qTS4Zn",
             "smtp.gmail.com",
             465,
             true);
     }
 }
Пример #3
0
        public void SendMessage(EmailMessage message, string username, string password, string host, int port, bool enableSsl)
        {
            var from = new MailAddress(message.From, message.DisplayNameFrom);
            var to = new MailAddress(message.To);

            var mm = new MailMessage(from, to);
            mm.Subject = message.Subject;
            mm.Body = message.Message;

            var credentials = new NetworkCredential(username, password);
            var sc = new SmtpClient(host, port)
                {
                    EnableSsl = enableSsl,
                    Credentials = credentials
                };

            sc.Send(mm);
        }
        public ActionResult Test()
        {
            var em = new EmailMessage();
            em.Subject = "test message";
            em.Message = "OLOLO";
            em.From = "*****@*****.**";
            em.DisplayNameFrom = "Broccoli Trade";
            em.To = "*****@*****.**";

            new QueueService().QueueMessage(em);

            new EmailService().SendMessage(em,
                    "*****@*****.**",
                    "g<qTS4Zn",
                    "smtp.gmail.com",
                    465,
                    true);

            return new EmptyResult();
        }
        public JsonResult SendInvites(string inviteList, string message)
        {
            // Дисериализуем строку с массивом точек
            var js = new JavaScriptSerializer();
            var deserializedInvites = (object[])js.DeserializeObject(inviteList);
            var myInviteList = new List<SJSonModel>();

            if (deserializedInvites != null)
            {
                // получаем массив точек
                foreach (Dictionary<string, object> newFeature in deserializedInvites)
                {
                    myInviteList.Add(new SJSonModel(newFeature));
                }
            }

            foreach (var invite in myInviteList)
            {
                var em = new EmailMessage();
                em.Subject = "test message";
                em.Message = "OLOLO";
                em.From = "*****@*****.**";
                em.DisplayNameFrom = "Broccoli Trade";
                em.To = "*****@*****.**";
            }

            return new JsonResult();
        }