Esempio n. 1
0
 public async Task <MessageLog> GetById(Guid id)
 {
     using (var db = new Data.SMSDataModel())
     {
         return(await db.MessageLogs.FirstOrDefaultAsync(m => m.Id == id));
     }
 }
Esempio n. 2
0
 public async Task <Entity.ThirdPartyService> FindThirdPartyService(string code)
 {
     using (var db = new Data.SMSDataModel())
     {
         return(await db.ThirdPartyServices.FirstOrDefaultAsync(tps => tps.Code.Equals(code.ToLower())));
     }
 }
Esempio n. 3
0
        public async Task <Entity.APILog> LogRequest(Entity.APILog log)
        {
            using (var db = new Data.SMSDataModel())
            {
                log.Id = Guid.NewGuid();
                db.APILogs.Add(log);
                await db.SaveChangesAsync();

                return(log);
            }
        }
Esempio n. 4
0
        public async Task <Entity.APILog> LogResponse(Entity.APILog log)
        {
            using (var db = new Data.SMSDataModel())
            {
                db.APILogs.Attach(log);
                db.Entry(log).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(log);
            }
        }
Esempio n. 5
0
        public async Task <List <MessageLogReply> > ListIncomingMessages()
        {
            using (var db = new Data.SMSDataModel())
            {
                var results = from s in db.TwilioIncomingMessageCallbacks
                              select new MessageLogReply
                {
                    Message = s.Body
                };

                return(await results.ToListAsync());
            }
        }
Esempio n. 6
0
        public async Task <List <MessageLogStatus> > ListMessageStatuses(Guid id)
        {
            using (var db = new Data.SMSDataModel())
            {
                var results = from s in db.TwilioStatusCallbacks
                              join m in db.MessageLogs on s.MessageSid equals m.ThirdPartyReferenceCode
                              where m.Id == id
                              select new MessageLogStatus
                {
                    Name = s.MessageStatus
                };

                return(await results.ToListAsync());
            }
        }
Esempio n. 7
0
        public async Task <TwilioStatusCallback> SaveStatusCallback(TwilioStatusCallback record)
        {
            using (var db = new Data.SMSDataModel())
            {
                if (record.Id == Guid.Empty)
                {
                    record.Id = Guid.NewGuid();
                    db.TwilioStatusCallbacks.Add(record);
                }
                else
                {
                    db.TwilioStatusCallbacks.Attach(record);
                }

                await db.SaveChangesAsync();

                return(record);
            }
        }
Esempio n. 8
0
        public async Task <TwilioMessage> SaveMessage(TwilioMessage message)
        {
            using (var db = new Data.SMSDataModel())
            {
                if (message.Id == Guid.Empty)
                {
                    message.Id = Guid.NewGuid();
                    db.TwilioMessages.Add(message);
                }
                else
                {
                    db.TwilioMessages.Attach(message);
                }

                await db.SaveChangesAsync();

                return(message);
            }
        }
Esempio n. 9
0
        public async Task <Entity.MessageLog> SaveLog(Entity.MessageLog log)
        {
            using (var db = new Data.SMSDataModel())
            {
                if (log.Id == Guid.Empty)
                {
                    log.Id         = Guid.NewGuid();
                    log.CreateDate = DateTime.UtcNow;
                    db.MessageLogs.Add(log);
                }
                else
                {
                    db.MessageLogs.Attach(log);
                    db.Entry(log).State = EntityState.Modified;
                }

                await db.SaveChangesAsync();

                return(log);
            }
        }