|
@@ -25,6 +25,11 @@ public class RTCRoomManager : MonoSingleton<RTCRoomManager>, IController
|
|
|
public JObject controlData;
|
|
|
|
|
|
public bool isRTCreate;
|
|
|
+
|
|
|
+ public GameObject audio1;
|
|
|
+ public GameObject audio2;
|
|
|
+
|
|
|
+ public Dictionary<string, AudioSource> dicAudio;
|
|
|
private void Start()
|
|
|
{
|
|
|
this.RegisterEvent<RTCCreatRoomSuccessEvent>(CreatRoomSuccess).UnRegisterWhenGameObjectDestroyed(gameObject);
|
|
@@ -32,6 +37,8 @@ public class RTCRoomManager : MonoSingleton<RTCRoomManager>, IController
|
|
|
rtcState = RTCEnum.OFF;
|
|
|
question = QuestionEnum.NetWork;
|
|
|
isRTCreate = false;
|
|
|
+
|
|
|
+ RTCManager.OnRemoteVideoStateChanged += RemoteVideoStateChanged;
|
|
|
}
|
|
|
private void Update()
|
|
|
{
|
|
@@ -40,7 +47,33 @@ public class RTCRoomManager : MonoSingleton<RTCRoomManager>, IController
|
|
|
isRTCreate = false;
|
|
|
this.GetService<IRTCService>().CreatRoom();
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void RemoteVideoStateChanged(string uid, REMOTE_VIDEO_STATE_REASON_RTC state)
|
|
|
+ {
|
|
|
+ Debug.Log("RemoteVideoStateChanged " + uid +" "+ state.ToString());
|
|
|
+ switch (state)
|
|
|
+ {
|
|
|
+ case REMOTE_VIDEO_STATE_REASON_RTC.REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION:
|
|
|
+ break;
|
|
|
+ case REMOTE_VIDEO_STATE_REASON_RTC.REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY:
|
|
|
+ break;
|
|
|
+ case REMOTE_VIDEO_STATE_REASON_RTC.REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED:
|
|
|
+ break;
|
|
|
+ case REMOTE_VIDEO_STATE_REASON_RTC.REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED:
|
|
|
+ break;
|
|
|
+ case REMOTE_VIDEO_STATE_REASON_RTC.REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED:
|
|
|
+ LiveRTCRoomMain.Instance.rtcRawImage.gameObject.SetActive(false);
|
|
|
+ break;
|
|
|
+ case REMOTE_VIDEO_STATE_REASON_RTC.REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED:
|
|
|
+ LiveRTCRoomMain.Instance.rtcRawImage.gameObject.SetActive(true);
|
|
|
+ break;
|
|
|
+ case REMOTE_VIDEO_STATE_REASON_RTC.REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE:
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private void CreatRoomSuccess(RTCCreatRoomSuccessEvent e)
|
|
@@ -103,7 +136,7 @@ public class RTCRoomManager : MonoSingleton<RTCRoomManager>, IController
|
|
|
|
|
|
public void UserJoined( UserEnum userEnum , JObject metadata = null)
|
|
|
{
|
|
|
-
|
|
|
+ Debug.Log("DGJ ===> " + rtcState);
|
|
|
switch (userEnum)
|
|
|
{
|
|
|
case UserEnum.Player:
|
|
@@ -239,13 +272,19 @@ public class RTCRoomManager : MonoSingleton<RTCRoomManager>, IController
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
- if(rtcState != RTCEnum.OFF&& !(ScenesManager.Instance.getWindow() == ScenesManager.SceneType.ShowRoom|| ScenesManager.Instance.getWindow() == ScenesManager.SceneType.ShowRTC))
|
|
|
+ if (rtcState != RTCEnum.OFF && !(ScenesManager.Instance.getWindow() == ScenesManager.SceneType.ShowRoom || ScenesManager.Instance.getWindow() == ScenesManager.SceneType.ShowRTC))
|
|
|
{
|
|
|
Debug.Log(" GETWindow Scenes " + ScenesManager.Instance.getWindow());
|
|
|
|
|
|
LeaveChannel();
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|
|
|
public void LeaveChannel()
|