Telegram bot 如何获取专用电报频道的聊天室id?
我使用curl更新我的公共频道。这种语法:Telegram bot 如何获取专用电报频道的聊天室id?,telegram-bot,Telegram Bot,我使用curl更新我的公共频道。这种语法: curl -X POST "https://api.telegram.org/bot144377327:AAGqdElkZ-77zsPRoAXXXXXXXXXX/sendMessage" -d "chat_id=@MyChannel&text=my sample text" 但是私人频道的聊天id是什么?这不是你私人邀请函里的那个 因为现在我们可以在所有方法中传递频道用户名(格式为@channelusername)代替chat\u id(而不
curl -X POST "https://api.telegram.org/bot144377327:AAGqdElkZ-77zsPRoAXXXXXXXXXX/sendMessage" -d "chat_id=@MyChannel&text=my sample text"
但是私人频道的聊天id是什么?这不是你私人邀请函里的那个
因为现在我们可以在所有方法中传递频道用户名(格式为@channelusername)代替chat\u id(而不是forwardMessage中的from\u chat\u id)。但是我管理的私人频道的@channelusername是什么?我找到了在私人频道中写作的方法
{
“ok”:没错,
“结果”:{
“聊天”:{
**“id”:-1005582487**
“标题”:“测试专用通道”,
“类型”:“通道”
},
“日期”:1448245538,
“消息id”:7,
“文本”:“123ds”
}
}
@username\u to\u id\u bot
()bot到您的私人频道,它将返回其id。最简单级别:最大值!:)
另外,我不是这个机器人的所有者
ps2。Bot将不会加入您的组,但为了安全起见,如果在使用Bot后对您有影响,只需撤销旧的邀请链接即可
原职:
至少存在5个公共组/频道的用户无法公开频道,因此…问题未得到解决。是的,您可以撤销其中一个,但目前,我们无法通过其他方式检索聊天id
有人找到那个案子的解决办法了吗
更新
我找到了疯狂的解决方案:
解决方案如下:最简单的方法是在聊天中邀请@get\u id\u bot,然后键入:
/my_id @get_id_bot
在聊天室中无需将频道转换为公共频道,然后将其设置为私人频道
全部完成 我的选择是在Android上使用流行的Plus Messenger。play store链接是: 您可以单击频道,在组名称下方的频道信息中,您可以找到频道Id 超级组和通道ID在plus messenger上看起来像1068773197。对于您在API上的使用,您可以将前缀-100设置为-1001068773197。
- 打开电报网
- 搜索你的私人频道
- 看看网址。就像:
要使用它,只需在它前面加上“-100”。因此,如果“XXXXXX”是“4785444554”您的专用频道id“-1004785444554”。打开专用频道,然后:
- 在网站上客户端:
- 查看浏览器中的URL:
例如if
1192292378是频道ID然后
- 在移动设备和桌面设备上:
- 复制频道任何消息的链接:
例如if
1192292378是频道ID(额外奖励:31是消息ID)然后
- 在Plus Messenger上:
- 打开频道的信息:
- 频道ID显示在其名称下方的上方
警告
使用电报机器人API时,请确保添加-100前缀:
频道ID是例如1192292378如果
您应该使用-1001192292378然后
您应该添加并使您的BOT成为专用频道的管理员,否则会发生
聊天未找到
错误。现在您可以将邀请链接写入BOT@username\u to\u id\u BOT,您将获得id:
例如:
还与公共聊天室、频道甚至用户合作找到了python的TelegramBotApi解决方案。 也许会为其他语言工作 我只需将我的机器人添加到专用频道,然后执行以下操作:
@your_bot_name hi
在控制台中,我得到了我需要的所有信息的响应。我使用并通过以下方式获得ID:
/authenticate
或foo
)private静态异步任务Main()
{
var botClient=新的botClient(“密钥”);
botClient.OnUpdate+=botclientonupdate;
Console.ReadKey();
}
私有静态异步void botclientonupdate(对象?发送方,UpdateEventArgs e)
{
var id=e.Update.ChannelPost.Chat.id;
等待客户
https://api.telegram.org/bot<BOT_TOKEN>/getUpdates