Telegram 如何通过Kotlogram添加电话号码以发送直接电报信息?
我目前阅读了所有关于Kotlogram的指南,但我不知道如何在联系人中添加一个特定的电话号码,以便用Java语言发送消息Telegram 如何通过Kotlogram添加电话号码以发送直接电报信息?,telegram,Telegram,我目前阅读了所有关于Kotlogram的指南,但我不知道如何在联系人中添加一个特定的电话号码,以便用Java语言发送消息 任何帮助都将不胜感激。首先,没有/START,机器人程序无法向用户发送消息 您不能通过Bot通过电话号码添加联系人,但有一种极客方式,您可以使用sendContact获得.result.contact.用户id,然后您可以正常发送 请参见以下示例: 此解决方案是由try error驱动的,并使用原始版本,因此可能会有更好的解决方案 这包括3个步骤 将此电话号码添加到您的联系人
任何帮助都将不胜感激。首先,没有
/START
,机器人程序无法向用户发送消息
您不能通过Bot通过电话号码添加联系人,但有一种极客方式,您可以使用sendContact
获得.result.contact.用户id,然后您可以正常发送
请参见以下示例:
此解决方案是由try error驱动的,并使用原始版本,因此可能会有更好的解决方案 这包括3个步骤
用户id返回
user id
创建TLInputPeerUser
实例TLInputPeerUser
实例发送消息 private static void sendMessage(TelegramClient client) {
try {
Random random = new Random();
TLVector<TLInputPhoneContact> vector = new TLVector<>();
TLInputPhoneContact contact = new TLInputPhoneContact(Math.abs(random.nextLong()), "international phone number",
"firs-name", "last-name");
vector.add(contact);
TLImportedContacts importContacts = client.contactsImportContacts(vector, true);
TLImportedContact importedContact = importContacts.getImported().stream().findFirst().orElse(null);
TLInputPeerUser inputPeerUser = new TLInputPeerUser();
inputPeerUser.setUserId(importedContact.getUserId());
//you can save importedContact.getUserId() into db and use it as many as you want
client.messagesSendMessage(inputPeerUser, "message", Math.abs(new Random().nextLong()));
} catch (RpcErrorException | IOException e) {
e.printStackTrace();
}
}
专用静态无效发送消息(电报客户端){
试一试{
随机=新随机();
TLVector=新的TLVector();
TLInputPhoneContact=新的TLInputPhoneContact(Math.abs(random.nextLong()),“国际电话号码”,
“名字”、“姓氏”);
矢量。添加(联系人);
TLImportedContacts importContacts=client.contactsImportContacts(向量,true);
TLImportedContact importedContact=importContacts.getImported().stream().findFirst().orElse(null);
TLInputPeerUser-inputPeerUser=新的TLInputPeerUser();
inputPeerUser.setUserId(importedContact.getUserId());
//您可以将importedContact.getUserId()保存到db中,并根据需要使用它
client.messagesSendMessage(inputPeerUser,“message”,Math.abs(new Random().nextLong());
}捕获(RpcErrorException | IOException e){
e、 printStackTrace();
}
}
如果您还有更多的澄清,请留下评论(:谢谢您的帮助。但正如我前面提到的,我使用的是Kotlogram Api,所以这不是我所说的。