public ActionResult CreatConversation() { var iduser = Convert.ToInt32(Session["PasgoID"]); if (System.DateTime.Now < System.DateTime.Today.AddHours(8) || System.DateTime.Now > System.DateTime.Today.AddHours(20)) { TempData["Failed"] = "Hệ thống CSKH hiện đang nghỉ, xin vui lòng liên hệ thời gian làm việc 8:00 - 20:00."; return(RedirectToAction("Chat", "ManageAccount")); } if (CheckUserAuthorize() == true) { //add exception var result = db.AddConversation(iduser).ToList().ElementAt(0); if (Convert.ToInt32(result) != 0) { TempData["Success"] = "Hội thoại đã được thiết lập!"; db.SaveMessage(Convert.ToInt32(result), false, "Xin chào, tôi có thể giúp gì cho bạn?"); } else { TempData["Failed"] = "Hệ thống quá tải, xin vui lòng thử lại sau!"; } return(RedirectToAction("Chat", "ManageAccount")); } return(View("Index", "Home")); }
//Handle send message event from Staff side public void StaffSend(string namesend, string message, string connectionID, string idconversation) { var idconn = Convert.ToInt32(idconversation); var status = db.Conversations.Where(x => x.IdConversation == idconn).FirstOrDefault().Status; if (status == true) { db.NewMessage(idconn, Convert.ToInt32(connectionID), 1); db.SaveMessage(idconn, false, message); var allconn = db.getAllConn(Convert.ToInt32(connectionID)).ToList(); foreach (var item in allconn) { //JS from Satff side is different from User side / update code later Clients.Client(item.Conn).addNewMessageToPage(namesend, message); } Clients.Client(Context.ConnectionId).addNotificationToPage("Đã gửi"); } else { Clients.Client(Context.ConnectionId).addNotificationToPage("4"); } }