public IActionResult AddMessage() { using (var dal = new Dal()) { dal.AddMessage("test", "testmessage"); } return(View()); }
/// <summary> /// Send CallBack Message to All Users /// </summary> /// <param name="userName"></param> /// <param name="content"></param> public void SendMessage(string userName, string content) { if (!string.IsNullOrEmpty(userName) && !string.IsNullOrEmpty(content)) { var callback = OperationContext.Current.GetCallbackChannel <IClientCallback>(); foreach (var call in _callback) { call.Value.RecieveMessage(userName, content); } // var user = _dal.GetUserByName(userName); Message message = new Message { UserName = userName, Content = content, Date = DateTime.Now }; try { _dal.AddMessage(message); } catch (Exception ex) { callback.RecieveError(ex.Message); } } }
public ActionResult Action(QuestionViewModel mod) { Dal db = new Dal(); List <Individu> destinataires = new List <Individu>(); List <Groupe> groupes = new List <Groupe>(); foreach (string str in mod.Dests.Split(';')) { destinataires.Add(db.GetIndividus().FirstOrDefault(i => i.userLogin == str)); } foreach (string str in mod.Dests.Split(';')) { groupes.Add(db.GetGroupes().FirstOrDefault(g => g.nom == str)); } Message content = new Message { Individu = db.GetIndividus().Find(i => i.Id == int.Parse(User.Identity.Name)), contenu = mod.Detail, sujet = mod.Sujet, lu = false, recu = false, Id_expediteur = int.Parse(User.Identity.Name), Id = db.GetLastIdMessage() + 1, envoi = System.DateTime.Now, lecture = System.DateTime.Now }; if (!mod.question) { Questionnaire question = new Questionnaire { Id = db.GetLastQuestion() + 1, type = mod.Type, Type_Questionnaire = db.GetTypeQuestion(mod.Type), Id_message = content.Id, }; foreach (int i in mod.Reponses) { var opt = db.Reponses()[i - 1]; int idrep = db.GetRep().Count; idrep += i; Reponses rep = new Reponses { Questionnaire = question, Id = idrep, Id_question = question.Id, Id_reponse = i, Option_Questionnaire = opt }; db.Addreponse(rep); opt.Reponses.Add(rep); question.Reponses.Add(rep); } db.GetIndividus().Find(i => i.Id == int.Parse(User.Identity.Name)).Message.Add(content); db.GetQuestion().Add(question); db.AddMessage(content); question.Message = content; content.Questionnaire.Add(question); } foreach (Individu ind in destinataires) { if (ind != null) { Notification_Simple notif = new Notification_Simple { Id_individu = ind.Id, Individu = ind, Id_message = content.Id, Message = content }; ind.Notification_Simple.Add(notif); content.Notification_Simple.Add(notif); } } foreach (Groupe gr in groupes) { if (gr != null) { Notification_Diffusion not = new Notification_Diffusion { Id_groupe = gr.Id, Groupe = gr, Id_message = content.Id, Message = content, }; gr.Notification_Diffusion.Add(not); content.Notification_Diffusion.Add(not); } } db.Savedb(); NotificationsHub.GetNotificationHtml(content, db.GetIdsDestinataires(mod)); return(RedirectToAction("Index", "Home")); }
public static void AddMessage(string sender, string receiver, string message) { Dal.AddMessage(sender, receiver, message); }