Example #1
0
 public DeviceInfo GetDeviceInfo()
 {
     var deviceInfo = new DeviceInfo();
     return deviceInfo;
 }
Example #2
0
        /// <summary>
        ///     Get device info: software & hardware versions, link and device uptime
        /// </summary>
        public DeviceInfo GetDeviceInfo()
        {
            dynamic jsonObject = BBoxGetValue(new List<string>
            {
                "Device/DeviceInfo/HardwareVersion",
                "Device/DeviceInfo/GUIFirmwareVersion",
                "Device/DeviceInfo/InternalFirmwareVersion",
                "Device/DeviceInfo/UpTime",
                "Device/DSL/Lines/Line[Alias=\"DSL0\"]/LastChange"
            });

            var deviceInfo = new DeviceInfo();
            deviceInfo.HardwareVersion = jsonObject["reply"]["actions"][0]["callbacks"][0]["parameters"]["value"].ToString();
            deviceInfo.FirmwareVersion = jsonObject["reply"]["actions"][2]["callbacks"][0]["parameters"]["value"].ToString()  + " / " + jsonObject["reply"]["actions"][1]["callbacks"][0]["parameters"]["value"].ToString();

            try
            {
                double seconds = Convert.ToDouble(jsonObject["reply"]["actions"][3]["callbacks"][0]["parameters"]["value"]);
                DeviceUptime = TimeSpan.FromSeconds(seconds);
                seconds = Convert.ToDouble(jsonObject["reply"]["actions"][4]["callbacks"][0]["parameters"]["value"]);
                LinkUptime = TimeSpan.FromSeconds(seconds);

                deviceInfo.LinkUptime = LinkUptime.ToString("%d") + (LinkUptime.Days == 1 ? " day " : " days ") +
                                        LinkUptime.ToString("hh\\:mm\\:ss");
                deviceInfo.DeviceUptime = DeviceUptime.ToString("%d") + (DeviceUptime.Days == 1 ? " day " : " days ") +
                                          DeviceUptime.ToString("hh\\:mm\\:ss");
            }
            catch
            {
            }

            return deviceInfo;
        }
Example #3
0
        public DeviceInfo GetDeviceInfo()
        {
            var deviceInfo = new DeviceInfo();
            deviceInfo.DeviceUptime = "unknown";
            deviceInfo.LinkUptime = "unknown";
            deviceInfo.HardwareVersion = "unknown";
            deviceInfo.FirmwareVersion = "unknown";

            try
            {
                string homePage = GetAdminHTML();

                //get hardware version
                int hwIndex = homePage.IndexOf("<td class=\"libelle\">Hardware Version</td>");
                if (hwIndex > 0)
                {
                    hwIndex = homePage.IndexOf("<td class=\"status\">", hwIndex);
                    if (hwIndex > 0)
                    {
                        hwIndex += "<td class=\"status\">".Length;
                        int hwIndexEnd = homePage.IndexOf("<", hwIndex);

                        string hwVersion = homePage.Substring(hwIndex, hwIndexEnd - hwIndex).Replace("&nbsp;", " ");
                        deviceInfo.HardwareVersion = hwVersion;
                    }
                }

                //get firmware version
                int fwIndex = homePage.IndexOf("<td class=\"libelle\">Runtime Code Version</td>");
                if (fwIndex > 0)
                {
                    fwIndex = homePage.IndexOf("<td class=\"status\">", fwIndex);
                    if (fwIndex > 0)
                    {
                        fwIndex += "<td class=\"status\">".Length;
                        int fwIndexEnd = homePage.IndexOf("<", fwIndex);
                        string fwVersion = homePage.Substring(fwIndex, fwIndexEnd - fwIndex).Replace("&nbsp;", " ");
                        deviceInfo.FirmwareVersion = fwVersion;
                    }
                }
            }
            catch { }
            return deviceInfo;
        }