我正在为超级群组开发机器人。 如何验证会员是否为管理员?
我的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
答案 0 :(得分:0)
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对象数组,其中包含有关除其他漫游器以外的所有聊天管理员的信息。如果聊天是群组或超级群组,并且没有任命管理员,则只会返回创建者。