/// <summary> /// Get the sources of the media windows /// </summary> public async Task <GetSourcesResponse> GetSources(XBMCRPC.Files.Media media = 0, Limits limits = null, Sort sort = null) { var jArgs = new JObject(); if (media != null) { var jpropmedia = JToken.FromObject(media, _client.Serializer); jArgs.Add(new JProperty("media", jpropmedia)); } if (limits != null) { var jproplimits = JToken.FromObject(limits, _client.Serializer); jArgs.Add(new JProperty("limits", jproplimits)); } if (sort != null) { var jpropsort = JToken.FromObject(sort, _client.Serializer); jArgs.Add(new JProperty("sort", jpropsort)); } return(await _client.GetData <GetSourcesResponse>("Files.GetSources", jArgs)); }
/// <summary> /// Get details for a specific file /// </summary> public async Task <GetFileDetailsResponse> GetFileDetails(string file = null, XBMCRPC.Files.Media media = 0, List.Fields.Files properties = null) { var jArgs = new JObject(); if (file != null) { var jpropfile = JToken.FromObject(file, _client.Serializer); jArgs.Add(new JProperty("file", jpropfile)); } if (media != null) { var jpropmedia = JToken.FromObject(media, _client.Serializer); jArgs.Add(new JProperty("media", jpropmedia)); } if (properties != null) { var jpropproperties = JToken.FromObject(properties, _client.Serializer); jArgs.Add(new JProperty("properties", jpropproperties)); } return(await _client.GetData <GetFileDetailsResponse>("Files.GetFileDetails", jArgs)); }
/// <summary> /// Get the directories and files in the given directory /// </summary> public async Task <GetDirectoryResponse> GetDirectory(string directory = null, XBMCRPC.Files.Media media = 0, List.Fields.Files properties = null, Sort sort = null, Limits limits = null) { var jArgs = new JObject(); if (directory != null) { var jpropdirectory = JToken.FromObject(directory, _client.Serializer); jArgs.Add(new JProperty("directory", jpropdirectory)); } if (media != null) { var jpropmedia = JToken.FromObject(media, _client.Serializer); jArgs.Add(new JProperty("media", jpropmedia)); } if (properties != null) { var jpropproperties = JToken.FromObject(properties, _client.Serializer); jArgs.Add(new JProperty("properties", jpropproperties)); } if (sort != null) { var jpropsort = JToken.FromObject(sort, _client.Serializer); jArgs.Add(new JProperty("sort", jpropsort)); } if (limits != null) { var jproplimits = JToken.FromObject(limits, _client.Serializer); jArgs.Add(new JProperty("limits", jproplimits)); } return(await _client.GetData <GetDirectoryResponse>("Files.GetDirectory", jArgs)); }