/// <summary> /// Marks an message as read. /// </summary> /// <param name="message">The message to be marked</param> /// <returns></returns> public static bool MarkMessageRead(Database.Entity.RemindMeMessages message) { try { ReadMessages msg = new ReadMessages(); msg.ReadMessageId = message.Id; msg.MessageText = message.Message; msg.ReadDate = message.DateOfCreation.Value.ToString(); using (RemindMeDbEntities db = new RemindMeDbEntities()) { if (db.ReadMessages.Count() > 0) { msg.Id = db.ReadMessages.Max(i => i.Id) + 1; } else { msg.Id = 0; } db.ReadMessages.Add(msg); db.SaveChanges(); db.Dispose(); return(true); } } catch { return(false); } }
/// <summary> /// Removes a message that is marked as read from the local database /// </summary> /// <param name="onlineMessageId">the Id of the online message in the database</param> public static void DeleteMessage(int onlineMessageId) { using (RemindMeDbEntities db = new RemindMeDbEntities()) { ReadMessages readMess = db.ReadMessages.Where(rm => rm.ReadMessageId == onlineMessageId).FirstOrDefault(); if (readMess != null) { db.ReadMessages.Attach(readMess); db.ReadMessages.Remove(readMess); db.SaveChanges(); db.Dispose(); } } }
private void ReadMessages() { Task.Run(() => { List <string> topics = new List <string>(); topics.Add(Settings.Instance.VideoCamTopic); topics.Add(Settings.Instance.VideoSampleTopic); topics.Add(Settings.Instance.FaceDetectTopic); topics.Add(Settings.Instance.ProfilingTopic); Reader = new ReadMessages(topics); Reader.MessageCallback = NewMessageCallback; Reader.Start(); }); }
public SMSGateway() { service = new ReadMessages(); }