【问题标题】:How to know if user has seen a message sent by my bot in Telegram?如何知道用户是否在 Telegram 中看到了我的机器人发送的消息?
【发布时间】:2016-10-28 05:32:13
【问题描述】:

我正在开发一个 Telegram 机器人,我想知道与我的机器人开始私人聊天的用户是否看到了机器人发送的特定消息,以及他何时看到的。
有可能吗?
非常感谢。

【问题讨论】:

    标签: telegram-bot


    【解决方案1】:

    Telegram Bot API 具有限制功能。在发表此评论时,绝对无法获得消息查看次数。

    通常可以使用TDLib 代替 Telegram Bot。它是 Telegram 客户端库。可以直接使用,也可以作为服务供BOT调用。

    例如。使用TdApi.GetMessage获取消息,返回的消息字段为interactionInfo,其中包含forwardCountviewCount

    【讨论】:

      【解决方案2】:

      也许这个答案对你有帮助:

      在你留言的地方 链接示例:yoursite.com\checkvisit.php?id=1234

      当用户打开消息链接时自动运行电报...

      你可以理解消息已被阅读

      你必须在 checkvisit.php 中设置检查 db 如果 id 存在并且不读取设置它为读取

      然后 db 中的 id 删除或禁用

      但是这个方法很简单——电报必须添加1个参数才能返回这个

      对不起,我的英语不好

      【讨论】:

      • 这不是解决方案,sazary 想知道用户是否看到了消息(如电报应用程序中的双勾方法)。你说的可能有用,但不是真正的解决方案,因为许多用户不会点击链接。
      • 嗨。是的,我说这不是解决方案。但是对于运行链接不需要单击链接....链接是自动运行以在电报应用程序中显示预览 - 我使用这种方法,对我来说没问题
      • 伙计们,这看起来确实是一个解决方案,但问题是您必须始终连接该链接。所以我想你对这个答案一无所获
      【解决方案3】:

      我正在使用这个解决方案。

      1. 专门为您的机器人创建一个频道
      2. 让你的机器人从这个频道向用户发送消息,你可以使用转发方法。
      3. 现在您可以查看有多少用户看过您的消息

      【讨论】:

      • 谢谢,如何以编程方式获取计数?我想从 api 使用它。
      • 坦率地说,我不知道。但是您可以在用户通过特殊键盘看到您的消息后获得反馈。通过这种方式,您可以收集更精确的统计数据!
      • @KhalilLaleh 如您所知,电报消息的查看次数并不准确,因为它每 24 小时重置一次以获取更多信息,请查看 this line。顺便说一句,我们无法使用代码访问视图计数。
      【解决方案4】:

      目前不可能。

      【讨论】:

      • 还不行吗?
      猜你喜欢
      • 2018-05-17
      • 2017-12-27
      • 1970-01-01
      • 2020-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-07
      • 1970-01-01
      相关资源
      最近更新 更多