//**********************************************************// //** Below is Members routines **// //**********************************************************// // Return members list from specified group Name private static TLVector <TLAbsUser> GetGroupMembers(string gname, string ufile = null) { long hash = 0; int gid = GetGroupIdByName(gname, out hash); TeleSharp.TL.Messages.TLChatFull ch = GetGroupFullById(gid, hash); if (0 == hash && MembersLogAndSave(ch.Users, ufile, gname)) { return(ch.Users); } int offset = 0; TLChannelParticipants ps = null; TLVector <TLAbsUser> users = new TLVector <TLAbsUser>(); do { ps = client.GetChannelParticipants(gid, hash, offset, 5000).GetAwaiter().GetResult(); foreach (TLUser u in ps.Users) { users.Add(u); } offset += ps.Users.Count; } while (users.Count < ps.Count && 0 != ps.Users.Count); MembersLogAndSave(users, ufile, gname); return(users); }