Dur*_*mar 1 php telegram telegram-bot
我也浏览了很多论坛和 telegram API。但无法得到正确的答案。
这是我的主要问题。我的数据库中有用户列表及其手机号码,我想通过这些用户的电报向他们发送消息。为此我需要他们的聊天 ID。我如何通过他们的手机号码检索该信息?如果我有聊天 ID,我可以使用以下参考向他们发送消息。
我访问了以下链接,由用户自己手动从 BOT 获取聊天 ID。但我想要脚本自动执行。
谢谢。
我对 PHP 不熟悉。但有一种方法可以做到这一点:
如您所知,您可以使用其电话号码和名字(不需要是拥有该号码的联系人的真实名字)在电报机器人中发送联系人。
将联系人发送到chatID(无论您选择什么chatID,可以是您自己的个人聊天ID)后,您可以查找其UserID。
现在,如果该人存在于 Telegram 中,您将得到一个代表他/她的 UserID 或 chatID 的长数字,但如果不存在,长数字将为0。
在 C# 中,我使用这段代码来查看 telegram 中是否存在电话号码,效果非常好。
string s = "+44...."; //the phone number
var req2 = await bot.MakeRequestAsync(new SendContact(update.Message.Chat.Id, s, "Name"));
if(req2.Contact.UserId == 0)
{
Console.WriteLine("The contact does not exist in Telegram");
}else
{
Console.WriteLine("The contact exists in telegram with UserID:{0}",req2.Contact.UserId.ToString());
}
Run Code Online (Sandbox Code Playgroud)
我相信这也可以在 PHP 中完成。