aboutsummaryrefslogtreecommitdiff
path: root/juick-server/src/main/java/com/juick/server/TelegramBotManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'juick-server/src/main/java/com/juick/server/TelegramBotManager.java')
-rw-r--r--juick-server/src/main/java/com/juick/server/TelegramBotManager.java20
1 files changed, 8 insertions, 12 deletions
diff --git a/juick-server/src/main/java/com/juick/server/TelegramBotManager.java b/juick-server/src/main/java/com/juick/server/TelegramBotManager.java
index 3c3fbc9f..c47493b4 100644
--- a/juick-server/src/main/java/com/juick/server/TelegramBotManager.java
+++ b/juick-server/src/main/java/com/juick/server/TelegramBotManager.java
@@ -112,7 +112,7 @@ public class TelegramBotManager implements NotificationListener {
return;
}
}
- User user_from = userService.getUserByUID(telegramService.getUser(message.chat().id())).orElse(AnonymousUser.INSTANCE);
+ User user_from = telegramService.getUser(message.chat().id());
logger.info("Found juick user {}", user_from.getUid());
List<Long> chats = telegramService.getChats();
@@ -161,7 +161,7 @@ public class TelegramBotManager implements NotificationListener {
|| text.equalsIgnoreCase("/logout")
|| text.equalsIgnoreCase("/start")
|| text.equalsIgnoreCase("/help")) {
- String msgUrl = "http://juick.com/login?hash=" + userService.getHashByUID(user_from.getUid());
+ String msgUrl = "http://juick.com/login?hash=" + userService.getHashForUser(user_from);
String msg = String.format("Hi, %s!\nYou can post messages and images to Juick there.\n" +
"Tap to [log into website](%s) to get more info", user_from.getName(), msgUrl);
telegramNotify(message.from().id().longValue(), msg, new com.juick.Message());
@@ -275,7 +275,7 @@ public class TelegramBotManager implements NotificationListener {
}
private void processTelegramResponse(Long chatId, SendResponse response, com.juick.Message source) {
- int userId = telegramService.getUser(chatId);
+ User user = telegramService.getUser(chatId);
if (!response.isOk()) {
if (response.errorCode() == 403) {
// remove from anonymous chat
@@ -285,11 +285,9 @@ public class TelegramBotManager implements NotificationListener {
logger.info("deleted {} chat", d);
}
);
- if (userId > 0) {
- User userToDelete = userService.getUserByUID(userId)
- .orElseThrow(IllegalStateException::new);
- boolean status = telegramService.deleteTelegramUser(userToDelete.getUid());
- logger.info("deleting telegram id of @{} : {}", userToDelete.getName(), status);
+ if (!user.isAnonymous()) {
+ boolean status = telegramService.deleteTelegramUser(user.getUid());
+ logger.info("deleting telegram id of @{} : {}", user.getName(), status);
boolean chatStatus = telegramService.deleteChat(chatId);
logger.info("deleting telegram chat {} : {}", chatId, chatStatus);
}
@@ -299,9 +297,7 @@ public class TelegramBotManager implements NotificationListener {
}
} else {
if (MessageUtils.isReply(source)) {
- messagesService.setLastReadComment(userService.getUserByUID(userId)
- .orElseThrow(IllegalStateException::new), source.getMid(), source.getRid());
- User user = userService.getUserByUID(userId).orElseThrow(IllegalStateException::new);
+ messagesService.setLastReadComment(user, source.getMid(), source.getRid());
applicationEventPublisher.publishEvent(new MessageReadEvent(this, user, source));
}
}
@@ -350,7 +346,7 @@ public class TelegramBotManager implements NotificationListener {
users.forEach(c -> telegramNotify(c, msg, jmsg));
// anonymous
- chats.stream().filter(u -> telegramService.getUser(u) == 0).forEach(c -> telegramNotify(c, msg, jmsg));
+ chats.stream().filter(u -> telegramService.getUser(u).isAnonymous()).forEach(c -> telegramNotify(c, msg, jmsg));
}
}
@Override