Exemplo n.º 1
0
        internal static Template buildMandrillMessage(Message mail)
        {
            var vars = buildVars(mail);

            var temaplate = new Template(mail.template, mail.recipient, vars);

            return temaplate;
        }
Exemplo n.º 2
0
 public static Message build(IMessage message)
 {
     var dbmessage = new Message
         {
             recipient = message.recipient,
             template = message.template,
             type = message.type,
             id = Guid.NewGuid().ToString(),
             Field = addFields(message)
         };
     return dbmessage;
 }
Exemplo n.º 3
0
        private static void send(Message mail)
        {
            try
            {

                var template = Build.buildMandrillMessage(mail);
                var response = Send.send(template.serialise());
                DbMail.setMessageStatus(mail, response[0]);
            }
            catch (Exception exp)
            {
                DbMail.setMessageFailed(mail);
            }
        }
Exemplo n.º 4
0
        internal static void setMessageStatus(Message message, MandrillResponse response)
        {
            var messageStatus = new MessageStatus() { Message = message };

            switch (response.status)
            {
                case "sent":
                    messageStatus.status = "SENT";
                    break;
                case "queued":
                    messageStatus.status = "QUEUED";
                    break;
                default:
                    messageStatus.status = "FAILED";
                    break;
            }

            setMessage(messageStatus);
        }
Exemplo n.º 5
0
 internal static void setMessageFailed(Message message)
 {
     var messageStatus = new MessageStatus {Message = message, status = "FAILED"};
     setMessage(messageStatus);
 }
Exemplo n.º 6
0
 internal static void save(Message message)
 {
     var orm = new Orm();
     orm.execObject<Result>(message, "mess.enqueue_message");
 }
Exemplo n.º 7
0
        private static List<Var> buildVars(Message mail)
        {
            var vars = mail.Field.Select(field => new Var() { name = field.key, content = field.value }).ToList();

            return vars;
        }