В настоящее время я пишу Discord Bot на C #. Я сделал большую часть работы с ботом, но в этом следующем обновлении я хочу добавить возможность проверки, если Streamer ушел вживую. В настоящее время я опрашиваю Twitch API и извлекаю файл JSON, который у него есть, и проверяю, является ли объект потока JSON нулевым или нет. Но это занимает 3-5 минут после запуска стримера, прежде чем он наконец увидит, что Stream не равен нулю, хотя я опрашиваю JSON каждые 5 секунд. Есть ли способ сделать это более эффективно? Мой код ниже:
private const string Url = "https://api.twitch.tv/kraken/streams/streamer";
var request = (HttpWebRequest)WebRequest.Create(Url);
request.Method = "Get";
request.Timeout = 12000;
request.ContentType = "application/vnd.twitchtv.v5+json";
request.Headers.Add("Client-ID", "ID");
using (var s = request.GetResponse().GetResponseStream())
{
using (var sr = new System.IO.StreamReader(s))
{
var jsonObject = JObject.Parse(sr.ReadToEnd());
var jsonStream = jsonObject["stream"];
// twitch channel is online if stream is not null.
LastTwitchStatus = jsonStream.Type != JTokenType.Null;
}
}