我正在创建一个电报机器人并使用 sendMessage
发送消息的方法。
使用 @username
很容易提及用户, 但是当他们没有用户名时如何提及用户?
如果使用电报 app/web,我们可以通过 @integer_id (name)
提及用户,并且电报应用程序/网络会将其转换为可点击的文本。 integer_id
输入 @
后,当我们选择用户时会自动生成.
另一个背景:
我正在尝试使用 forceReply
我想定位用户,如果他们有用户名,我可以轻松定位他们,通过在 sendMessage
上的文本中提及他们方法。
我正在创建的机器人是一个类似于机器人的“测验”。每个玩家需要轮流,而机器人正在向他们发送问题,机器人的每个消息都将针对不同的玩家。
注意:我没有禁用 Privacy Mode
,我不想电报用我不需要的消息轰炸我的服务器。它使我廉价的讨厌的服务器重载。所以,禁用它不是一种选择。
我对其他解决方案持开放态度,机器人可以在其中收听选定的播放器。
谢谢。
21/10 更新:
我已经与 BotSupport 谈过电报,他们说,现在 Bots 不能在没有用户名的情况下提及用户。
所以就我而言,我仍然继续使用 forceReply
,并且还给没有用户名的用户发送了一个简短的 msg 来设置它,这样他们就可以从 forceReply
中受益。功能。
最佳答案
根据 official documentation 可以通过带有标记的数字 id 来提及用户:[inline mention of a user](tg://user?id=123456789)
关于 Telegram Bot : How to mention user by its id (not its username),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40048452/