|
@@ -419,7 +419,9 @@ public class HttpHelper : MonoBehaviour
|
|
|
// }
|
|
|
// else
|
|
|
// {
|
|
|
- obsData.url = ServerAddress.ObsSeverM3U8Address + string.Format("/rtp/{0}_{1}/hls.m3u8", serverObsDatas.list[i].deviceId, serverObsDatas.list[i].channelId);
|
|
|
+ //obsData.url = await GetObsUrl(serverObsDatas.list[i].deviceId,serverObsDatas.list[i].channelId);
|
|
|
+ //Debug.Log("!!!:"+obsData.url);
|
|
|
+ //obsData.url = ServerAddress.ObsSeverM3U8Address + string.Format("/rtp/{0}_{1}/hls.m3u8", serverObsDatas.list[i].deviceId, serverObsDatas.list[i].channelId);
|
|
|
//}
|
|
|
obsData.type = obsType.BuYuanObs;
|
|
|
obsData.deviceId = serverObsDatas.list[i].deviceId;
|
|
@@ -492,14 +494,8 @@ public class HttpHelper : MonoBehaviour
|
|
|
{
|
|
|
obsData.targetName = value;
|
|
|
}
|
|
|
- // if (i > 0)
|
|
|
- // {
|
|
|
- // obsData.url =
|
|
|
- // "http://www.chatgpt918.top:9080/rtp/34020000001180000001_34020000001310000001/hls.m3u8";
|
|
|
- // }
|
|
|
- // else
|
|
|
- // {
|
|
|
- obsData.url = ServerAddress.ObsSeverM3U8Address + string.Format("/rtp/{0}_{1}/hls.m3u8", serverObsDatas.list[i].deviceId, serverObsDatas.list[i].channelId);
|
|
|
+ //obsData.url = await GetObsUrl(serverObsDatas.list[i].deviceId,serverObsDatas.list[i].channelId);
|
|
|
+ //ServerAddress.ObsSeverM3U8Address + string.Format("/rtp/{0}_{1}/hls.m3u8", serverObsDatas.list[i].deviceId, serverObsDatas.list[i].channelId);
|
|
|
//}
|
|
|
obsData.type = obsType.TaoKouObs;
|
|
|
obsData.deviceId = serverObsDatas.list[i].deviceId;
|
|
@@ -536,6 +532,32 @@ public class HttpHelper : MonoBehaviour
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ public async Task<string> GetObsUrl(string deviceId,string channelId)
|
|
|
+ {
|
|
|
+ string result = "";
|
|
|
+ string cmdUrl = ServerAddress.API_PlayStart;
|
|
|
+ cmdUrl += $"/{deviceId}/{channelId}";
|
|
|
+ Debug.Log($"send:{cmdUrl}");
|
|
|
+ UnityWebRequest requestData = UnityWebRequest.Get(cmdUrl);
|
|
|
+ await requestData.SendWebRequest();
|
|
|
+ if (requestData.result != UnityWebRequest.Result.Success)
|
|
|
+ {
|
|
|
+ Debug.LogWarning($"获取监控播放地址不成功,原因:返request不成功:" + requestData.downloadHandler.text);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ Debug.Log(requestData.downloadHandler.text);
|
|
|
+ JObject jsonObject = JObject.Parse(requestData.downloadHandler.text);
|
|
|
+ // 提取data字段的值
|
|
|
+ JToken dataToken = jsonObject["data"];
|
|
|
+ ObsPlayUrlData urlData = JsonConvert.DeserializeObject<ObsPlayUrlData>(dataToken.ToString());
|
|
|
+ result = urlData.hls;
|
|
|
+ Debug.Log("获取到监控播放路径:"+result);
|
|
|
+ }
|
|
|
+ requestData.Dispose();
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
public async Task InitYZTData3()
|
|
|
{
|
|
|
bool successInternet = true;
|