diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/org/traccar/notification/NotificationMail.java | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/org/traccar/notification/NotificationMail.java b/src/org/traccar/notification/NotificationMail.java index 443018221..944200f2f 100644 --- a/src/org/traccar/notification/NotificationMail.java +++ b/src/org/traccar/notification/NotificationMail.java @@ -87,9 +87,15 @@ public final class NotificationMail { boolean auth = Boolean.parseBoolean((String) object.getAttributes().get("mail.smtp.auth")); result.put("mail.smtp.auth", auth); - result.put("mail.smtp.username", object.getAttributes().get("mail.smtp.username")); - result.put("mail.smtp.password", object.getAttributes().get("mail.smtp.password")); - result.put("mail.smtp.from", object.getAttributes().get("mail.smtp.from")); + if (object.getAttributes().containsKey("mail.smtp.username")) { + result.put("mail.smtp.username", object.getAttributes().get("mail.smtp.username")); + } + if (object.getAttributes().containsKey("mail.smtp.password")) { + result.put("mail.smtp.password", object.getAttributes().get("mail.smtp.password")); + } + if (object.getAttributes().containsKey("mail.smtp.from")) { + result.put("mail.smtp.from", object.getAttributes().get("mail.smtp.from")); + } } return result; } @@ -115,6 +121,10 @@ public final class NotificationMail { mailMessage = new MimeMessage(mailSession); + if (mailServerProperties.getProperty("mail.smtp.from") != null) { + mailMessage.setFrom(new InternetAddress(mailServerProperties.getProperty("mail.smtp.from"))); + } + mailMessage.addRecipient(Message.RecipientType.TO, new InternetAddress( Context.getDataManager().getUser(userId).getEmail())); mailMessage.setSubject(NotificationFormatter.formatTitle(userId, event, position)); |