如何在Telegram Bot中将电话号码设为链接?

时间:2016-11-14 14:09:41

标签: markdown telegram-bot

我们的团队尝试创建Telegram Bot,我们必须在可点击的长消息中拨打电话号码。有时我们必须向用户发送包含大量信息和电话号码的消息,因此很难获得电话,因为电报只允许复制整个消息。 如果我们在没有任何降价的情况下发送短消息,电报移动应用程序将突出显示它:

await bot.send_message(chat_id, "Example text with a phone +79991234567")

Telegram shows the phone number as a link

如果我们使用Markdown Telegram也可以点击一个数字:

await bot.send_message(
    chat_id,
    "Example text with a phone [+79991234567](tel:+79991234567)", 
    parse_mode='Markdown'
)

Telegram shows the phone number as a link

虽然如果邮件是一个很长的电报,但是忽略这些数字并且不要解析:

await bot.send_message(
    chat_id, 
    "Example text with a phone [+79991234567](tel:+79991234567)\nwithin a long-long message\nwithin a long-long message\nwithin a long-long message\nwithin a long-long message\nwithin a long-long message\nwithin a long-long message\nwithin a long-long message\nwithin a long-long message\nwithin a long-long message\nwithin a long-long message", 
    parse_mode='Markdown'
)

Telegram doesn't shows the phone number as a link

有没有办法让Telegram将电话号码显示为链接?谢谢

3 个答案:

答案 0 :(得分:2)

根据Telegram API,没有显示数字可点击的内容。您的Telegram应用程序正在执行此任务,对于长消息,它不起作用(可能在GitHub中打开一个问题并告诉他们)。 您可以使用HTML或Markdown来更改电话号码的样式,但无法点击它们以保存到联系人。

答案 1 :(得分:2)

我发现当字符串长度为200或更多时,突出显示将不起作用。似乎是非官方的限制。

答案 2 :(得分:0)

您需要在国家/地区代码前添加可点击电话号码