Laravel: Пакет SDK для Telegram не работает с Laravel 5.5


У меня есть два проекта, в которых я хочу использовать этот SDK. Один из них - Laravel 5.4, второй - Laravel 5.5. С Laravel 5.4 отправка сообщений проходит гладко, но с Laravel 5.5 я получил следующую ошибку: enter image description here

Код:

use App\Http\Controllers\TelegramController;
.
.
.
TelegramController::sendNotification('contactMail', $params);

Телеграмконтроллер:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
use Telegram\Bot\Laravel\Facades\Telegram;

class TelegramController extends Controller {

    public function getHome()
    {
        return view('/');
    }

    public function getUpdates()
    {
        $updates = Telegram::getUpdates();
        dd($updates);
    }

    public static function sendNotification($type, $params){
        switch($params['subject']){
            case 'contact':
                $subject = 'Contact';
                break;

            case 'pricequote':
                $subject = 'PriceQuote';
            break;
        }
        switch($type){
            case 'contactMail':
                $message = 'New message from:: ' . $params['email'] . ". Subject: " . $subject;
        }
        Telegram::sendMessage([
            'chat_id' => 'mychatId',
            'text' => $message,
        ]);
    }
}

В чем проблема?

Редактировать:

Я забыл добавить строки в config/app.php (спасибо, мистер Пирамида)

Теперь у меня есть еще одна ошибка, которая он не находит TelegramOtherException. Я переустановил его, но все равно получил ошибку:

enter image description here

Author: Feralheart, 2017-10-30

1 answers

Проверьте документы, которые вы упомянули, в них предлагается два способа установки sdk с помощью composer

{
    "require": {
      "irazasyed/telegram-bot-sdk": "^2.0"
    }
}

ИЛИ альтернативно

composer require irazasyed/telegram-bot-sdk ^2.0

Затем добавьте providers app/config.php

Telegram\Bot\Laravel\TelegramServiceProvider::class

, А затем Facade, который является необязательным в app/config.php

'Telegram'  => Telegram\Bot\Laravel\Facades\Telegram::class

И, наконец, опубликуйте его любым из следующих способов

php artisan vendor:publish --provider="Telegram\Bot\Laravel\TelegramServiceProvider"

ИЛИ

php artisan vendor:publish

ССЫЛКА: Бот Telegram SDK

ПРИМЕЧАНИЕ: В Laravel 5.5 фасады автоматически обнаруживаются, но все же я рекомендую провести перекрестную проверку.

 2
Author: Mr. Pyramid, 2017-10-30 20:37:08