Создал бота в telegram. Как пользоваться его API?

Отправляю POST на: https://api.telegram.org/bot<код>/sendMessage
В виде JSON: {"chat_id":"112276284", "text":"www"}

Ответ:
{"ok":false,"error_code":400,"description":"Error: Bad Request: text is empty"}

API: https://core.telegram.org/bots/api#sendmessage

Что я не так делаю?
  • Вопрос задан
  • 38024 просмотра
Решения вопроса 1
@YurasovAlexey
Посмотри тут исходник моего калькулятора
https://github.com/format37/CalcuBot
https://telegram.me/calcubot
Ответ написан
Пригласить эксперта
Ответы на вопрос 5
@seredaes Автор вопроса
Немного разобрался:
1. Получить все сообщения, который были отправлены боту:
https://api.telegram.org/bot***/getUpdates
Получите JSON строку в окне браузера (не POST ответ)

2. Из полученного ответа узнаете id пользователя задавшего вопрос
https://api.telegram.org/bot***/sendMessage?chat_i...

И в чате получите ответ от бота :)))

Правда пока не понял как через POST отправить запрос...
Ответ написан
@YaVasilyAbakumov
https://api.telegram.org/botномер:токен/sendMessage?chat_id=целое число&reply_to_message_id=целое число&text=Тест
Ответ написан
@IzzatRakhmatov
Студент
Вот здесь пример отправки ответ на Питоне.
import cookielib
import urllib
import urllib2
import json
CJ = cookielib.LWPCookieJar()

USER_AGENT = 'LinuxBOT'
OPENER = urllib2.build_opener(urllib2.HTTPCookieProcessor(CJ))
BASE_URL = "https://api.telegram.org/bot<token>/"
url = BASE_URL + 'getUpdates'
req = urllib2.Request(url)
req.add_header("Accept","application/json")
req.add_header('User-agent',USER_AGENT)
content = OPENER.open(req).read()
for result in json.loads(content)['result']:
    if(result['message']['text'] == 'привет'):
        url = BASE_URL + 'sendMessage'
        req = urllib2.Request(url)
        req.add_header("Accept","application/json")
        req.add_header('User-agent',USER_AGENT)
        req.add_data(urllib.urlencode({'chat_id':result['message']['chat']['id'],'text':'Эй Привет чувак!'}))
        OPENER.open(req).read()
Ответ написан
Комментировать
Не нашел в документации ничего про то, что ваш запрос может быть в json-формате. Скорее всего, Телеграм просто не парсит вашу сериализацию и поэтому не видит поле text. Он весь ваш запрос воспринимает как одну большую непонятную строку.
Ответ написан
@AcidUA
подскажите как отправить смайл через bot api
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы