public void NotifyActionToModule(string istanceIdentifier, NotificationAction action, int idSenderUser = 0, String ipAddress = "", String proxyIpAddress = "") { IstanceConfig istance = Config.GetIstanceConfiguration(istanceIdentifier); if (istance != null) { List <GroupMessages> items = null; using (ISession session = lm.Comol.Core.Data.SessionDispatcher.NewSession(istance.ConnectionString)) { if (session != null) { using (InternalNotificationService service = new InternalNotificationService(istance, session)) { try { items = service.NotifyActionToModule(action, idSenderUser, ipAddress, proxyIpAddress, istance.Settings); if (items != null) { service.ManageNotifications(items, action.ModuleCode, idSenderUser, ipAddress, proxyIpAddress); } } catch (NotificationException nEx) { ErrorHandler.addActionToPoisonQueue(action, nEx); } catch (Exception ex) { ErrorHandler.addActionToPoisonQueue(action, ExceptionType.GenericError, ex); } } } else { ErrorHandler.addActionToPoisonQueue(action, ExceptionType.UnableToGetNhibernateSession); } } } else { Exceptions.ErrorHandler.addActionToPoisonQueue(action, ExceptionType.ConfigMising); } }