0
Я пытаюсь показать пользовательскую клавиатуру получателю сообщения, которое я отправляю.(Telegram bot) JSON post request не работает
Однако, я не знаю точно, почему, но следующий код не работает, когда я пытаюсь добавить параметр reply_markup
в json String.
Я предполагаю, что это потому, что я положил массив reply_markup
неправильно, но не могу найти способ исправить.
String query = "https://api.telegram.org/bot{token}/sendmessage";
String json = "{\"chat_id\":188784029,\"text\":\"123123\",\"reply_markup\":{\"keyboard\":[['1','2'],['3','4']], \"one_time_keyboard\":true}}";
URL url = new URL(query);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(5000);
conn.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setRequestMethod("POST");
OutputStream os = conn.getOutputStream();
os.write(json.getBytes("UTF-8"));
os.close();
// read the response
InputStream in = new BufferedInputStream(conn.getInputStream());
String result = org.apache.commons.io.IOUtils.toString(in, "UTF-8");
in.close();
conn.disconnect();
Вы можете попробовать этот апи https://github.com/pengrad/java-telegram-bot-api вместо реализации все сами –