dimitrius86
@dimitrius86
Сисадмин. Немного программирую.

Почему бот не реагирует на команды?

Добрый день.

Исходные данные по серверу: Centos 7, php 5.6 со всеми расширениями, используется библиотека https://github.com/TelegramBot/Api

<?php

    require_once("vendor/autoload.php");
    const TOKEN = "тут стоит токен";
    $bot = new \TelegramBot\Api\Client(TOKEN);

if(!file_exists("registered.trigger")){
    /**
     * файл registered.trigger будет создаваться после регистрации бота.
     * если этого файла нет значит бот не зарегистрирован
     */

    // URl текущей страницы
    $page_url = "https://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
    $result = $bot->setWebhook($page_url);
    if($result){
        file_put_contents("registered.trigger",time());
        $bot->sendMessage("мой ID", "Веб-хук установлен со статусом: ".$result);// создаем файл дабы прекратить повторные регистрации
    }
}
    $bot->sendMessage("мой ID", "HELLO WORLD!");

    $bot->command('start', function ($message) use ($bot) {
    $answer = 'Добро пожаловать!';
    $bot->sendMessage($message->getChat()->getId(), $answer);
});

$bot->run();


Прикол в том, что сообщения отправляются, но команду start он не воспринимает, как будто веб-хук не установлен. SSL сертификат валидный, не самоподписанный. Список команд через ботфазера установлен.

Подскажите, в чем может быть дело?
  • Вопрос задан
  • 2137 просмотров
Пригласить эксперта
Ответы на вопрос 1
skobkin
@skobkin
Гентушник, разработчик на PHP и Symfony.
Ну возьмите дебаггер, посмотрите, приходят ли на ваш бот апдейты через вебхук, посмотрите как он их обрабатывает.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Ведисофт Екатеринбург
от 25 000 ₽
YCLIENTS Москва
от 200 000 до 350 000 ₽
от 300 000 до 500 000 ₽
20 апр. 2024, в 18:09
70000 руб./за проект
20 апр. 2024, в 18:04
3000 руб./за проект
20 апр. 2024, в 17:55
3000 руб./за проект