【问题标题】:Link in telegram bot so the user can call a bot command链接电报机器人,以便用户可以调用机器人命令
【发布时间】:2018-03-01 08:15:09
【问题描述】:

我正在编写一个电报机器人,但我有一个问题。 现在,我的机器人将根据用户请求搜索图像,但如果我的 bat 找到多个图像,我想向用户发送一个图像列表,其中包含用于搜索该 iamge 的链接。 例如。

/command 米老鼠 .... 图 1.... 我找到了不止一张图片,请更具体 [链接到图片2] [链接到图片 3]

如果用户单击链接,我需要自动发送带有命令和新图像名称的消息。

有可能吗?我尝试向电报 api 添加一个超链接,但我将在浏览器中打开并向我发送一个带有 api 调用状态的 json。

【问题讨论】:

  • 您使用的是内联模式还是只是对话?
  • 我使用内联模式

标签: bots telegram


【解决方案1】:

我们可以为 TelegramBotApi 投票:https://bugs.telegram.org/c/3901

【讨论】:

    【解决方案2】:

    对于内联模式,您可以简单地返回 image results 中的 list,它将以弹出窗口的形式显示在键盘顶部。

    对于对话模式,您有以下选择:

    1) 将图像作为inline keyboard 附件返回到带有按钮数组的消息,每个按钮都具有callback_data 参数或switch_inline_query_current_chaturl 参数。处理其中一个以显示图像。

    2) 以 HTML 格式返回消息文本,其中包含 links 列表,格式为:<a href="https://t.me/YOUR_BOT?start=image-123456789">image name</a>

    然后你可以解析启动命令并提取图像ID。这样做的缺点是用户每次点击链接后都需要点击“开始”按钮。

    您也可以将第二种方法与内联模式一起使用。

    在我的@DebtsTrackerBot 中,我同时使用回调和switch_inline_query_current_chat 来完成类似的任务。

    【讨论】:

    • 谢谢,但是提供开始按钮不是一个有效的解决方案,我认为对用户来说太难了,我认为现在我只将图像列表导出为简单文本,以便用户可以制作复制/粘贴以获取正确的
    猜你喜欢
    • 2023-03-12
    • 2022-06-17
    • 1970-01-01
    • 2017-08-18
    • 2017-08-10
    • 2020-12-11
    • 2018-06-13
    • 2020-05-01
    • 2022-12-11
    相关资源
    最近更新 更多