|
@@ -27,83 +27,101 @@ public class OnWebSocketMsg : MonoSingleton<OnWebSocketMsg>
|
|
|
case SignalResponse.MessageOneofCase.None:
|
|
|
break;
|
|
|
case SignalResponse.MessageOneofCase.Join:
|
|
|
-
|
|
|
- break;
|
|
|
- case SignalResponse.MessageOneofCase.Answer:
|
|
|
- break;
|
|
|
- case SignalResponse.MessageOneofCase.Offer:
|
|
|
- break;
|
|
|
- case SignalResponse.MessageOneofCase.Trickle:
|
|
|
- break;
|
|
|
- case SignalResponse.MessageOneofCase.Update:
|
|
|
- if (response.Update.Participants != null)
|
|
|
- {
|
|
|
|
|
|
- string msg = response.Update.Participants.ToString();
|
|
|
- msg = msg.Remove(0, 1);
|
|
|
- msg = msg.Remove(msg.Length - 1, 1);
|
|
|
-
|
|
|
+ string msg = response.Join.Participant.Metadata.ToString();
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
- JObject obj = JObject.Parse(msg);
|
|
|
+
|
|
|
|
|
|
|
|
|
- string metadata = obj["metadata"].ToString();
|
|
|
-
|
|
|
- metadata = metadata.Replace('\"', '"');
|
|
|
- Debug.Log("DGJ == > metadata " + metadata);
|
|
|
+
|
|
|
+ string metadata = msg;
|
|
|
+
|
|
|
+ metadata = metadata.Replace('\"', '"');
|
|
|
+ Debug.Log("DGJ == > metadata " + metadata);
|
|
|
|
|
|
- JObject obj2 = JObject.Parse(metadata);
|
|
|
- Debug.Log("DGJ ===> roleId " + obj2["roleId"].ToString());
|
|
|
+ JObject obj2 = JObject.Parse(metadata);
|
|
|
+ Debug.Log("DGJ ===> roleId " + obj2["roleId"].ToString());
|
|
|
|
|
|
- string state = obj["state"].ToString();
|
|
|
+
|
|
|
|
|
|
- if (state == "DISCONNECTED")
|
|
|
- {
|
|
|
- if (obj2["roleId"].ToString() == "2")
|
|
|
- {
|
|
|
+ if (obj2["roleId"].ToString() == "2")
|
|
|
+ {
|
|
|
+ string uid = response.Join.Participant.Sid.ToString();
|
|
|
|
|
|
- RTCRoomManager.Instance.UserOffline(UserEnum.Expert);
|
|
|
+ if (ScenesManager.Instance.getWindow() == ScenesManager.SceneType.ShowRTC)
|
|
|
+ {
|
|
|
+ ScenesManager.Instance.showWindow(ScenesManager.SceneType.ShowRoom);
|
|
|
+ }
|
|
|
+
|
|
|
+ RTCRoomManager.Instance.ExpertJonin(uid);
|
|
|
+ RTCRoomManager.Instance.UserJoined(UserEnum.Expert, obj2);
|
|
|
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
- if (obj2["roleId"].ToString() == "1")
|
|
|
- {
|
|
|
- RTCRoomManager.Instance.UserOffline(UserEnum.Conterl);
|
|
|
- }
|
|
|
+ if (obj2["roleId"].ToString() == "1")
|
|
|
+ {
|
|
|
+ RTCRoomManager.Instance.UserJoined(UserEnum.Conterl, obj2);
|
|
|
+ }
|
|
|
|
|
|
-
|
|
|
- }
|
|
|
- else if (state == "ACTIVE")
|
|
|
- {
|
|
|
- if (obj2["roleId"].ToString() == "2")
|
|
|
- {
|
|
|
- string uid = obj["sid"].ToString();
|
|
|
-
|
|
|
- if (ScenesManager.Instance.getWindow() == ScenesManager.SceneType.ShowRTC)
|
|
|
- {
|
|
|
- ScenesManager.Instance.showWindow(ScenesManager.SceneType.ShowRoom);
|
|
|
- }
|
|
|
-
|
|
|
- RTCRoomManager.Instance.ExpertJonin(uid);
|
|
|
- RTCRoomManager.Instance.UserJoined(UserEnum.Expert, obj2);
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- if (obj2["roleId"].ToString() == "1")
|
|
|
- {
|
|
|
- RTCRoomManager.Instance.UserJoined(UserEnum.Conterl, obj2);
|
|
|
- }
|
|
|
-
|
|
|
- if (obj2["roleId"].ToString() == "3")
|
|
|
- {
|
|
|
- RTCRoomManager.Instance.UserJoined(UserEnum.Player);
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
+ if (obj2["roleId"].ToString() == "3")
|
|
|
+ {
|
|
|
+ RTCRoomManager.Instance.UserJoined(UserEnum.Player);
|
|
|
+
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ break;
|
|
|
+ case SignalResponse.MessageOneofCase.Answer:
|
|
|
+ break;
|
|
|
+ case SignalResponse.MessageOneofCase.Offer:
|
|
|
+ break;
|
|
|
+ case SignalResponse.MessageOneofCase.Trickle:
|
|
|
+ break;
|
|
|
+ case SignalResponse.MessageOneofCase.Update:
|
|
|
+
|
|
|
break;
|
|
|
case SignalResponse.MessageOneofCase.TrackPublished:
|
|
|
break;
|