我正在编写一个机器人,我想在execute(...)一个类之外使用一个函数extend TelegramLongPollingBot。目前我正在这样做:
new BotName().execute(sendMessage);
在方法中使用此行的示例:
public String sendMessage(PostAPI message){
SendMessage sendMessage = new SendMessage();
sendMessage.setChatId(message.getChatId());
sendMessage.setText(message.getText());
sendMessage.setParseMode(ParseMode.MARKDOWNV2);
try {
Message message1 = new BotName().execute(sendMessage);
} catch (TelegramApiException e) {
e.printStackTrace();
}
return "test";
}
在我看来,这种方法不是最好的,我想知道调用该方法的正确方法execute(...)
正确的方法是创建一个继承
TelegramLongPollingBot自并使用它的类的实例。这是文档中的一个示例:
这是一个带有 的示例
GetMe,但对于SendMessage所有内容都完全相同。现在
getOurBot()这个例子是什么。这是一个返回创建的机器人实例的函数。当然,文档中描述的方法需要适应您的代码结构。在您的程序中有一个地方是创建机器人的地方。像这样的东西:
您需要保存实例并在定义方法的类中使用它
sendMessage(例如,将其传递给构造函数并保存以供进一步使用):