如何检查用户是否在电报中启动了机器人?
how to check if a user started a bot in telegram or not?
我正在用电报开发一个机器人,这是我的问题:
我的频道中有一些帖子,其中 inline_keyboards 已附加到它们。当用户按下按钮时,机器人中会发生下一个事件,并且会向用户显示一些消息。如果用户之前已经启动过机器人,则没有问题,否则我会出错。我应该如何检查用户是否是我的机器人的成员来处理这个问题???
如果不发送消息,则无法检查机器人是否可以与用户交谈。
您可以使用url和https://t.me/Bot?start=some_data
格式,您将收到/start some_data
,请您自己尝试this link。
尝试使用 sendMessage() API 并向用户发送消息。之后电报会回复一个状态告诉你是否成功。
如果启动机器人接收接收正常,
如果没有启动机器人接收什么都没有。
{"ok":true,"result":{"message_id":9999,"from":{"id":00000000,"is_bot":true,"first_name":"mybot","username":"mybot"}}}
就这样,祝你好运。
这种方法的问题在于,如果很多用户都这样做,电报就会开始限制您的回调:( ...如果您可以在某处阅读该信息,那就容易多了...
我正在用电报开发一个机器人,这是我的问题: 我的频道中有一些帖子,其中 inline_keyboards 已附加到它们。当用户按下按钮时,机器人中会发生下一个事件,并且会向用户显示一些消息。如果用户之前已经启动过机器人,则没有问题,否则我会出错。我应该如何检查用户是否是我的机器人的成员来处理这个问题???
如果不发送消息,则无法检查机器人是否可以与用户交谈。
您可以使用url和https://t.me/Bot?start=some_data
格式,您将收到/start some_data
,请您自己尝试this link。
尝试使用 sendMessage() API 并向用户发送消息。之后电报会回复一个状态告诉你是否成功。
如果启动机器人接收接收正常, 如果没有启动机器人接收什么都没有。
{"ok":true,"result":{"message_id":9999,"from":{"id":00000000,"is_bot":true,"first_name":"mybot","username":"mybot"}}}
就这样,祝你好运。
这种方法的问题在于,如果很多用户都这样做,电报就会开始限制您的回调:( ...如果您可以在某处阅读该信息,那就容易多了...