如何在Java的Telegram机器人中获取当前用户的user_id?附示例
使用telegrambots库获取Telegram用户ID(Java)
你已经通过update.getMessage().getFrom()获取到了发送消息的用户User实例,直接调用该实例的getId()方法就能获取用户ID。
修改你提供的代码如下,补全用户ID的获取与打印:
if (update.hasMessage() && update.getMessage().hasText()) { String messageText = update.getMessage().getText(); long chatId = update.getMessage().getChatId(); User user = update.getMessage().getFrom(); if (messageText.equals("/start")) { // 获取并打印用户ID long userId = user.getId(); System.out.println("CurrentUserID --> " + userId); startCommandReceived(chatId, update.getMessage().getChat().getFirstName()); } }
关键说明:
User类是telegrambots库中封装用户信息的核心类,包含getId()、getFirstName()、getUserName()等方法,可获取用户的各类基础信息。- 你代码里的
massageText是拼写错误,正确应为messageText,建议修正避免后续问题。
内容的提问来源于stack exchange,提问作者Sergei Lobachev
相关产品推荐
相关产品推荐

