genkovich/dialog-flow-bot-man-middleware

BotMan (BotMan Studio) 的中间件。与 DialogFlow API v2 集成。

0.0.6 2021-03-30 15:28 UTC

This package is auto-updated.

Last update: 2024-09-29 05:49:50 UTC


README

BotMan 中间件,用于连接 DialogFlow 与 BotMan

Latest Version on Packagist Packagist

感谢 @eclips16。代码源来自 pull request

安装

Composer

composer require genkovich/dialog-flow-bot-man-middleware

用法

.env

GOOGLE_CLOUD_PROJECT=project-id
GOOGLE_APPLICATION_CREDENTIALS=/path/to/security-file.json

在哪里获取这些变量?

  • 登录到 https://dialogflow.cloud.google.com/
  • 创建新代理(或使用现有的一个)
  • 点击“设置”图标(1)
  • 将项目 ID(2)复制到 .env 文件中
  • 点击项目 ID(2)

Step one

  • 之后,您将找到“服务帐户”部分(点击(1)或(2))

Step

  • 点击“创建服务帐户”,填写“名称”字段并点击“创建”

Step

  • 在下一步中,您必须添加两个角色,“DialogFlow API Admin”和“DialogFlow API Client”,然后点击“完成”

Step

  • 现在,转到“管理密钥”页面

Step

  • 创建新的 .json 格式密钥

Step

  • 将下载的文件移动到项目根目录
  • 在 .env 中添加文件路径

代码示例

$dialogflow = \BotMan\Middleware\DialogFlow\V2\DialogFlow::create('en');
$botman->middleware->received($dialogflow);
$botman->hears('smalltalk.(.*)', function ($bot) {
    $extras = $bot->getMessage()->getExtras();
    $bot->reply($extras['apiReply']);
})->middleware($dialogflow);

smalltalk.(.*) - 有动作名称模式 Step

如果您创建具有不同前缀的动作,则可以使用 ->ignoreIntentPattern()

$dialogflow = DialogFlow::create('en')->ignoreIntentPattern();

安全漏洞

如果您在 BotMan 中发现安全漏洞,请发送电子邮件至 Marcel Pociot(邮箱:m.pociot@gmail.com)。所有安全漏洞都将得到及时处理。

许可证

BotMan 是在 MIT 许可证下免费分发的软件。