How to make phone number a link in Telegram Bot?

2020-07-10 11:27发布

Our team tries to create the Telegram Bot and it is essential for us to make phone number in the long messages clickable. Sometimes we have to send our users messages with a lot of information and few phone numbers, so it is hard to get the phone, because telegram allows to copy only the whole message. If we send the short message without any markdown the telegram mobile app will highlight it:

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

Telegram shows the phone number as a link

If we use Markdown Telegram also make a number be clickable:

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

Although if the message is a quite long Telegram just ignore the numbers and don't parse:

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

Is there a way to make Telegram to show phone numbers as a link? Thank you

3条回答
爷的心禁止访问
2楼-- · 2020-07-10 11:59

You need to prefix country code to get a clickable phone no

查看更多
虎瘦雄心在
3楼-- · 2020-07-10 12:09

According to Telegram API there's no such thing for showing numbers clickable. Your Telegram application is doing the job and for long messages it doesn't work (maybe open an issue in GitHub and tell them). You can just use HTML or Markdown to change style of phone numbers but they can't be clickable for saving to contacts.

查看更多
混吃等死
4楼-- · 2020-07-10 12:13

I found that when string length is 200 or more, highlighting won't work. Seems like unofficial limitation.

查看更多
登录 后发表回答