public override async Task HandleAsync(IUpdateContext context, UpdateDelegate next, string[] args, CancellationToken cancellationToken) { _chatProcessor = new ChatProcessor(context); var msg = context.Update.Message; if (msg.ReplyToMessage != null) { msg = msg.ReplyToMessage; } var userId = msg.From.Id; var nameLink = msg.GetFromNameLink(); var sendText = $"{nameLink} diturunkan dari admin"; var promote = await _chatProcessor.DemoteChatMemberAsync(userId); if (!promote.IsSuccess) { var errorCode = promote.ErrorCode; var errorMessage = promote.ErrorMessage; sendText = $"Demote {nameLink} gagal" + $"\nPesan: {errorMessage}"; } await _chatProcessor.SendAsync(sendText); }