78 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			78 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | |||
|  | using System.Collections.Generic; | |||
|  | using System.Net; | |||
|  | using System.Web.Http; | |||
|  | using Newtonsoft.Json; | |||
|  | using System.Collections; | |||
|  | using System.IO; | |||
|  | using System.Text; | |||
|  | using BLL; | |||
|  | using Microsoft.SqlServer.Server; | |||
|  | using System.Configuration; | |||
|  | 
 | |||
|  | namespace WebAPI.Controllers | |||
|  | { | |||
|  |     /// <summary> | |||
|  |     ///  | |||
|  |     /// </summary> | |||
|  |     public class VideoController : ApiController | |||
|  |     { | |||
|  |         /// <summary> | |||
|  |         ///  | |||
|  |         /// </summary> | |||
|  |         /// <param name="projectId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public Model.ResponeData getVideoInfor(string projectId) | |||
|  |         { | |||
|  |             var responeData = new Model.ResponeData(); | |||
|  |             try | |||
|  |             { | |||
|  |                 string url = ConfigurationManager.AppSettings["Video_URL"]; | |||
|  |                 List<string> urls = new List<string>(); | |||
|  |                 string res = APIGetHttpService.Http(url+"api/v1/device/channeltree"); | |||
|  | 
 | |||
|  |                 List<Dictionary<string, string>> jsonNvr = JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(res); | |||
|  |                 foreach (Dictionary<string, string> nvr in jsonNvr) | |||
|  |                 { | |||
|  |                     string jsonCameras = APIGetHttpService.Http(url+"api/v1/device/channeltree?serial=" + nvr["serial"]); | |||
|  |                     responeData.data = JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(jsonCameras); | |||
|  | 
 | |||
|  |                 } | |||
|  |             } | |||
|  |             catch (Exception ex) | |||
|  |             { | |||
|  |                 responeData.code = 0; | |||
|  |                 responeData.message = ex.Message; | |||
|  |             } | |||
|  | 
 | |||
|  |             return responeData; | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         ///  | |||
|  |         /// </summary> | |||
|  |         /// <param name="projectId"></param> | |||
|  |         /// <param name="serial"></param> | |||
|  |         /// <param name="code"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public Model.ResponeData getVideoUrl(string projectId, string serial, string code) | |||
|  |         { | |||
|  |             var responeData = new Model.ResponeData(); | |||
|  |             try | |||
|  |             { | |||
|  |                 string url = ConfigurationManager.AppSettings["Video_URL"]; | |||
|  |                 var stmp = new DateTimeOffset(DateTime.Now).ToUnixTimeSeconds() + ""; | |||
|  |                 string jsonCamera = APIGetHttpService.Http(url +"api/v1/stream/start?serial=" + serial + "&code=" + code + "&_=" + stmp); | |||
|  |                 responeData.data = JsonConvert.DeserializeObject<Dictionary<string, string>>(jsonCamera); | |||
|  |             } | |||
|  |             catch (Exception ex) | |||
|  |             { | |||
|  |                 responeData.code = 0; | |||
|  |                 responeData.message = ex.Message; | |||
|  |             } | |||
|  | 
 | |||
|  |             return responeData; | |||
|  |         } | |||
|  |     } | |||
|  | } |