我一直在使用telegram_bot,并试图获得groupChat id发送通知到组聊天,但不知道我必须使用哪些方法。

为了获得聊天id,当机器人参与聊天时,我使用message.chat.id,但我必须使用它来获得组聊天id,无法找到/


当前回答

如果您正在实现您的bot,则保留存储的组名-> id表,并使用命令询问它。然后还可以按名称发送。

其他回答

群组聊天id应该以-(减号)开头

This is wrong
10540154212

This is correct
-10540154212

我现在测试了4h,但它不工作2021与群聊id。错误{"ok":true,"result":[]}

但现在我找到了一个解决方案:

1)安装“Plus Messenger”(https://play.google.com/store/apps/details?id=org.telegram.plus)

2:)进入群组=>现在在群组头部点击“Group- name”=>现在在群组标题上双击。信息即将到来:ID123456789是剪贴板中的副本

3:)进入组,粘贴剪贴板文本。是你,地面id

4:)看起来像1068773197,这是机器人的-1001068773197(有-100前缀)!!

顺便说一下,你也可以在你的个人资料上看到用户id。

5:)现在转到web浏览器,发送这行(测试消息):

https://api.telegram.org/botAPITOKENNUMBER:APITOKENKEYHERE/sendmessage?chat_id=-100GROUPNUMBER&text=test

编辑API令牌和Group-ID!

function adminCheck( chat_id, name ) {
var bAdminCheck = false;
var contents = JSON.parse( getAdmin( chat_id ) );      
var i = 0;
while( !bAdminCheck && (i < contents.result.length ) ) {
    if( name == (contents.result[i].user.first_name + " " + contents.result[i].user.last_name) ) {
        bAdminCheck = true;  
    }
    i++;
}  
return bAdminCheck;

}

你可以通过这种方式获取聊天ID。

在与机器人的私人聊天中,随机发送一条消息。稍后您将搜索此消息。

从bot_father: XXXXXXXXX: yyyyyyyyyyyyyyyyyyyyy_yy获取api令牌

然后,在浏览器上使用该url发出请求:

https://api.telegram.org/botXXXXXXXXX:YYYYYYY-YYYYYYYYYYYYYYYYY_YY/getUpdates

请求返回一个json响应,在json文本中搜索你的随机消息,并在该对象中获得聊天id。

截至2021年5月,简单地说:

邀请@RawDataBot到你的组。

加入后,它将输出一个JSON文件,其中您的聊天id将位于message.chat.id。

"message": {
    "chat": {
        "id": -210987654,
        "title": ...,
        "type": "group",
        ...
    }
    ...
}

之后一定要把@RawDataBot从组中踢出去。