【问题标题】:how can i join two users in a telegram chat bot?如何在电报聊天机器人中加入两个用户?
【发布时间】:2018-02-16 11:45:17
【问题描述】:

我将在 Python 3 中制作一个电报机器人,这是一个随机聊天机器人。由于我是电报机器人的新手,我不知道如何在聊天机器人中加入两个不同的人。有这方面的指南吗?

【问题讨论】:

    标签: python python-3.x chat bots telegram


    【解决方案1】:

    如果我理解了这个问题,这实际上不是关于代码,而是它背后的想法,对吧?

    我的方法是:

    • 有人启动机器人(从现在开始我称它为“当前用户”),您获取新用户的用户 ID 并将其存储在某处(json 文件可以解决问题)

    • 当前用户想与其他用户交谈,因此您从 json 文件中提取一个随机用户 ID,并将其存储在一些对当前用户唯一的变量中。你也为接收用户做同样的事情

    • 来自当前用户的任何新消息都将通过机器人并回复给接收用户

    快速提示:使用 Telegram Bots Api 的 python 包装器,我的建议是 python telegram bot。它非常好,并提供了一些非常简洁的功能来帮助您(例如,您可以使用 pass_user_data 设置用户特定的数据)。快来看看吧!

    【讨论】:

    • tnx 为您提供了很好的解释,但我有一个主要问题,我使用了与您所说的“python电报机器人”完全相同的库,但我不知道如何捕获用户 ID,您能指导我使用哪种方法可以为我传递用户 ID 吗?
    • 我最好的建议是看看 thisthis 页面,看看其他人做了什么并尝试复制它们
    【解决方案2】:

    我不确定理解你的问题,你能给我们你假装做的更多解释吗?

    您有几个选择,创建一个组并将机器人添加到其中。

    在私人聊天中,您一次只能与一个用户交谈。

    【讨论】:

      【解决方案3】:

      您需要创建一个以 chatID 作为主列的数据库。和另一列作为合作伙伴。存储他/她的聊天伙伴聊天ID。 现在,当用户向您的机器人发送消息时,您只需检查该用户的数据库并将消息发送给她的聊天伙伴。 聊天结束后,您应该清空两个用户的合作伙伴字段。

      对于采摘部分。当用户想要找到新的合作伙伴时,从您的数据库中随机选择一行 WHERE partnerChatID 为 Null 并将它们设置为第一个用户 ID,反之亦然。

      【讨论】:

      • 这似乎是合理的,我会尝试 tnx 很多。
      猜你喜欢
      • 2022-12-11
      • 2017-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-16
      • 1970-01-01
      • 1970-01-01
      • 2022-06-10
      相关资源
      最近更新 更多