Php 由dialogflow驱动的Botman没有回复我的消息

Php 由dialogflow驱动的Botman没有回复我的消息,php,laravel,dialogflow-es,chatbot,botman,Php,Laravel,Dialogflow Es,Chatbot,Botman,我正在学习如何使用PHP和Botman.io创建基于Dialogflow的NLP聊天机器人。我写了一个简单的代码,应该可以工作,但僵尸没有回复我的消息 我已经浏览了botman.io的文档和官方在线课程,但没有帮助,因为它们的代码完全相同 如果不难,请查看我的代码botman.php文件: use App\Http\Controllers\BotManController; use BotMan\BotMan\Middleware\Dialogflow; use function GuzzleH

我正在学习如何使用PHP和Botman.io创建基于Dialogflow的NLP聊天机器人。我写了一个简单的代码,应该可以工作,但僵尸没有回复我的消息

我已经浏览了botman.io的文档和官方在线课程,但没有帮助,因为它们的代码完全相同

如果不难,请查看我的代码botman.php文件:

use App\Http\Controllers\BotManController;
use BotMan\BotMan\Middleware\Dialogflow;
use function GuzzleHttp\json_decode;
use BotMan\BotMan\Interfaces\Middleware\Received;

$botman = resolve('botman');

$dialogflow_token = 'it is secret'

$dialogflow = Dialogflow::create(dialogflow_token)->listenForAction();

$botman->middleware->received($dialogflow);

$botman->hears('weathersearch', function($bot){

    $extras = $bot->getMessage()->getExtras();
    $location = $extras['apiParameters']['geo-city'];

    $url = 'http://api.apixu.com/v1/current.json?key=38b39a718abc4c6da25112826190108&q='.urlencode($location);
    $response  = json_decode(file_get_contents($url));

    $bot->reply('The weather in' . $response->$location->$name . ', ' . $response->$location->$country . 'is: ');
    $bot->reply($response->current->condition->text);
    $bot->reply('Temperature: '.$response->current->temp_c. ' Celcius');

})->middleware($dialogflow);


?>
机器人应该通过提供当前的天气温度和条件来响应诸如“加利福尼亚州的天气如何”之类的消息,即25摄氏度晴朗,您可以试试这个

但是你必须打开API v2,你可以试试这个

但是你必须打开API v2