Не работает бот в телеграме irazasyed/telegram-bot-sdk

Пишу MiniCRM, пытаюсь сделать бота в телеграме, и бот ни на что не реагирует, в чем может быть ошибка? Использую библиотеку irazasyed/telegram-bot-sdk, вебхук сделал прописав https://api.telegram.org/bot{$Api}/setWebhook?url=https://salute11.ru, вот что выдало:

{"ok":true,"result":true,"description":"Webhook was set"}

Вот hook.php:

<?php

require_once 'app/models/telegram/TelegramBot.php';
require_once 'app/models/check/CheckModel.php';
require_once 'app/models/users/UsersModel.php';
require_once 'functions.php';
require_once 'app/config.php';

use app\models\check\CheckModel;
use app\models\users\UsersModel;
use app\models\TelegramBot;

$botApiKey = 'Api';
$telegramBot = new TelegramBot($botApiKey);

$content = file_get_contents('php://input');
$update = json_decode($content, true);

$telegramBot->handleUpdate($update);`

Вот модель TelegramBot.php:

    <?php

namespace app\models\telegram;

use models\users\UsersModel;

class TelegramBot 
{
    private $botApiKey;

    public function __construct($botApiKey) {
        $this->botApiKey = $botApiKey;
    }

    public function sendTelegramMessage($chatId, $text) {
        $url = "https://api.telegram.org/bot{$this->botApiKey}/sendMessage";

        $postData = [
            'chat_id' => $chatId,
            'text' => $text
        ];

        $ch = curl_init($url);

        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);

        $response = curl_exec($ch);
        curl_close($ch);

        return json_decode($response, true);
    }

    public function handleUpdate($update)
    {
        if (!isset($update['message'])) {
            return;
        }

        $message = $update['message'];
        $chatId = $update['chat']['id'];
        $text = $message['text'];
        $username = $message['from']['username'];

        $usersModel = new UsersModel();

        try {
            $userState = $usersModel->getUserState($chatId);
            $currentState = $userState ? $userState['state'] : '';
            $user_id = $userState ? $userState['user_id'] : null;

            switch ($text) {

                case '/start':
                    $response = $this->handleStartCommand($chatId);
                    $usersModel->setUserState($chatId, 'start');
                    break;
                case '/email':
                    $response = $this->handleEmailCommand($chatId);
                    $usersModel->setUserState($chatId, 'email');
                    break;
                case '/help':
                    $response = $this->handleHelpCommand($chatId);
                    break;
                default:
                    $response $this->handleMessage($text, $currentState, $chatId, $usersModel, $user_id, $username);
                    break;

            }
        } catch (\Exception $e) {
            error_log("Ошибка: " . $e->getMessage() . "\n", 3, 'logs/error.log');
            $response = "Произошла ошибка. Пожалуйста, попробуйте ещё раз.";
        }

        $this->sendTelegramMessage($chatId, $response);

    }

    private function handleMessage($text, $currentState, $chatId, $usersModel, $user_id, $username)
    {
        if ($currentState === 'email') {
            $user = $usersModel->getUserByEmail($text);

            if ($user) {
                $user_id = $user['id'];
                $response = "Теперь введите ваш OTP код с профиля сайта.";
                $usersModel->setUserState($chatId, 'otp', $user_id);
            } else {
                $response = "Пользователь с таким email не найден.";
            }
        } elseif($currentState === 'otp' && preg_match('/^\d{7}&/', $text)) {
            $otpCode = intval($text);
            $otpInfo = $usersModel->getOtpInfoByUserIdAndCode($user_id, $otpCode);

            if ($otpInfo) {
                $usersModel->createUserTelegram($user_id, $chatId, $username);
                $response = "Ваш код подтвержден и Ваши аккаунты связаны!";
                $usersModel->setUserState($chatId, '');
            } else {
                $response = "Введённый код неверен или код устарел...";
            }
        } else {
            $response = "Я не понимаю Вашу команду...";
        }

        return $response;

    }

    private function handleHelpCommand($chatId)
    {
        return "Список команд: \n/start - начать работу\n/email - ввести email\n/help - вывести справку.";
    }

    private function handleEmailCommand($chatId)
    {
        return "Введите email с вашего аккаунта MiniCRM: ";
    }

    private function handleStartCommand($chatId)
    {
        return "Что-бы иметь возможность пользоваться нашим ботом, Вам необходимо провести привязку аккаунта телеграм и аккаунта MiniCRM.
        Для инструкции перейдите по адресу https://salute11.ru, авторизуйтесь в системе и перейдите в ваш профиль."
    }

}

Ответы (0 шт):