OwlFlatFileConfig GetConfig(string filename) { XmlDocument xml = new XmlDocument(); xml.Load(filename); OwlFlatFileConfig owlConfig = XmlExtension.Deserialize <OwlFlatFileConfig>(xml); return(owlConfig); }
/// <summary> /// Get random fact. /// </summary> /// <returns></returns> public string GetJoke() { var url = "http://rzhunemogu.ru/Rand.aspx"; var founded = false; var categoryId = 0; if (!string.IsNullOrEmpty(JokesManager.Instance.Category)) { foreach (var category in Categories) { if (category.Equals(JokesManager.Instance.Category)) { founded = true; break; } ++categoryId; } } if (founded) { url += $"?CType={categoryId}"; } try { var reqGET = WebRequest.Create(url); var resp = reqGET.GetResponse(); var stream = resp.GetResponseStream(); var streamReader = new StreamReader(stream, Encoding.GetEncoding(1251)); var joke = XmlExtension.Deserialize <Model.Rzhunemogu>(streamReader.ReadToEnd()); if (joke == null) { Log.Instance.Error("Rzhunemogu deserialize object failed! JSON: {0}", joke); return(string.Empty); } return(joke.Content); } catch (Exception ex) { Log.Instance.Error(ex); } return(string.Empty); }
/// <summary> /// Check for RaumfeldZones /// http://www.hifi-forum.de/index.php?action=browseT&forum_id=212&thread=420&postID=220#220 /// http://www.hifi-forum.de/index.php?action=browseT&forum_id=212&thread=420&postID=271#271 /// Add CancelationTokkens if necessary /// </summary> /// <returns></returns> private async Task raumfeldGetZones() { if (mediaServer == null) { return; } try { using (HttpClient client = new HttpClient()) { using (HttpRequestMessage request = new HttpRequestMessage() { RequestUri = new Uri(HtmlExtension.CompleteHttpString(mediaServer.IpAddress, RaumFeldStaticDefinitions.PORT_WEBSERVICE, RaumFeldStaticDefinitions.GETZONES)), Method = HttpMethod.Get }) { if (!string.IsNullOrEmpty(raumfeldGetZonesUpdateId)) { request.Headers.Add("updateID", raumfeldGetZonesUpdateId); } using (HttpResponseMessage response = await client.SendRequestAsync(request)) { if (response.StatusCode == HttpStatusCode.Ok) { raumfeldGetZonesUpdateId = response.Headers["updateID"]; string xmlResponse = await response.Content.ReadAsStringAsync(); raumFeldZoneConfig = XmlExtension.Deserialize <RaumFeldZoneConfig>(xmlResponse); await matchRaumfeldZones(); await raumfeldGetZones(); } } } } } catch (Exception exception) { throw new Exception(); await messagingService.ShowErrorDialogAsync(exception); } }