public async Task Handle(SuspiciousAccountReportSaved notification, CancellationToken cancellationToken) { string respondText = notification.IsSuspiciousAccountBlocked.HasValue && notification.IsSuspiciousAccountBlocked.Value ? $"ضمن تشکر، کاربر @{notification.SuspiciousAccountScreenName} قبلاً در لیست بلاک #رستم_بات قرار گرفته است." : $"ضمن تشکر، گزارش شما برای کاربر @{notification.SuspiciousAccountScreenName} ثبت شد و به زودی در #رستم_بات مورد بررسی قرار خواهد گرفت."; if (notification.ShouldRespondViaDirect) { var respondDirect = new RespondDirect() { ReceiverTwitterUserId = notification.ReporterTwitterUserId, Text = respondText }; await _notification.SendRespondDirectAsync(respondDirect); } else { var respondTweet = new RespondTweet() { InReplyToTweetId = notification.ReporterTweetId, InReplyToScreenName = notification.ReporterScreenName, Text = respondText + " همچنین میتوانید گزارشات خود را با ارسال توییت اکانت ناامن به صورت دایرکت به ما و بدون نیاز به هشتگ بفرستید." }; await _notification.SendRespondTweetAsync(respondTweet); } }
public Task SendRespondDirectAsync(RespondDirect direct) { BackgroundJob.Enqueue <IRostamBotManagerService>(bot => bot.SendReplyDirect(direct)); return(Task.CompletedTask); }
public void SendReplyDirect(RespondDirect direct) { BackgroundJob.Enqueue(() => Message.PublishMessage(direct.Text, direct.ReceiverTwitterUserId) ); }