private bool getDvrOnorOff(StreamDvrPlan sdp) { var dvr = VhostDvrApis.GetVhostDvr(sdp.DeviceId, sdp.VhostDomain, out ResponseStruct rs); if (dvr == null) { return(false); } string?dvrApply = dvr.Dvr_apply !; dvrApply = dvrApply.Replace(";", ""); List <string> dvrStreams = new List <string>(); if (dvrApply.Trim().ToLower().Equals("all")) { dvrApply = ""; } if (!string.IsNullOrEmpty(dvrApply)) { dvrStreams = Regex.Split(dvrApply, @"[\s]+").ToList(); if (!dvrStreams.Contains((sdp.App + "/" + sdp.Stream).Trim())) { return(false); } return(true); } return(false); }
private void setDvrOnorOff(StreamDvrPlan sdp, bool eanble) { var dvr = VhostDvrApis.GetVhostDvr(sdp.DeviceId, sdp.VhostDomain, out ResponseStruct rs); if (dvr != null) { string? dvrApply = dvr.Dvr_apply !; List <string> dvrStreams = new List <string>(); if (!string.IsNullOrEmpty(dvrApply)) { dvrStreams = Regex.Split(dvrApply, @"[\s]+").ToList(); } if (dvrStreams.Count == 0) { dvrStreams.Add(""); } for (int i = 0; i <= dvrStreams.Count - 1; i++) { dvrStreams[i] = dvrStreams[i].TrimEnd(';').Trim(); } bool needWrite = false; switch (eanble) { case true: if (!dvrStreams.Contains((sdp.App + "/" + sdp.Stream).Trim())) { dvrStreams.Add((sdp.App + "/" + sdp.Stream).Trim()); needWrite = true; } break; case false: if (dvrStreams.Contains((sdp.App + "/" + sdp.Stream).Trim())) { dvrStreams.Remove((sdp.App + "/" + sdp.Stream).Trim()); needWrite = true; } break; } if (needWrite) { dvr.Dvr_apply = ""; foreach (var str in dvrStreams) { dvr.Dvr_apply += str + "\t"; } dvr.Dvr_apply = dvr.Dvr_apply.TrimEnd('\t'); VhostDvrApis.SetVhostDvr(sdp.DeviceId, sdp.VhostDomain, dvr, out rs); SystemApis.RefreshSrsObject(sdp.DeviceId, out rs); } } }
public JsonResult GetVhostDvr(string deviceId, string vhostDomain) { ResponseStruct rss = CommonFunctions.CheckParams(new object[] { deviceId, vhostDomain }); if (rss.Code != ErrorNumber.None) { return(Program.CommonFunctions.DelApisResult(null !, rss)); } var rt = VhostDvrApis.GetVhostDvr(deviceId, vhostDomain, out ResponseStruct rs); return(Program.CommonFunctions.DelApisResult(rt, rs)); }