Advertisement
Guest User

Untitled

a guest
Dec 15th, 2019
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.73 KB | None | 0 0
  1. package com.pengrad;
  2.  
  3. import org.telegram.telegrambots.bots.TelegramLongPollingBot;
  4. import org.telegram.telegrambots.meta.api.methods.send.SendMessage;
  5. import org.telegram.telegrambots.meta.api.objects.Update;
  6. import org.telegram.telegrambots.meta.api.objects.replykeyboard.ReplyKeyboardMarkup;
  7. import org.telegram.telegrambots.meta.api.objects.replykeyboard.buttons.KeyboardRow;
  8. import org.telegram.telegrambots.meta.exceptions.TelegramApiException;
  9.  
  10. import java.io.BufferedReader;
  11. import java.io.IOException;
  12. import java.io.InputStreamReader;
  13. import java.net.URL;
  14. import java.util.ArrayList;
  15.  
  16. import static java.awt.DefaultKeyboardFocusManager.sendMessage;
  17.  
  18. public class MyBot extends TelegramLongPollingBot {
  19.  
  20. private Request request;
  21. private ReplyKeyboardMarkup keyboardMarkup = new ReplyKeyboardMarkup();
  22. public MyBot(){
  23. request = new Request();
  24. }
  25.  
  26. @Override
  27. public void onUpdateReceived(Update update) {
  28.  
  29. SendMessage sendMessage = new SendMessage();
  30. sendMessage.setChatId(update.getMessage().getChatId());
  31. sendMessage.setReplyMarkup(keyboardMarkup);
  32.  
  33.  
  34. System.out.println(update.getMessage().getText());
  35.  
  36. keyboardMarkup.setSelective(true);
  37. keyboardMarkup.setResizeKeyboard(true);
  38. keyboardMarkup.setOneTimeKeyboard(true);
  39.  
  40. ArrayList<KeyboardRow> keyboardRowArrayList = new ArrayList<>();
  41. KeyboardRow firstrow = new KeyboardRow();
  42. firstrow.add("Hello");
  43. firstrow.add("Hii");
  44.  
  45. KeyboardRow secondrow = new KeyboardRow();
  46. secondrow.add("hello");
  47. secondrow.add("hii");
  48.  
  49. keyboardRowArrayList.add(firstrow);
  50. keyboardRowArrayList.add(secondrow);
  51.  
  52. keyboardMarkup.setKeyboard(keyboardRowArrayList);
  53.  
  54.  
  55.  
  56. try {
  57. execute(sendMessage);
  58. } catch (TelegramApiException e) {
  59. e.printStackTrace();
  60. }
  61.  
  62. //sendMsg(update.getMessage().getChatId().toString(), update.getMessage().getText());
  63. }
  64.  
  65. @Override
  66. public String getBotUsername() {
  67. return "FootBallerInfoBot";
  68. }
  69.  
  70. @Override
  71. public String getBotToken() {
  72. return "805483938:AAG2ywBVj-A-LK_GfY2BLHgZSFMPdWcAgoU";
  73. }
  74.  
  75. private void sendMsg(String chatId, String messageText) {
  76. SendMessage sendMessage = new SendMessage();
  77. sendMessage.enableMarkdown(true);
  78. sendMessage.setChatId(chatId);
  79. try {
  80. sendMessage.setText(translate(messageText));
  81. execute(sendMessage);
  82. } catch (Exception e) {
  83. e.printStackTrace();
  84. }
  85. }
  86.  
  87. private String translate(String messageText) throws IOException {
  88. String inputLine;
  89. StringBuilder response = new StringBuilder();
  90. String urlStr = request.getRequest(makeWordCorrect(messageText));
  91. URL url = new URL(urlStr);
  92. BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
  93. while ((inputLine = in.readLine()) != null) {
  94. response.append(inputLine);
  95. }
  96. in.close();
  97. String res = findWord(response.toString());
  98. return res;
  99. }
  100.  
  101. private String makeWordCorrect(String messageText){
  102. return messageText.replace(' ', '%');
  103. }
  104.  
  105.  
  106. private String findWord(String message){
  107. StringBuilder stringBuilder = new StringBuilder(message);
  108. String result = "";
  109. int index = stringBuilder.indexOf("<text>");
  110. stringBuilder = new StringBuilder(stringBuilder.substring(index+6));
  111. index = stringBuilder.indexOf("</text>");
  112. result = stringBuilder.substring(0, index);
  113. result = result.replace('%', ' ');
  114. return result;
  115. }
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement