Почему при отправке сообщения с кириллицей в Телеграм боте не работает Inline Keyboard?
Здравствуйте!
Писал недавно Telegram бота на M5Stack (не спрашивайте). Бот должен работать на HTTP запросах.
В свою очередь они работают через urequest - модуль MicroPython, на котором работает M5Stack.
В свою очередь дошло до написания кода для отправки сообщений с Inline Keyboard (кнопки под сообщением). С сообщениями с латинскими буквами всё идеально работало:
urequests.request(method='POST', url='https://api.telegram.org/bot'+token+'/sendMessage', json={"chat_id":chat_id,
"text": "HELLO! \nThis is test.",
"reply_markup": {"inline_keyboard":
[[
{"text": "TEST1", "callback_data":"A1"},
{"text":"TEST2", "callback_data":"B1"}
]]}}, headers={})
Стоило только написать что либо на кириллице, то Inline Keyboard просто исчезал!
urequests.request(method='POST', url='https://api.telegram.org/bot'+token+'/sendMessage', json={"chat_id":chat_id,
"text": "Привет!",
"reply_markup": {"inline_keyboard":
[[
{"text": "TEST1", "callback_data":"A1"},
{"text":"TEST2", "callback_data":"B1"}
]]}}, headers={})
Также это не работало и с Unicode:
urequests.request(method='POST', url='https://api.telegram.org/bot'+token+'/sendMessage', json={"chat_id":chat_id,
"text": "\u0430\u0431",
"reply_markup": {"inline_keyboard":
[[
{"text": "TEST1", "callback_data":"A1"},
{"text":"TEST2", "callback_data":"B1"}
]]}}, headers={})
Удивительно, но неожиданно клавиатура заработала при одной русской букве!
urequests.request(method='POST', url='https://api.telegram.org/bot'+token+'/sendMessage', json={"chat_id":chat_id,
"text": "ф",
"reply_markup": {"inline_keyboard":
[[
{"text": "TEST1", "callback_data":"A1"},
{"text":"TEST2", "callback_data":"B1"}
]]}}, headers={})
Перерыв интернет, оказалось, что люди обычно пишут на готовых модулях для ботов (для c++, python и т.д.) или им встречаются другие подобные проблемы (исчезают некоторые кнопки, не работает кириллица на самих кнопках), а такой проблемы как у меня нет.
Ссылка на API Telgram находится в начале вопроса.
Может кто-то встречал подобную проблему или знает как её решать?



