如何使用纯PHP及Web Driver实现BotMan与DialogFlow的最新集成?
纯PHP版BotMan与DialogFlow集成指南(Web Driver环境)
一、前置准备
- 确保已安装PHP 7.4+及Composer
- 拥有DialogFlow账号,已创建并配置好Agent
- 下载DialogFlow服务账号的JSON凭据文件,保存到项目根目录,命名为
dialogflow-credentials.json
二、安装依赖
执行Composer命令安装BotMan核心、Web驱动及DialogFlow扩展:
composer require botman/botman botman/driver-web botman/dialogflow
三、核心集成代码示例
创建项目根目录下的bot.php文件,内容如下:
<?php require_once 'vendor/autoload.php'; // 初始化BotMan并配置Web Driver $config = [ 'web' => [ 'matchingData' => [ 'driver' => 'web', ], ] ]; $botman = BotMan\BotMan\BotManFactory::create($config); // 配置DialogFlow集成 $dialogflow = new BotMan\Drivers\DialogFlow\DialogFlow(); $dialogflow->setCredentials(__DIR__.'/dialogflow-credentials.json'); // 将DialogFlow绑定到BotMan $botman->middleware->received($dialogflow); // 处理接收到的消息 $botman->hears('.*', function ($bot) { // 获取DialogFlow返回的意图响应 $response = $bot->getMessage()->getExtras()['apiReply']; // 回复用户 $bot->reply($response); }); // 运行BotMan $botman->listen();
四、前端测试页面示例
创建index.html,用于发送消息测试:
<!DOCTYPE html> <html> <head> <title>BotMan Test</title> <script src="https://cdn.jsdelivr.net/npm/botman-web-widget@0/build/js/widget.js"></script> </head> <body> <script> var botmanWidget = { frameEndpoint: 'bot.php' }; </script> </body> </html>
五、运行与验证
- 启动本地PHP服务器:
php -S localhost:8000 - 访问
http://localhost:8000/index.html,发送消息,即可看到DialogFlow的意图响应返回
内容的提问来源于stack exchange,提问作者BOL
相关产品推荐
相关产品推荐

