我是用java构建的 电报机器人 这基本上得到了用户的名字 它可以是1或10或甚至40(我限制为50)取决于你想要放多少 现在,当您完成特定用户时,此僵尸程序的目的就在以后 你写了一条消息发送给他们
现在一切都工作完善,id名称得到保存以及消息 虽然 我如何将它发送给我刚插入私人消息的所有用户 如果它甚至可能......通过命令
我希望我能够理解
那是我的代码:
class Bot extends TelegramLongPollingBot {
public int counter = 0;
public ArrayList names = new ArrayList(50);
public SendMessage mainMessage = new SendMessage();
public String sgMsg = "";
public StringBuilder stringBuilder = new StringBuilder();
public String msg;
public void onUpdateReceived(Update update) {
String command = update.getMessage().getText();
SendMessage sysMsg = new SendMessage();
sysMsg.setChatId(update.getMessage().getChatId());
String firstCdletter;
firstCdletter = Character.toString(command.charAt(0));
if (command.equals("/start")) {
sysMsg.setText("Enter the user's id, to finish send: Ok");
try {
execute(sysMsg);
} catch (TelegramApiException e) {
e.printStackTrace();
}
counter = 0;
names.clear();
sgMsg = "";
}else if (firstCdletter.equals("@")) {
String user = command;
names.add(counter);
counter++;
}else if(command.equals("/ok")){
sysMsg.setText("Good, now write your message you want to deliver");
try {
execute(sysMsg);
} catch (TelegramApiException e) {
e.printStackTrace();
}
}else if(command.equals("/done")){
msg = stringBuilder.toString();
}else{
sgMsg = update.getMessage().getText();
stringBuilder.append(sgMsg + " ");
}
}
谢谢大家的时间和帮助
答案 0 :(得分:2)
很遗憾,您无法通过@username
发送消息,您可以使用的唯一标识是UID(看起来像109780439
)。
顺便说一句,机器人之前必须与该用户聊天,否则你将获得400 Error。