Implement basic help command, which provides an overview over all registered commands
This commit is contained in:
parent
91191ee63b
commit
2089dfbe23
@ -0,0 +1,37 @@
|
|||||||
|
package org.telegram.telegrambots.api.commands;
|
||||||
|
|
||||||
|
import org.telegram.telegrambots.BotLogger;
|
||||||
|
import org.telegram.telegrambots.TelegramApiException;
|
||||||
|
import org.telegram.telegrambots.api.methods.send.SendMessage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* standard help command, which gets registered by default, to supply a list of all available commands
|
||||||
|
*
|
||||||
|
* @author tschulz
|
||||||
|
*/
|
||||||
|
public class HelpCommand extends Command {
|
||||||
|
|
||||||
|
private static final String LOGTAG = "HELPCOMMAND";
|
||||||
|
private final ICommandRegistery commandRegistry;
|
||||||
|
|
||||||
|
public HelpCommand(ICommandRegistery commandRegistry, String botToken) {
|
||||||
|
super("help", "Gives an overview over all Commands registered for this bot", botToken);
|
||||||
|
this.commandRegistry = commandRegistry;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
void execute(String[] arguments, long chatId) {
|
||||||
|
for (Command registeredCommand : commandRegistry.getRegisteredCommands()) {
|
||||||
|
SendMessage sendMessage = new SendMessage();
|
||||||
|
sendMessage.setChatId(chatId);
|
||||||
|
sendMessage.enableHtml(true);
|
||||||
|
sendMessage.setText("<b>" + registeredCommand.getCommandIdentifier() + "</b>\n" + registeredCommand.getDescription());
|
||||||
|
|
||||||
|
try {
|
||||||
|
sendMessage(sendMessage);
|
||||||
|
} catch (TelegramApiException e) {
|
||||||
|
BotLogger.error("Failed to send HelpMessage", LOGTAG, e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user