我正在为超级群组开发机器人。
如何确认会员是否为管理员?
我的lib:org.telegram 4.2 https://core.telegram.org/bots/api
我尝试使用ChatMember,GetChatAdministrators和SendMessage方法,但是我不知道如何插入参数,因为它们不询问它们,但它们只有.get选项(null respose)。只有GetChatAdministrators允许ChatID的.set方法,但它给出错误
GetChatAdministrators getadmin = new GetChatAdministrators().setChatId(ChatIDSupergroup);
ArrayList<ChatMember> s = null;
try {
s = getadmin.deserializeResponse(null); //Unable to deserialize response
} catch (TelegramApiRequestException e) {
e.printStackTrace();
}
ChatMember member = new ChatMember(); //There are only get options
String status=member.getStatus(); //null
最佳答案
function adminCheck( id, chat_id ) {
var bAdminCheck = false;
var name = "";
var aChatMember = getChatAdministrators( chat_id );
var contents = JSON.parse( aChatMember );
var i = 0;
while( !bAdminCheck && ( i < contents.result.length ) ) {
if( id == contents.result[i].user.id ) {
bAdminCheck = true;
}
i++;
}
return {
AdminCheck: bAdminCheck,
};
}
可用方法
资源:
https://core.telegram.org/bots/api#available-methods
getChatAdministrators
使用此方法可获取聊天中的管理员列表。成功后,返回一个ChatMember对象数组,其中包含有关除其他漫游器以外的所有聊天管理员的信息。如果聊天是组或超组,并且没有任命管理员,则仅返回创建者。
关于java - 如何验证成员是否为管理员?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56506006/