private async Task GetHASSIOVersion() { HassIOVersion beta = GetHassIOVersion(HassioRelease.Beta); HassIOVersion stable = GetHassIOVersion(HassioRelease.Stable); var embed = new EmbedBuilder(); embed.WithTitle("Estas são as versões mais recentes do Hassio.\n"); embed.WithColor(Helper.GetRandomColor()); if (null != stable) { embed.AddInlineField("Stable", stable.HassOS); embed.AddInlineField("Stable Supervisor", stable.Supervisor); embed.AddInlineField("Stable Home Assistant", stable.HomeAssistant); } if (null != beta) { embed.AddInlineField("Beta", beta.HassOS); embed.AddInlineField("Beta Supervisor", beta.Supervisor); embed.AddInlineField("Beta Home Assistant", beta.HomeAssistant); } // mention users if any string mentionedUsers = base.MentionedUsers(); if (string.Empty != mentionedUsers) { embed.AddInlineField("FYI", mentionedUsers); } await ReplyAsync(string.Empty, false, embed); }
private async Task GetHASSIOVersion() { HassIOVersion beta = GetHassIOVersion(HassioRelease.Beta); HassIOVersion stable = GetHassIOVersion(HassioRelease.Stable); string emoji = Constants.EMOJI_HOMEASSISTANT; string title = "Here are the current HASSIO software versions."; string body = null; var inline = new List <Tuple <string, string> >(); if (null != stable) { inline.Add(new Tuple <string, string>("Stable Supervisor", stable.HassOS)); inline.Add(new Tuple <string, string>("Stable HassOS", stable.Supervisor)); inline.Add(new Tuple <string, string>("Stable Home Assistant", stable.HomeAssistant)); } if (null != beta) { inline.Add(new Tuple <string, string>("Beta Supervisor", beta.HassOS)); inline.Add(new Tuple <string, string>("Beta HassOS", beta.Supervisor)); inline.Add(new Tuple <string, string>("Beta Home Assistant", beta.HomeAssistant)); } // mention users if any string mentionedUsers = base.MentionedUsers(); if (string.Empty != mentionedUsers) { body = string.Format("FYI {0} \n", mentionedUsers) + body; } // Send response await Helper.CreateEmbed(Context, emoji, title, body, inline, true); }
public static HassIOVersion GetHassIOVersion(HassioRelease release) { string url = (release == HassioRelease.Beta) ? HASSIO_BETA : HASSIO_STABLE; string json = HassBotUtils.Utils.DownloadURLString(url); if (json == string.Empty) { logger.Error("Erro de comunicação com " + url); return(null); } HassIOVersion version = new HassIOVersion(); try { dynamic entries = JsonConvert.DeserializeObject(json); version.HomeAssistant = entries.homeassistant["default"]; version.HassOS = entries.supervisor; version.Supervisor = entries.hassos.rpi3; } catch (Exception e) { logger.Error(e); } return(version); }
private async Task GetHASSIOVersion() { HassIOVersion beta = GetHassIOVersion(HassioRelease.Beta); HassIOVersion stable = GetHassIOVersion(HassioRelease.Stable); string emoji = Constants.EMOJI_HOMEASSISTANT; string title = "Here are the current HASSIO software versions."; string body = null; var inline = new List <Tuple <string, string> >(); if (null != stable) { inline.Add(new Tuple <string, string>("Stable Supervisor", stable.HassOS)); inline.Add(new Tuple <string, string>("Stable HassOS", stable.Supervisor)); inline.Add(new Tuple <string, string>("Stable Home Assistant", stable.HomeAssistant)); } if (null != beta) { inline.Add(new Tuple <string, string>("Beta Supervisor", beta.HassOS)); inline.Add(new Tuple <string, string>("Beta HassOS", beta.Supervisor)); inline.Add(new Tuple <string, string>("Beta Home Assistant", beta.HomeAssistant)); } // Send response await CreateEmbed(Context, emoji, title, body, inline, true); }