// 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)); }
//Send XMPP message private void SendNotificationOut(NotificationViewModel notification, XMPPSettings xMPPSettings) { IXMPPClient sender = NinjectIoC.Initialize().Get <IXMPPClient>(); string[] xmppRecipients = notification.sendto.Select(s => sender.GetUserName(employeeRepository.GetEmployee(s).Login, xMPPSettings.Domain)).ToArray <string>(); if (!sender.IsConnected()) { sender.Connect(xMPPSettings.Server, xMPPSettings.Port, xMPPSettings.User, xMPPSettings.Password, xMPPSettings.AutoReconnect); Thread.Sleep(1000); } Task.Run(() => { sender.SendNotification(xmppRecipients, FullTemplate(notification, xMPPSettings.MessageTemplate)); }); }