如何在PHP Telegram Bot中获取用户的非命令答案?

时间:2017-06-04 22:09:36

标签: php command message telegram-bot php-telegram-bot

我是第一次使用PHP Telegram Bot为电报撰写新的Bot 想象一下,我想为What is your name?命令显示/start并等待用户的回答,等待用户的回答,然后向他显示Hello USER_NAME

我可以实现/start命令。但是,如何才能获得不是/command形式的用户回复?实际上我需要一个非命令消息的监听器。

有没有人可以帮助我?

2 个答案:

答案 0 :(得分:1)

Mohammad Jan,

你应该自己做。我建议你将聊天记录存储在数据库表中,然后将下一个命令存储在每个聊天的列中。

让我们说/start之后您正在寻找用户名,这样您就可以将/name存储到next_command列中,每当您收到没有任何/command的正常消息时,那么您可以检查next_command列并将收到的消息视为“你叫什么名字?”的答案。问题

您可以继续此过程以获取用户的完整数据。例如,在获得名称后,您可以问“你多大了?”并将next_command更改为/old,然后将下一条消息视为上一个问题的答案。

顺便说一下,这只是一个建议。您应该能够找到适合您的方式。但显而易见的是,您应该自己动手,因为电报只向您的机器人提供消息,而您的机器人则负责管理它们。

希望它有所帮助。

答案 1 :(得分:-1)

转到@BotFather,然后关闭privacy mode

/setprivacy - 设置机器人在添加到群组时会收到哪些消息。禁用隐私模式后,机器人将收到所有消息。