コード例 #1
0
        private async void CheckChat()
        {
            try
            {
                var streamerChannel = _configService.Get <string>("StreamerChannel");

                var streamStatus = _getStreamStatusQuery.Get(streamerChannel);

                if (streamStatus)
                {
                    var client = new HttpClient();

                    var currentChatters =
                        await client.GetAsync($"https://tmi.twitch.tv/group/user/{streamerChannel}/chatters");

                    if (currentChatters.IsSuccessStatusCode)
                    {
                        var chattersModel =
                            JsonConvert.DeserializeObject <TmiChattersIntermediate>(currentChatters.Content
                                                                                    .ReadAsStringAsync().Result);

                        _giveViewershipBytesCommand.Give(chattersModel.ChattersIntermediate);
                    }
                    else
                    {
                        _logger.LogError("Could not retrieve Chatters JSON from TMI service");
                    }
                }
            }
            catch (Exception e)
            {
                _logger.LogError(e, "Couldn't access the TMI Service");
            }
        }
コード例 #2
0
        public IActionResult GetStreamStatus(string broadcasterUsername)
        {
            var isStreamOnline = _getStreamStatusQuery.Get(broadcasterUsername);

            return(new JsonResult(new GetStreamStatusResponse
            {
                IsOnline = isStreamOnline
            }));
        }