public JsonResult SaveSettings(XMPPSettingsViewModel settings) { XMPPSettings xMPPSettings = new XMPPSettings(); xMPPSettings.Server = settings.server; xMPPSettings.Domain = settings.domain; xMPPSettings.Port = settings.port; xMPPSettings.AutoReconnect = settings.autoReconnect; xMPPSettings.Enable = settings.enable; xMPPSettings.User = settings.user; xMPPSettings.Password = settings.password; xMPPSettings.MessageTemplate = settings.messageTemplate; //Save try { XMPPConfig.SaveSettings(xMPPSettings); } catch (Exception exception) { return(Json(new { message = "errors", errors = "Ошибка: " + exception.Message }, JsonRequestBehavior.AllowGet)); } //Reconnect try { sender.Close(); if (settings.enable) { sender.Connect(settings.server, settings.port, settings.user, settings.password, settings.autoReconnect); Thread.Sleep(1000); } settings.isConnected = sender.IsConnected(); } catch (Exception exception) { return(Json(new { message = "errors", errors = "Ошибка: " + exception.Message }, JsonRequestBehavior.AllowGet)); } return(Json(new { message = "OK", result = settings }, JsonRequestBehavior.AllowGet)); }
// GET: Settings public ActionResult Settings() { XMPPSettings xMPPSettings = XMPPConfig.ReadSettings(); var result = new XMPPSettingsViewModel { server = xMPPSettings.Server, domain = xMPPSettings.Domain, port = xMPPSettings.Port, autoReconnect = xMPPSettings.AutoReconnect, enable = xMPPSettings.Enable, user = xMPPSettings.User, password = xMPPSettings.Password, messageTemplate = xMPPSettings.MessageTemplate, isConnected = sender.IsConnected() }; return(PartialView(result)); }