L'API Telegram permet d'obtenir des informations sur les membres d'un SuperGroup. Utilise la méthode GetSuperGroupMembers pour obtenir des informations sur les membres ou les utilisateurs bannis dans un supergroup ou un channel. Elle ne peut être utilisée que si SupergroupFullInfo.can_get_members vaut true ; de plus, des privilèges d'administrateur peuvent être requis pour certains filtres.
Par défaut, la méthode renvoie tous les membres du groupe, mais tu peux filtrer les membres renvoyés à l'aide du paramètre Filter. Depuis sgcWebSockets 4.5.0, cette méthode a été améliorée pour permettre de filtrer les membres à l'aide d'un ensemble de paramètres.
Filters
Voici les paramètres disponibles :
- tsgmFilterNone : valeur par défaut, signifie que les membres ne sont pas filtrés.
- tsgmFilterAdministrators : renvoie le créateur et les administrateurs.
- tsgmFilterBanned : renvoie les utilisateurs bannis du supergroup ou du channel ; ne peut être utilisé que par les administrateurs. Tu peux utiliser l'argument aSuperGroupMembersQuery pour rechercher à l'aide d'une requête.
- tsgmFilterBots : renvoie les membres bots du supergroup ou du channel.
- tsgmFilterContacts : renvoie les contacts de l'utilisateur qui sont membres du supergroup ou du channel. Tu peux utiliser l'argument aSuperGroupMembersQuery pour rechercher à l'aide d'une requête.
- tsgmFilterMention : renvoie les utilisateurs qui peuvent être mentionnés dans le supergroup.
- tsgmFilterRecent : renvoie les utilisateurs récemment actifs par ordre chronologique inverse.
- tsgmFilterRestricted : renvoie les membres restreints du supergroup ; ne peut être utilisé que par les administrateurs. Tu peux utiliser l'argument aSuperGroupMembersQuery pour rechercher à l'aide d'une requête.
- tsgmFilterSearch : utilisé pour rechercher les membres d'un supergroup ou d'un channel via une requête (chaîne). Tu peux utiliser l'argument aSuperGroupMembersQuery pour rechercher à l'aide d'une requête.
Tu peux lire le résultat à l'aide du callback OnEvent et filtrer par événement = "chatMembers".
Telegram.GetSupergroupMembers(1452979380);
procedure OnTelegramEvent(Sender: TObject; const Event, Text: string);
begin
if Event = 'chatMembers' then
ReadJSON(Text);
end;
