如何使用电报API通过给定的joinlink获取专用通道的chatid?

如何使用电报API通过给定的joinlink获取专用通道的chatid?,api,telegram,channel,Api,Telegram,Channel,我有这样一个连接链接: (chatInviteAlready (ID: 0x5abcdefg) = (chat=(channel (ID: 0x5abcdefg) = (creator=None, kicked=None, left=None, editor=True, moderator=None, broadcast=True, verified=None, megagroup=None, restricted=None, democracy=None, signatures=None, m

我有这样一个连接链接:

(chatInviteAlready (ID: 0x5abcdefg) = (chat=(channel (ID: 0x5abcdefg) = (creator=None, kicked=None, left=None, editor=True, moderator=None, broadcast=True, verified=None, megagroup=None, restricted=None, democracy=None, signatures=None, min=None, id=123456789, access_hash=615xxxxxxxxx, title=testChannel, username=None, photo=(chatPhotoEmpty (ID: 0x37xxxxxxx) = ()), date=2017-06-14 14:34:50, version=0, restriction_reason=None))))
我想知道导致我获取该频道聊天ID的函数


谢谢。

您可以使用电报API函数
消息。checkChatInvite

from telethon import TelegramClient
from telethon.tl.functions.messages.check_chat_invite import CheckChatInviteRequest


client = TelegramClient('session_id', '+phonenumber', api_id=1234, api_hash='0cxxxxxxx')
client.connect()

channel_hash = "AAAAAxxxxxxxx"
result = client.invoke(CheckChatInviteRequest(channel_hash))
print (result)
结果是这样的:

(chatInviteAlready (ID: 0x5abcdefg) = (chat=(channel (ID: 0x5abcdefg) = (creator=None, kicked=None, left=None, editor=True, moderator=None, broadcast=True, verified=None, megagroup=None, restricted=None, democracy=None, signatures=None, min=None, id=123456789, access_hash=615xxxxxxxxx, title=testChannel, username=None, photo=(chatPhotoEmpty (ID: 0x37xxxxxxx) = ()), date=2017-06-14 14:34:50, version=0, restriction_reason=None))))
在这里,响应中的id是您正在查找的通道id。
上面的示例使用Telethon和python,但您可以使用任何语言和客户端连接到TelegramAPI

@Burzum频道散列是您发送的url末尾的一个。在你的例子中是这样的AAAAAEI95pT9clShebEcMg@Burzum如果你觉得我的答案有帮助,请将其标记为已接受。让我为您找到一个示例,告诉您如何向频道发送消息,但请稍候,成员无法向频道发送消息。他们必须是管理员。这是您试图向其发送消息的组或频道吗?@Burzum在我的答案的结果中查看checkChatInvite的结果,它已经具有访问权限。\u散列:id=123456789,访问权限\u散列=615xxxxxxxxx。@Burzum用于您不需要访问权限的组。仅对于超级组,您需要访问散列。因此,您只需发送带有chat_id的消息。@Burzum您需要使用InputPeerChat将chat_id转换为chat。像这样的聊天=输入peerchat(聊天id),然后调用send_message(聊天“Test”)