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(); }
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(); }
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); }