2017-02-24 65 views
-2

需要问:Messenger bot PHP变量

1.) 如何从Messenger bot消息中获取变量。

例如:用户发送到机器人的问题“什么是日本的时间”

如何获取用户要求的城市?如何取回日本

2)

我的每封邮件保存到我的发送接收方等的阵列数据库...

如何让一步一步的问题?

例如:

用户发送:买2 DVD

机器人回答:请发送您的全名

用户回答:李四

机器人回答:请发送你的地址

用户回答:月1日,伟大的街,东京

机器人回答:谢谢你,everythig保存。

我认为这不能用只有IF语句来完成,但是会话,内存或其他东西。机器人必须知道,用户想要买东西,如果是的话,他必须询问姓名和用户地址。

我用一些字符串创建了简单的BOT,但我不知道该怎么做。关于机器人的FB文档不能帮助我。

感谢您的帮助,祝您有个愉快的一天!

回答

0

您需要存储当前的问题数量和增加它,而是让如果statment尝试使用交换机/案例当前问题数

switch ($c) { 

    case 4 : 

       //update the current question number in db and show the next question 


       $bot->send(new StructuredMessage($message['sender']['id'], 
        StructuredMessage::TYPE_BUTTON, 
        [ 
         'text' => 'Enter your Facebook profile link', 
         'buttons' => [ 
          new MessageButton(MessageButton::TYPE_POSTBACK,         'Skip') 

         ] 
        ] 
       )); 
       break; 

} 
0

您可以使用数据库来存储用户状态,你可以当变量每回发生时,不会将其存储在变量中。只需在名为status的表中创建一个数据库列,然后根据当前状态向用户发送消息文本。