private IEnumerator GetVideoDetails()
        {
            string videoDetailsURI = APIData.VideoDetailsURI();

            if (Debug.isDebugBuild)
            {
#if UNITY_EDITOR
                if (showDebugLog)
                {
                    Debug.Log(videoDetailsURI);
                }
#elif UNITY_STANDALONE
                Debug.Log(videoDetailsURI);
#endif
            }
            UnityWebRequest webRequest = UnityWebRequest.Get(videoDetailsURI);
            yield return(webRequest.SendWebRequest());

            if (webRequest.isHttpError || webRequest.isNetworkError)
            {
                Debug.LogError(webRequest.error);
            }
            else
            {
                string jsonText = webRequest.downloadHandler.text;
                Json.LiveStreamingDetails.SerializedItems serializedItems = JsonUtility.FromJson <Json.LiveStreamingDetails.SerializedItems> (jsonText);
                SetLiveStreamingStatus(serializedItems);
                if (isFirstTry)
                {
                    SetChannelId(serializedItems);
                    currentChannelCoroutine = StartCoroutine(GetChannelDetails());
                }
            }
            webRequest.Dispose();
        }
Beispiel #2
0
 public void SetLiveStreamingStatus(Json.LiveStreamingDetails.SerializedItems serializedItems)
 {
     Json.LiveStreamingDetails.Items items = serializedItems.items[0];
     channelTitle    = items.snippet.channelTitle;
     liveTitle       = items.snippet.title;
     liveDescription = items.snippet.description;
     livePublishedAt = items.snippet.publishedAt;
     liveThumbnails[(int)Thumbnails.ThumbnailsType.DEFAULT]  = items.snippet.thumbnails.@default;
     liveThumbnails[(int)Thumbnails.ThumbnailsType.MEDIUM]   = items.snippet.thumbnails.medium;
     liveThumbnails[(int)Thumbnails.ThumbnailsType.HIGH]     = items.snippet.thumbnails.high;
     liveThumbnails[(int)Thumbnails.ThumbnailsType.MAXRES]   = items.snippet.thumbnails.maxres;
     liveThumbnails[(int)Thumbnails.ThumbnailsType.STANDARD] = items.snippet.thumbnails.standard;
     liveBroadcastContent = items.snippet.liveBroadcastContent;
 }
        private IEnumerator GetChatId()
        {
            string searchChatURI = APIData.SearchChatURI();

            if (Debug.isDebugBuild)
            {
#if UNITY_EDITOR
                if (showDebugLog)
                {
                    Debug.Log(searchChatURI);
                }
#elif UNITY_STANDALONE
                Debug.Log(searchChatURI);
#endif
            }
            UnityWebRequest webRequest = UnityWebRequest.Get(searchChatURI);
            yield return(webRequest.SendWebRequest());

            if (webRequest.isHttpError || webRequest.isNetworkError)
            {
                Debug.Log(webRequest.error);
            }
            else
            {
                string jsonText = webRequest.downloadHandler.text;
                Json.LiveStreamingDetails.SerializedItems serializedItems = JsonUtility.FromJson <Json.LiveStreamingDetails.SerializedItems> (jsonText);
                if (serializedItems.items[0].liveStreamingDetails.activeLiveChatId == null)
                {
                    Debug.LogError("this broadcast is not started yet or already closed.");
                }
                else
                {
                    SetLiveStreamingDetails(serializedItems);
                    SetChatId(serializedItems);
                    currentChatCoroutine = StartCoroutine(GetChat());
                }
            }
            webRequest.Dispose();
        }
        private IEnumerator GetVideoId()
        {
            string videoSearchURI = APIData.SearchVideoURI();

            if (Debug.isDebugBuild)
            {
#if UNITY_EDITOR
                if (showDebugLog)
                {
                    Debug.Log(videoSearchURI);
                }
#elif UNITY_STANDALONE
                Debug.Log(videoSearchURI);
#endif
            }
            UnityWebRequest webRequest = UnityWebRequest.Get(videoSearchURI);
            yield return(webRequest.SendWebRequest());

            if (webRequest.isHttpError || webRequest.isNetworkError)
            {
                Debug.LogError(webRequest.error);
            }
            else
            {
                string jsonText = webRequest.downloadHandler.text;
                Json.LiveStreamingDetails.SerializedItems serializedItems = JsonUtility.FromJson <Json.LiveStreamingDetails.SerializedItems> (jsonText);
                if (serializedItems.items.Length != 0)
                {
                    SetVideoId(serializedItems);
                    StartCoroutine(GetVideoDetails());
                }
                else
                {
                    Debug.LogWarning("there is no any active broadcast");
                }
            }
            webRequest.Dispose();
        }
Beispiel #5
0
 public void SetLiveStreamingDetails(Json.LiveStreamingDetails.SerializedItems serializedItems)
 {
     liveActualStartedAt   = serializedItems.items[0].liveStreamingDetails.actualStartTime;
     liveConcurrentViewers = serializedItems.items[0].liveStreamingDetails.concurrentViewers;
 }
 private void SetVideoId(Json.LiveStreamingDetails.SerializedItems serializedItems)
 {
     APIData.videoId = serializedItems.items[0].id.videoId;
 }
 private void SetChannelId(Json.LiveStreamingDetails.SerializedItems serializedItems)
 {
     APIData.channelId = serializedItems.items[0].snippet.channelId;
 }
 private void SetChatId(Json.LiveStreamingDetails.SerializedItems serializedItems)
 {
     APIData.chatId = serializedItems.items[0].liveStreamingDetails.activeLiveChatId;
 }
 private void SetLiveStreamingDetails(Json.LiveStreamingDetails.SerializedItems serializedItems)
 {
     _liveStatus.SetLiveStreamingDetails(serializedItems);
 }