2016-09-18 58 views
0

我创建了一个主java文件,并添加了一个bot指令:在我创建的公共频道上说“我爱比萨”。如何建立一个电报机器人使用java建议你使用比萨饼?

public class Main { 
    public static void main(String[] args) { 
    //create a new Telegram bot object to start talking with Telegram 
    TelegramBot bot = TelegramBotAdapter.build(“HERE YOUR API KEY”); 
    bot.sendMessage(“@pizzaciaopizza”, “I love Pizza”); 
    } 
} 

这工作。好的开始。谢天谢地,我的机器人喜欢披萨。 我想让我的机器人回答像“/ recommendPizza”这样的命令并回答一些问题。那么,如何做到这一点?

任何帮助?

回答

0

您似乎正在使用https://github.com/pengrad/java-telegram-bot-api,对吧?

我以前使用https://github.com/rubenlagus/TelegramBots。它提供了一个简单的监听器API接收更新:

public class PizzaBot { 

    private static final Logger LOG = Logger.getLogger(PizzaBot.class.getName()); 

    public static void main(String... args) throws Exception { 
     TelegramBotsApi telegramBotsApi = new TelegramBotsApi(); 
     telegramBotsApi.registerBot(new TelegramLongPollingBot() { 

      @Override 
      public void onUpdateReceived(Update update) { 
       Message message = update.getMessage(); 
       Long chatId = message.getChatId(); 
       String input = message.getText(); 
       if ("/recommendPizza".equals(input)) { 
        SendMessage request = new SendMessage(); 
        request.setChatId(chatId.toString()); 
        request.setText("Have a calzone!"); 
        try { 
         sendMessage(request); 
        } catch (TelegramApiException e) { 
         LOG.log(Level.SEVERE, "Could not send message", e); 
        } 
       } 
      } 

      @Override 
      public String getBotUsername() { 
       return "YOUR_BOT_USERNAME"; 
      } 

      @Override 
      public String getBotToken() { 
       return "YOUR_BOT_TOKEN"; 
      } 
     }); 
    } 
} 
+0

让我试试这个:) –

+0

它的工作谢谢:) –

+0

顺便说一句,我的图书馆还支持监听器现在:) –