private async Task <bool> CheckGlobalBanAsync(User user)
        {
            var userId   = user.Id;
            var isKicked = false;

            var isBan = await _elasticSecurityService.IsExistInCache(userId);

            ConsoleHelper.WriteLine($"{user} IsBan: {isBan}");
            if (!isBan)
            {
                return(isKicked);
            }

            var sendText = $"{user} terdeteksi pada penjaringan WinTenDev ES2 tapi gagal di tendang.";

            isKicked = await _chatProcessor.KickMemberAsync(user);

            if (isKicked)
            {
                await _chatProcessor.UnbanMemberAsync(user);

                sendText = sendText.Replace("tapi gagal", "dan berhasil");
            }
            else
            {
                sendText += " Pastikan saya admin yang dapat menghapus Pengguna";
            }

            await _chatProcessor.SendAsync(sendText);

            return(isKicked);
        }
Esempio n. 2
0
        public async Task HandleAsync(IUpdateContext context, UpdateDelegate next, CancellationToken cancellationToken)
        {
            Message msg = context.Update.Message;

            _elasticSecurityService = new ElasticSecurityService(msg);
            _chatProcessor          = new ChatProcessor(context);
            var leftMember = msg.LeftChatMember;
            var isBan      = await _elasticSecurityService.IsExistInCache(leftMember.Id);

            if (!isBan)
            {
                ConsoleHelper.WriteLine("Left Chat Members...");

                var chatTitle = msg.Chat.Title;

                var newMembers   = msg.LeftChatMember;
                var leftFullName = newMembers.FirstName;


                // var fromName = msg.From.FirstName;

                var sendText = $"Sampai jumpa lagi {leftFullName} " +
                               $"\nKami di <b>{chatTitle}</b> menunggumu kembali.. :(";

                await _chatProcessor.SendAsync(sendText);
            }
            else
            {
                ConsoleHelper.WriteLine($"Left Message ignored because {leftMember} is Global Banned");
            }
        }