/// <summary> /// Invio mail con password - ToDo /// </summary> /// <param name="NotificationType">Tipo notifica</param> /// <returns></returns> public bool NotificationSendRecover( Domain.TicketUser User, Domain.DTO.DTO_NotificationSettings Settings, String NewPassword) { //Testo esempio: /* Le sue credenziali per l'accesso al servizio ticket sono le seguenti: * Mail: [PlaceHoldersType.UserMail] * Password: [PlaceHoldersType.UserPassword] * Indirizzo per l'accesso: [PlaceHoldersType.UserTokenUrl] */ //Creo oggetto SETTINGS (me lo farò passare...) //Settings.LangCode = User.LanguageCode; // = new Domain.DTO.DTO_NotificationSettings //{ // BaseUrl = "http://blablalba", // DateTimeFormat = "0:dd/MM/yy H:mm:ss", // LangCode = User.LanguageCode, // CategoriesTemplate = "", // IntCategoryType = null, // IntTicketStatus = null //}; //Creo oggetto DATA Domain.DTO.DTO_NotificationData Data = new Domain.DTO.DTO_NotificationData(); bool IsPerson = (User.Person == null) ? true : false; String Mail = IsPerson ? User.Person.Mail : User.mail; Data.User = new Domain.DTO.Notification.DTO_User { LanguageCode = User.LanguageCode, Mail = Mail, Name = IsPerson ? User.Person.Name : User.Name, Surname = IsPerson ? User.Person.Surname : User.Sname, Password = NewPassword, Token = null }; //Recupero messaggio lm.Comol.Core.Notification.Domain.dtoNotificationMessage msg = ServiceTemplate.GetNotificationMessage( Data.User.LanguageCode, ModuleTicket.UniqueCode, (Int64)ModuleTicket.MailSenderActionType.externalRecover); if (msg == null) { return(false); } // Invio Mail. return(NotificationSendMail(Settings, Data, msg, Mail)); }
private Dictionary <String, lm.Comol.Core.Notification.Domain.dtoNotificationMessage> GetTemplates(long idAction, Core.Notification.Domain.NotificationChannel channel, Core.Notification.Domain.NotificationMode mode, List <String> languageCodes) { Dictionary <String, lm.Comol.Core.Notification.Domain.dtoNotificationMessage> templates = new Dictionary <string, Core.Notification.Domain.dtoNotificationMessage>(); if (languageCodes.Any()) { /// RECUPERO I TEMPLATE PER CIASCUNA LINGUA templates = languageCodes.ToDictionary(l => l, l => ServiceTemplate.GetNotificationMessage(l, ModuleWebConferencing.UniqueCode, idAction, mode, channel)); } return(templates); }
/// <summary> /// Invio mail per reset password - ToDo /// </summary> /// <param name="NotificationType">Tipo notifica</param> /// <returns></returns> public bool NotificationSendPasswordChanged(Domain.TicketUser User, Domain.DTO.DTO_NotificationSettings Settings) { ////Creo oggetto SETTINGS (me lo farò passare...) //Domain.DTO.DTO_NotificationSettings Settings = new Domain.DTO.DTO_NotificationSettings //{ // BaseUrl = "http://blablalba", // DateTimeFormat = "0:dd/MM/yy H:mm:ss", // LangCode = User.LanguageCode, // CategoriesTemplate = "", // IntCategoryType = null, // IntTicketStatus = null //}; //Creo oggetto DATA Domain.DTO.DTO_NotificationData Data = new Domain.DTO.DTO_NotificationData(); bool IsPerson = (User.Person == null) ? true : false; String Mail = IsPerson ? User.Person.Mail : User.mail; Data.User = new Domain.DTO.Notification.DTO_User { LanguageCode = User.LanguageCode, Mail = Mail, Name = IsPerson ? User.Person.Name : User.Name, Surname = IsPerson ? User.Person.Surname : User.Sname, Password = "", Token = null }; //Recupero messaggio lm.Comol.Core.Notification.Domain.dtoNotificationMessage msg = ServiceTemplate.GetNotificationMessage( Data.User.LanguageCode, ModuleTicket.UniqueCode, (Int64)ModuleTicket.MailSenderActionType.externalPasswordChanged); if (msg != null) { return(NotificationSendMail(Settings, Data, msg, Mail)); } return(true); // Invio Mail. }
/// <summary> /// Invio notifiche automatiche /// </summary> /// <param name="NotificationType">Tipo notifica</param> /// <param name="OtherParameters">Altri parametri da definire...</param> /// <returns></returns> /// <remarks> /// ATTENZIONE! Sarà necessario creare funzioni "ad hoc" con relativi parametri necessari. /// </remarks> public bool NotificationSend( ModuleTicket.MailSenderActionType ActionType, Domain.DTO.DTO_NotificationSettings Settings, Domain.DTO.DTO_NotificationData Data, String Address) { //Recupero messaggio lm.Comol.Core.Notification.Domain.dtoNotificationMessage msg = ServiceTemplate.GetNotificationMessage( Data.User.LanguageCode, ModuleTicket.UniqueCode, (Int64)ModuleTicket.MailSenderActionType.externalRegistration); if (msg == null) { return(false); } // Invio Mail. return(NotificationSendMail(Settings, Data, msg, Address)); }
/// <summary> /// Invio Token/URL per la validazione dell'utente /// </summary> /// <param name="NotificationType">Tipo notifica</param> /// <returns></returns> public bool NotificationSendToken(TicketUser User, Domain.DTO.DTO_NotificationSettings Settings, Token Token, String Password) { //Testo esempio: /* Gentile [PlaceHoldersType.UserSureName] [PlaceHoldersType.UserName] * Il suo account è stato registrato nel sistema. * * Dati Account: * Mail: [PlaceHoldersType.UserMail] * Password: [PlaceHoldersType.UserPassword] * Lingua: [PlaceHoldersType.UserLanguageCode] * * Per attivarlo è necessario accedere con le proprie credenziali al seguente indirizzo: * [PlaceHoldersType.UserTokenUrl] * * Oppure dalla pagine di accesso, al primo tentativo verrà richiesto il seguente codice di convalida: * [PlaceHoldersType.UserToken] * * La conferma dell'account può essere effettuata entro il: [PlaceHoldersType.UserTokenExpiration] */ //To Do!!! //Domain.Enums.Notification NotificationType = Domain.Enums.Notification.ExternalRegistration; //Creo oggetto SETTINGS (me lo farò passare...) //Domain.DTO.DTO_NotificationSettings Settings = new Domain.DTO.DTO_NotificationSettings //{ // BaseUrl = "http://blablalba", // DateTimeFormat = "0:dd/MM/yy H:mm:ss", // LangCode = User.LanguageCode, // CategoriesTemplate = "", // IntCategoryType = null, IntTicketStatus= null, // SmtpConfig = null //}; //Creo oggetto DATA Domain.DTO.DTO_NotificationData Data = new Domain.DTO.DTO_NotificationData(); bool IsPerson = (User.Person == null) ? false : true; String Mail = IsPerson ? User.Person.Mail : User.mail; Data.User = new Domain.DTO.Notification.DTO_User { LanguageCode = User.LanguageCode, Mail = Mail, Name = IsPerson ? User.Person.Name : User.Name, Surname = IsPerson ? User.Person.Surname : User.Sname, Password = Password, Token = new Domain.DTO.Notification.DTO_User.DTO_Token { Code = Token.Code.ToString(), Creation = Token.CreatedOn } }; //Recupero messaggio lm.Comol.Core.Notification.Domain.dtoNotificationMessage msg = ServiceTemplate.GetNotificationMessage( Data.User.LanguageCode, ModuleTicket.UniqueCode, (Int64)ModuleTicket.MailSenderActionType.externalRegistration); if (msg == null) { return(false); } // Invio Mail. return(NotificationSendMail(Settings, Data, msg, Mail)); }