aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/traccar/notificators/NotificatorTelegram.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/traccar/notificators/NotificatorTelegram.java')
-rw-r--r--src/main/java/org/traccar/notificators/NotificatorTelegram.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/main/java/org/traccar/notificators/NotificatorTelegram.java b/src/main/java/org/traccar/notificators/NotificatorTelegram.java
index 00baa2540..70148110c 100644
--- a/src/main/java/org/traccar/notificators/NotificatorTelegram.java
+++ b/src/main/java/org/traccar/notificators/NotificatorTelegram.java
@@ -25,6 +25,7 @@ import org.traccar.config.Keys;
import org.traccar.model.Event;
import org.traccar.model.Position;
import org.traccar.notification.NotificationFormatter;
+import org.traccar.notification.NotificationMessage;
import javax.ws.rs.client.Entity;
import javax.ws.rs.client.InvocationCallback;
@@ -36,6 +37,7 @@ public class NotificatorTelegram extends Notificator {
private final String urlSendText;
private final String urlSendLocation;
private final String chatId;
+ private final boolean sendLocation;
public static class TextMessage {
@JsonProperty("chat_id")
@@ -67,6 +69,7 @@ public class NotificatorTelegram extends Notificator {
"https://api.telegram.org/bot%s/sendLocation",
Context.getConfig().getString(Keys.NOTIFICATOR_TELEGRAM_KEY));
chatId = Context.getConfig().getString(Keys.NOTIFICATOR_TELEGRAM_CHAT_ID);
+ sendLocation = Context.getConfig().getBoolean(Keys.NOTIFICATOR_TELEGRAM_SEND_LOCATION);
}
private void executeRequest(String url, Object message) {
@@ -96,14 +99,16 @@ public class NotificatorTelegram extends Notificator {
@Override
public void sendSync(long userId, Event event, Position position) {
User user = Context.getPermissionsManager().getUser(userId);
+ NotificationMessage shortMessage = NotificationFormatter.formatMessage(userId, event, position, "short");
+
TextMessage message = new TextMessage();
message.chatId = user.getString("telegramChatId");
if (message.chatId == null) {
message.chatId = chatId;
}
- message.text = NotificationFormatter.formatShortMessage(userId, event, position);
+ message.text = shortMessage.getBody();
executeRequest(urlSendText, message);
- if (position != null) {
+ if (sendLocation && position != null) {
executeRequest(urlSendLocation, createLocationMessage(message.chatId, position));
}
}