Telegram Bot SDK添加命令

时间:2017-07-07 21:11:06

标签: php laravel laravel-5.4 telegram

我正在使用laravel 5.4和Telegram Bot SDK

我想在我的机器人上添加一个命令。

我尝试添加the documentation StartCommand,但收到错误。

Command class "Vendor\App\Commands\StartCommand" not found!

但文档说:

  

您可以将自定义命令存储在任何目录中,只要您的命令可以根据composer.json设置自动加载

我将StartCommand class存储在app\StartCommand.php

这是我的composer.json

...
,
"autoload": {
    "classmap": [
      "database"
    ],
    "psr-4": {
      "App\\": "app/"
    }
},
...

这是在`config \ telegram.php:

的telegrom-bot-sdk配置
...
    'commands' => [
        Telegram\Bot\Commands\HelpCommand::class,
        Vendor\App\Commands\StartCommand::class,
    ],
];

1 个答案:

答案 0 :(得分:1)

我必须使用我文件的当前命名空间。

如果我将命令文件存储在app\中,我应该使用

namespace App;

在我的代码中而不是

namespace Vendor\App\Commands;

config\telegram.php

...
    'commands' => [
        Telegram\Bot\Commands\HelpCommand::class,
        App\StartCommand::class,
    ],
];