能否构造向指定Bot发送特定消息的t.me URL?
构造指定Telegram Bot的消息触发URL方案
嘿,这个需求完全可以实现!我来给你分享社区里总结的实用技巧,刚好能解决你找不到指定Bot URL的问题——不需要用API,直接通过t.me链接就能让用户一键打开指定Bot并填入预设消息。
两种可用的URL格式
1. 触发Bot的/start命令(带自定义参数)
如果你的Bot支持通过/start命令接收参数,这个格式最实用:
t.me/<你的Bot用户名>?start=<URL编码后的消息内容>
举个实际例子:假设你的Bot用户名是MyTestBot,要发送的内容是Hello, I need help!,把消息做URL编码(空格换成%20,特殊字符转码)后,最终链接就是:
t.me/MyTestBot?start=Hello%2C%20I%20need%20help%21
用户点这个链接后,会直接跳转到Telegram和MyTestBot的对话界面,输入框里自动填好/start Hello, I need help!,用户只需要点发送就行。
2. 直接填充普通消息(非命令)
要是你不需要触发命令,只想让用户发普通消息,就用text参数:
t.me/<你的Bot用户名>?text=<URL编码后的消息内容>
还是上面的例子,对应的链接是:
t.me/MyTestBot?text=Hello%2C%20I%20need%20help%21
点击后同样直接打开Bot对话,输入框里已经填好预设的普通消息,用户点发送就直接发给指定Bot了,完全不用手动选择接收对象。
几个要注意的点
- 消息内容必须做URL编码:空格、逗号、感叹号这些特殊字符都要转成对应的编码格式,不然链接可能失效。
- 这个功能是Telegram官方支持的,但确实没公开详细文档,都是社区用户摸索出来的实用技巧。
- 和你之前找到的
t.me/share/url不同,这个格式直接锁定了接收消息的Bot,完美解决你需要指定Bot的需求。
内容的提问来源于stack exchange,提问作者Isvara
相关产品推荐
相关产品推荐

