示例#1
0
        public void CanCreateUpdateAndDeleteTargets()
        {
            var target = new EmailTarget()
            {
                Title   = "Test Email Target",
                Active  = false,
                Email   = "*****@*****.**",
                Subject = "Test"
            };

            var emailResult = (EmailTarget)api.Targets.CreateTarget(target).Target;

            Assert.That(emailResult, Is.Not.Null);
            Assert.That(emailResult, Is.InstanceOf <EmailTarget>());
            Assert.That(emailResult.Type, Is.EqualTo("email_target"));
            Assert.That(emailResult.Email, Is.EqualTo("*****@*****.**"));
            Assert.That(emailResult.Subject, Is.EqualTo("Test"));

            emailResult.Subject = "Test Update";

            var update = (EmailTarget)api.Targets.UpdateTarget(emailResult).Target;

            Assert.That(update.Subject, Is.EqualTo(emailResult.Subject));

            Assert.That(api.Targets.DeleteTarget(emailResult.Id.Value), Is.True);
        }
示例#2
0
        public void CanCreateUpdateAndDeleteTargets()
        {
            var target = new EmailTarget()
            {
                Title   = "Test Email Target",
                Active  = false,
                Email   = "*****@*****.**",
                Subject = "Test"
            };

            var emailResult = (EmailTarget)api.Targets.CreateTarget(target).Target;

            Assert.IsNotNull(emailResult);
            Assert.IsInstanceOf <EmailTarget>(emailResult);
            Assert.AreEqual("email_target", emailResult.Type);
            Assert.AreEqual("*****@*****.**", emailResult.Email);
            Assert.AreEqual("Test", emailResult.Subject);

            emailResult.Subject = "Test Update";

            var update = (EmailTarget)api.Targets.UpdateTarget(emailResult).Target;

            Assert.AreEqual(emailResult.Subject, update.Subject);

            Assert.True(api.Targets.DeleteTarget(emailResult.Id.Value));
        }
示例#3
0
        public void CanRetrieveMultipleTargetTypes()
        {
            var emailTarget = new EmailTarget()
            {
                Title   = "Test Email Target",
                Active  = false,
                Email   = "*****@*****.**",
                Subject = "Test"
            };

            var emailResult = (EmailTarget)api.Targets.CreateTarget(emailTarget).Target;

            Assert.That(emailResult, Is.Not.Null);
            Assert.That(emailResult, Is.InstanceOf <EmailTarget>());

            var emailTarget2 = new EmailTarget()
            {
                Title   = "Test Email Target",
                Active  = false,
                Email   = "*****@*****.**",
                Subject = "Test"
            };

            var emailResult2 = (EmailTarget)api.Targets.CreateTarget(emailTarget2).Target;

            Assert.That(emailResult2, Is.Not.Null);
            Assert.That(emailResult2, Is.InstanceOf <EmailTarget>());
            _ = api.Targets.GetAllTargets();

            Assert.That(api.Targets.DeleteTarget(emailResult.Id.Value), Is.True);
            Assert.That(api.Targets.DeleteTarget(emailResult2.Id.Value), Is.True);
        }
示例#4
0
        static void Main(string[] args)
        {
            var         userChoise = "";
            EmailTarget result     = EmailTarget.None;

            Console.WriteLine("Press \"1\" to send \"Gmail\", or press \"2\" to send \"Yahoo\"!");
            userChoise = Console.ReadLine();

            if (userChoise == "1")
            {
                result = EmailTarget.Gmail;
            }
            if (userChoise == "2")
            {
                result = EmailTarget.Yahoo;
            }

            IEmailSenderFactory emailSenderFactory = new EmailSenderFactory.EmailSenderFactory();

            EmailSender.EmailSender emailSender = new EmailSender.EmailSender(emailSenderFactory);
            try
            {
                emailSender.Send(result);
            }
            catch (Exception)
            {
                Console.WriteLine("Incorrect input!");
            }


            Console.ReadLine();
        }
 public OnvifNotificationEmailMessage(string cameraId, string cameraUrl, string to, string fullName, EmailTarget target = EmailTarget.Mandrill)
 {
     CameraId       = cameraId;
     CameraUrl      = cameraUrl;
     EmailAddressTo = to;
     FullName       = fullName;
     Target         = target;
 }
        private TokenizedTemplate CreateTokenizedTemplate(EmailTarget target, string defaultTemplate, params Guid[] contexts)
        {
            var template = new TokenizedTemplate(target.ToTemplateTypeString())
            {
                Name                  = target.ToString(),
                Description           = target.ToString() + " of the email",
                ContextualDataTypeIds = contexts
            };

            template.Set("en-us", defaultTemplate);

            return(template);
        }
示例#7
0
        //simple realization
        public IEmailSender CreateSender(EmailTarget emailTarget)
        {
            switch (emailTarget)
            {
            case EmailTarget.Gmail:
                return(new GmailEmailSender(emailTarget));

            case EmailTarget.Yahoo:
                return(new YahooEmailSender(emailTarget));

            default:
                throw new InvalidOperationException($"Unknown email target {emailTarget}");
            }
        }
示例#8
0
        public void CanRetrieveMultipleTargetTypes()
        {
            var emailTarget = new EmailTarget()
            {
                Title   = "Test Email Target",
                Active  = false,
                Email   = "*****@*****.**",
                Subject = "Test"
            };

            var emailResult = (EmailTarget)api.Targets.CreateTarget(emailTarget).Target;

            Assert.IsNotNull(emailResult);
            Assert.IsInstanceOf <EmailTarget>(emailResult);

            var jiraTarget = new JiraTarget()
            {
                Title     = "Test Jira Target",
                Active    = false,
                TargetUrl = "http://test.com",
                Username  = "******",
                Password  = "******"
            };

            var jiraResult = (JiraTarget)api.Targets.CreateTarget(jiraTarget).Target;

            Assert.IsNotNull(jiraResult);
            Assert.IsInstanceOf <JiraTarget>(jiraResult);

            var targets = api.Targets.GetAllTargets();

            foreach (var target in targets.Targets)
            {
                if (target.Id == emailResult.Id)
                {
                    Assert.IsInstanceOf <EmailTarget>(emailResult);
                }
                else if (target.Id == jiraResult.Id)
                {
                    Assert.IsInstanceOf <JiraTarget>(jiraResult);
                }
            }

            Assert.True(api.Targets.DeleteTarget(emailResult.Id.Value));
            Assert.True(api.Targets.DeleteTarget(jiraResult.Id.Value));
        }
        string IEmailTemplatePreviewPlugin.GetTemplateName(EmailTarget target)
        {
            switch (target)
            {
            case EmailTarget.Subject:
                return("email_subject");

            case EmailTarget.Header:
                return("email_header");

            case EmailTarget.Footer:
                return("email_footer");

            case EmailTarget.Body:
                return("email_subject");
            }

            return(string.Empty);
        }
        string IEmailNotificationType.Get(EmailTarget target, Notification notification)
        {
            if (notification == null)
            {
                return(string.Empty);
            }

            switch (target)
            {
            case EmailTarget.Subject:
                return(RenderTemplate("email_subject", notification));

            case EmailTarget.Header:
                return(RenderTemplate("email_header", notification));

            case EmailTarget.Footer:
                return(RenderTemplate("email_footer", notification));

            case EmailTarget.Body:
                return(RenderTemplate("email_subject", notification));
            }

            return(string.Empty);
        }
 public void SetUp()
 {
     theTarget = new EmailTarget();
 }
示例#12
0
        public void Send(EmailTarget emailTarget)
        {
            var sender = senderFactory.CreateSender(emailTarget);

            sender.SendEmail();
        }
示例#13
0
 public YahooEmailSender(EmailTarget emailTarget)
 {
 }
示例#14
0
 public GmailEmailSender(EmailTarget emailTarget)
 {
 }
 public static string ToTemplateTypeString(this EmailTarget emumValue)
 {
     return("email_" + emumValue.ToString().ToLower());
 }
 public OnvifNotificationEmailMessage(string subject, string message, EmailTarget target = EmailTarget.Mandrill)
 {
     Subject = subject;
     Message = message;
     Target  = target;
 }
 public string GetTemplateName(EmailTarget target)
 {
     return target.ToTemplateTypeString();
 }
示例#18
0
 public void SetUp()
 {
     theTarget = new EmailTarget();
 }
示例#19
0
 //
 public void SendMailLang(EmailType type, EmailTarget targetUser, CultureType lang)
 {
 }
        string IEmailNotificationType.Get(EmailTarget target, Notification notification)
        {
            if (notification == null)
                return string.Empty;

            switch (target)
            {
                case EmailTarget.Subject:
                    return RenderTemplate("email_subject", notification);
                case EmailTarget.Header:
                    return RenderTemplate("email_header", notification);
                case EmailTarget.Footer:
                    return RenderTemplate("email_footer", notification);
                case EmailTarget.Body:
                    return RenderTemplate("email_subject", notification);
            }

            return string.Empty;
        }
        string IEmailTemplatePreviewPlugin.GetTemplateName(EmailTarget target)
        {
            switch (target)
            {
                case EmailTarget.Subject:
                    return "email_subject";
                case EmailTarget.Header:
                    return "email_header";
                case EmailTarget.Footer:
                    return "email_footer";
                case EmailTarget.Body:
                    return "email_subject";
            }

            return string.Empty;
        }
        private TokenizedTemplate CreateTokenizedTemplate(EmailTarget target, string defaultTemplate, params Guid[] contexts)
        {
            var template = new TokenizedTemplate(target.ToTemplateTypeString())
            {
                Name = target.ToString(),
                Description = target.ToString() + " of the email",
                ContextualDataTypeIds = contexts
            };

            template.Set("en-us", defaultTemplate);

            return template;
        }
 public string GetTemplateName(EmailTarget target)
 {
     return(target.ToTemplateTypeString());
 }