doniyorbekm
@doniyorbekm
Yii-шник

Telegram отравляет сообщения бесконечно, почему?

Всем привет! Я пишу бота для Телеграм на Yii2 и сейчас мой код для WebHook выглядит так:
public function actionGetUpdates() {

        $telegram = new Telegram('484152800:A*************************');

        $request = file_get_contents('php://input');
        $request = json_decode( $request, TRUE );
        header("HTTP/1.1 200 OK");

        if( !$request )
        {
            // Some Error output (request is not valid JSON)
        }
        elseif( !isset($request['update_id']) || !isset($request['message']))
        {
            // Some Error output (request has not message)
        }
        else
        {
            $chatId  = $request['message']['chat']['id'];
            $message = $request['message']['text'];

            switch( $message )
            {
                case '/start':
                    $telegram->sendMessage('82166*****','test');
                    break;
            }

        }   
    }

Если отправить этому боту текст '/start', то он отвечает текстом 'test' бесконечное множество раз.
Я так понимаю, это потому что сервер Телеграмма не получает от моего кода статус 200 OK
Так как мне ответить статусом 200 OK чтобы телеграм получил этот код и не отправлял сообщения бесконечно?
  • Вопрос задан
  • 1943 просмотра
Пригласить эксперта
Ответы на вопрос 1
skobkin
@skobkin
Гентушник, разработчик на PHP и Symfony.
Возможно, ваш вебхук вовращает некорректный код ответа.
API телеграм получив ошибочный код будет повторять попытки доставить боту сообщение делая новые запросы к вашему вебхуку.
Ответ написан
Ваш ответ на вопрос

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

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