[Виджет] состояния системы (процессора) с индикаторами (OHM)

Модераторы: Bagir, Ivan, Vit, immortal, PAV, newz20

VAD07
Сообщения: 65
Зарегистрирован: Ср май 31, 2017 10:54 pm
Благодарил (а): 28 раз
Поблагодарили: 5 раз

Re: [Виджет] состояния системы (процессора) с индикаторами (OHM)

Сообщение VAD07 » Пн апр 09, 2018 10:24 pm

nick7zmail писал(а):
Пн апр 09, 2018 9:46 pm
VAD07 писал(а):
Пн апр 09, 2018 9:22 pm
что то я не понял какие цифры менять? вот эти:$cpu_temp = (float) $json -> {'Children'}[0] -> {'Children'}[1] -> {'Children'}[1] -> {'Children'}[2] -> {'Value'}; но на что где взять нужные?
Да эти, менять на ваши. Я же написал - считаете порядок пунктов. Считать, естественно с нуля. Примерно так:
1.jpg
Т.е. если хотите забрать температуру, скажем, видяхи - пишите

Код: Выделить всё

$gpu_temp = (float) $json -> {'Children'}[0] -> {'Children'}[3] -> {'Children'}[1] -> {'Children'}[0] -> {'Value'};
А вообще воспользовались бы модулем systeminfo. Там, мне кажется, интерфейс хоть какой нить есть для выбора (не уверен).
Спасибо. Все получилось
Аватара пользователя
nick7zmail
Сообщения: 5705
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 111 раз
Поблагодарили: 1390 раз

Re: [Виджет] состояния системы (процессора) с индикаторами (OHM)

Сообщение nick7zmail » Пн апр 09, 2018 11:03 pm

Да пожалуйста =).
А вообще для спасибо кнопочка есть)))
111.png
111.png (4.85 КБ) 821 просмотр
А то с новым скином форума не все её могут найти...
За это сообщение автора nick7zmail поблагодарил:
VAD07 (Вт апр 10, 2018 7:10 pm)
Рейтинг: 1.37%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
VAD07
Сообщения: 65
Зарегистрирован: Ср май 31, 2017 10:54 pm
Благодарил (а): 28 раз
Поблагодарили: 5 раз

Re: [Виджет] состояния системы (процессора) с индикаторами (OHM)

Сообщение VAD07 » Вт апр 10, 2018 7:10 pm

Сегодня обязательно найду

Отправлено с моего ZC554KL через Tapatalk

viktor6
Сообщения: 93
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 49 раз
Поблагодарили: 4 раза

Re: [Виджет] состояния системы (процессора) с индикаторами (OHM)

Сообщение viktor6 » Чт окт 11, 2018 11:17 pm

nick7zmail писал(а):
Сб апр 07, 2018 5:25 pm
Ну коли тут делятся своими виджетами - поделюсь и своим))
111.jpg
На самом деле ничего особенного. Единственный интересный элемент - прогрессбар. Он может пригодиться кому-нить...
С процем и оперативой пока не придумал что делать, оставил пока так. Все данные получены модулем SystemInfo. Уже отписался автору, кстати, про неокруглённые значения. Я конечно могу их и сам округлить, но неплохо бы было, если бы это было в модуле. Можете поддержать эту идею https://connect.smartliving.ru/tasks/97.html.
Ну собственно и сам код виджета:
СпойлерПоказать

Код: Выделить всё

<h3 class="ui-bar ui-bar-b ui-corner-all" align="center">Параметры</h3>
<table align="center">
<tr align="center">
 <td><img src="/img/system/cpu.png"/></td>
 <td>%server.CpuLoad% %<br>%server.CpuTemp% °C</td>
 <td><img src="/img/system/ram.png"/></td>
 <td>%server.ramuse% %</td>
</tr>
</table>
<table align="center">
<tr>
 <td><img src="/img/system/hdd.png"/></td>
 <td style="width:100%;">
 <div class="meter">
  <span style="width:%server.disk1use%%"></span>
  <p>/</p>
 <p2>%server.disk1use%%</p2>
</div>
<div class="meter">
  <span style="width:%server.disk2use%%"></span>
  <p>/var/log</p>
 <p2>%server.disk2use%%</p2>
</div>
<div class="meter">
  <span style="width:%server.disk3use%%"></span>
  <p>/tmp</p>
 <p2>%server.disk3use%%</p2>
</div>
<div class="meter">
  <span style="width:%server.disk4use%%"></span>
  <p>/home/pi/blynk</p>
 <p2>%server.disk4use%%</p2>
</div>
<div class="meter">
  <span style="width:%server.disk5use%%"></span>
  <p>/var/www/html/debmes</p>
 <p2>%server.disk5use%%</p2>
</div>
 </td>
</tr>
<tr>
 <td><img src="/img/system/clock.png"/></td>
 <td>Uptime: %server.SystemUptime%</td>
</tr>
</table> 


<fieldset data-role="controlgroup" data-theme="b" data-type="horizontal" data-mini="true" align=right>
<input type="radio" name="radio-choice-power" id="reboot" value="reboot" onclick="$.get('/objects/?object=ThisComputer&op=m&m=reboot&');">
&nbsp;<label for="reboot" style="background: #616110; padding-left: 0px; padding-right: 0px;"><span class="ui-btn-icon-left ui-icon-refresh"></span></label>&nbsp;
<input type="radio" name="radio-choice-power" id="poweroff" value="poweroff" onclick="$.get('/objects/?object=ThisComputer&op=m&m=poweroff&');">
&nbsp;<label for="poweroff" style="background: #8a1111; padding-left: 0px; padding-right: 0px; margin-right: -18px;"><span class="ui-btn-icon-left ui-icon-power"></span></label>
 </fieldset>
 
<script>
 var bar = $('span');
var p = $('p');

var width = bar.attr('style');
width = width.replace("width:", "");
width = width.substr(0, width.length-1);


var interval;
var start = 0; 
var end = parseInt(width);
var current = start;

var countUp = function() {
  current++;
  if (current === end) {
    clearInterval(interval);
  }
};

interval = setInterval(countUp, (1000 / (end + 1)));

 </script>
 <style>
  div.meter {
  position: relative;
  background:#90a6b5;
  width: 100%;
  height: 25px;
  border: 1px solid #b0b0b0;
  margin-top: 5px;
  /* viewing purposes */
  -webkit-box-shadow: inset 0 3px 5px 0 #d3d0d0;
  -moz-box-shadow: inset 0 3px 5px 0 #d3d0d0;
  box-shadow: inset 0 3px 5px 0 #d3d0d0;
  -webkit-border-radius: 12.5px;
  -moz-border-radius: 12.5px;
  -ms-border-radius: 12.5px;
  -o-border-radius: 12.5px;
  border-radius: 12.5px;
}
div.meter span {
  display: block;
  height: 100%;
  animation: grower 1s linear;
  -moz-animation: grower 1s linear;
  -webkit-animation: grower 1s linear;
  -o-animation: grower 1s linear;
  position: relative;
  top: -1px;
  left: -1px;
  -webkit-border-radius: 12.5px;
  -moz-border-radius: 12.5px;
  -ms-border-radius: 12.5px;
  -o-border-radius: 12.5px;
  border-radius: 12.5px;
  -webkit-box-shadow: inset 0px 3px 5px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: inset 0px 3px 5px 0px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0px 3px 5px 0px rgba(0, 0, 0, 0.2);
  border: 1px solid #3c84ad;
  background: #6eb2d1;
  background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  background-image: -ms-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
  -webkit-background-size: 45px 45px;
  -moz-background-size: 45px 45px;
  -o-background-size: 45px 45px;
  background-size: 45px 45px;
}
div.meter span:before {
  content: '';
  display: block;
  width: 100%;
  height: 50%;
  position: relative;
  top: 50%;
  background: rgba(0, 0, 0, 0.03);
}
div.meter p {
  position: absolute;
  top: 0;
  margin: 0 10px;
  line-height: 25px;
  font-family: 'Helvetica';
  font-weight: bold;
  -webkit-font-smoothing: antialised;
  font-size: 15px;
  color: #333;
  text-shadow: 0 1px rgba(255, 255, 255, 0.6);
}
div.meter p2 {
  position: absolute;
  margin: 0 10px;
  top: 0;
  right:0;
  margin: 10 0px;
  line-height: 25px;
  font-family: 'Helvetica';
  font-weight: bold;
  -webkit-font-smoothing: antialised;
  font-size: 15px;
  color: #333;
  text-shadow: 0 1px rgba(255, 255, 255, 0.6);
}

@keyframes grower {
  0% {
    width: 0%;
  }
}

@-moz-keyframes grower {
  0% {
    width: 0%;
  }
}

@-webkit-keyframes grower {
  0% {
    width: 0%;
  }
}

@-o-keyframes grower {
  0% {
    width: 0%;
  }
}
  </style>
Жаль картинок нет. А без онных не красиво
СпойлерПоказать
55465.jpg
55465.jpg (43.88 КБ) 452 просмотра
Raspberry Pi3, с образа от Сергея 3.31
Аватара пользователя
nick7zmail
Сообщения: 5705
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 111 раз
Поблагодарили: 1390 раз

Re: [Виджет] состояния системы (процессора) с индикаторами (OHM)

Сообщение nick7zmail » Пт окт 12, 2018 6:44 am

Дак картинки то в инете любые найти можно. Хотите - свои могу выложить.
За это сообщение автора nick7zmail поблагодарил:
viktor6 (Пт окт 12, 2018 9:27 pm)
Рейтинг: 1.37%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
nightwind
Сообщения: 233
Зарегистрирован: Вс июн 26, 2016 4:42 pm
Откуда: Барановичи
Благодарил (а): 20 раз
Поблагодарили: 32 раза
Контактная информация:

Re: [Виджет] состояния системы (процессора) с индикаторами (OHM)

Сообщение nightwind » Пт окт 12, 2018 8:55 am

Изобрели велик с преобразованием времни))) как насчет такого $time = new DateTime('@секунды'); echo $time->format('H:i:s');
И вообще полезность виджета под вопросом. Кому из пользователей умного дома интересна загрузка процессора и памяти в реальном времени с графиками? Никому. (кроме админа. и то, только когда начнутся проблемы.) виджет несет мало пользы, а только нагружает этими измерениями систему. при все уважении к автору - годен только как свистоперделка, показать гостям как все круто.

Кому сильно интересно это все - есть простейшие функции

Код: Выделить всё

 
 $mem_total =  exec("free -m | grep Mem | awk '{print $2}'");
 $mem_usage  = exec("free -m | grep Mem | awk '{print $3}'");
 exec("uptime -p", $uptime);
 $bytes = disk_free_space("/mnt/rdata"); 
 $la =  sys_getloadavg();
 exec( "sensors | grep 'Core' | cut -b15-23", $asensors );
 
тыкнуть один раз - показало, и доволен. и не грузит каждые 3 секунды и без того убитые малины и апельсины. давайте не превращаться в node.js :D
для виндузятников конечно не пойдет, но в винде есть нескучный системный монитор, если конечно не надо, находясь в отпуске в занзибаре, срочно узнать обороты кулера)
За это сообщение автора nightwind поблагодарил:
Logrus (Вс окт 14, 2018 1:55 pm)
Рейтинг: 1.37%
viktor6
Сообщения: 93
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 49 раз
Поблагодарили: 4 раза

Re: [Виджет] состояния системы (процессора) с индикаторами (OHM)

Сообщение viktor6 » Пт окт 12, 2018 12:56 pm

nick7zmail писал(а):
Пт окт 12, 2018 6:44 am
Дак картинки то в инете любые найти можно. Хотите - свои могу выложить.
Если можно, поделитесь.
Raspberry Pi3, с образа от Сергея 3.31
Аватара пользователя
nick7zmail
Сообщения: 5705
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 111 раз
Поблагодарили: 1390 раз

Re: [Виджет] состояния системы (процессора) с индикаторами (OHM)

Сообщение nick7zmail » Вс окт 14, 2018 1:06 pm

viktor6 писал(а):
Пт окт 12, 2018 12:56 pm
Если можно, поделитесь.
Пожалуйста
Лежат у меня, если что, в img/system
Вложения
system.rar
(19.41 КБ) 13 скачиваний
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Logrus
Сообщения: 1111
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 223 раза
Поблагодарили: 168 раз

Re: [Виджет] состояния системы (процессора) с индикаторами (OHM)

Сообщение Logrus » Вс окт 14, 2018 1:57 pm

nightwind писал(а):
Пт окт 12, 2018 8:55 am
Изобрели велик с преобразованием времни))) как насчет такого $time = new DateTime('@секунды'); echo $time->format('H:i:s');
И вообще полезность виджета под вопросом. Кому из пользователей умного дома интересна загрузка процессора и памяти в реальном времени с графиками? Никому. (кроме админа. и то, только когда начнутся проблемы.) виджет несет мало пользы, а только нагружает этими измерениями систему. при все уважении к автору - годен только как свистоперделка, показать гостям как все круто.

Кому сильно интересно это все - есть простейшие функции

Код: Выделить всё

 
 $mem_total =  exec("free -m | grep Mem | awk '{print $2}'");
 $mem_usage  = exec("free -m | grep Mem | awk '{print $3}'");
 exec("uptime -p", $uptime);
 $bytes = disk_free_space("/mnt/rdata"); 
 $la =  sys_getloadavg();
 exec( "sensors | grep 'Core' | cut -b15-23", $asensors );
 
тыкнуть один раз - показало, и доволен. и не грузит каждые 3 секунды и без того убитые малины и апельсины. давайте не превращаться в node.js :D
для виндузятников конечно не пойдет, но в винде есть нескучный системный монитор, если конечно не надо, находясь в отпуске в занзибаре, срочно узнать обороты кулера)
я у себя участил опрос, аж до целых раз в пять минут
а на данных не только отображаются, но и алерты висят
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо - ТАМ =>
connect Raspberry Pi3, с образа от Сергея 3.31, PHP 7
Ответить