2020-03-01 22:46:37 +04:00
|
|
|
using System;
|
|
|
|
|
using System.Net.Http;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using Kruzya.TelegramBot.Core.Extensions;
|
|
|
|
|
using Telegram.Bot.Types;
|
|
|
|
|
|
2023-07-28 19:34:28 +03:00
|
|
|
namespace Kruzya.TelegramBot.CombotAntiSpam.Combot;
|
|
|
|
|
|
|
|
|
|
public class CombotClient : ICombotClient
|
2020-03-01 22:46:37 +04:00
|
|
|
{
|
2023-07-28 19:34:28 +03:00
|
|
|
public HttpClient _HttpClient;
|
2020-03-01 22:46:37 +04:00
|
|
|
|
2023-07-28 19:34:28 +03:00
|
|
|
public CombotClient()
|
|
|
|
|
{
|
|
|
|
|
_HttpClient = new HttpClient();
|
|
|
|
|
_HttpClient.BaseAddress = new Uri("https://api.cas.chat/check");
|
|
|
|
|
}
|
2020-03-01 22:46:37 +04:00
|
|
|
|
2023-07-28 19:34:28 +03:00
|
|
|
public bool IsSpammer(User user)
|
|
|
|
|
{
|
|
|
|
|
return IsSpammerAsync(user).GetAwaiter().GetResult();
|
|
|
|
|
}
|
2020-03-01 22:46:37 +04:00
|
|
|
|
2023-07-28 19:34:28 +03:00
|
|
|
public async Task<bool> IsSpammerAsync(User user)
|
|
|
|
|
{
|
|
|
|
|
var result = await _HttpClient.GetJsonAsync<CombotApiResponse>($"?user_id={user.Id}");
|
|
|
|
|
return result.IsSpammer;
|
2020-03-01 22:46:37 +04:00
|
|
|
}
|
|
|
|
|
}
|