嗨,伙计们,我在这里要做的是,当botman听到一些已经在代码中的东西时,它将返回if语句,如果它听到了其他的消息,它会从对话框中得到回复。有可能吗?我对botman很陌生,并试图为学校的项目开发它。
下面是我的代码:我仍然不知道如何去做,也不知道它是否可能。
if ($input == 'School info'){
$bot->reply('Give some info about school');
}
else{
//get reply from dialogflow
$dialogflow = DialogFlow::create('en');
$botman->middleware->received($dialogflow);
$botman->hears('(input.*)', function ($bot) {
$extras = $bot->getMessage()->getExtras();
$bot->reply($extras['apiReply']);
})->middleware($dialogflow);
}
});发布于 2022-11-06 16:11:38
因此,我可以通过创建新的意图来检测其他人的信息,然后在Botman中比较对话框流响应的值。如果值为真,则从Botman代码返回信息。守则如下:
$botman = resolve('botman');
$dialogflow = DialogFlow::create('en');
$botman->middleware->received($dialogflow);
$botman->hears('(input.*)', function ($bot) {
$extras = $bot->getMessage()->getExtras();
if ($extras['apiReply'] == 'IntroductionOfSchool' ){
$bot->typesAndWaits(1);
$bot->reply('Hi there, for your information. Tell more about School Info!');
$bot->typesAndWaits(1);
$bot->startConversation(new OptionsConversation());
}
else{
//get reply from dialogflow
$bot->reply($extras['apiReply']);
}
})->middleware($dialogflow);我认为这不是一个很好的方法,但至少它能做到这一点。可以自由地分享别人的方法来做这个。
https://stackoverflow.com/questions/74336886
复制相似问题