updated website style

This commit is contained in:
Sebastian Hildebrandt
2021-09-23 17:39:23 +02:00
parent b5546135af
commit a6e0a450d8
56 changed files with 19285 additions and 19165 deletions
+207 -205
View File
@@ -37,199 +37,200 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Battery</div>
<div class="text">
<p>In this section you will learn how to get battery information - if supported by system:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>Battery Data</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.battery(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>battery information</td>
</tr>
<tr>
<td></td>
<td>hasbattery</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>indicates presence of battery</td>
</tr>
<tr>
<td></td>
<td>cyclecount</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>numbers of recharges</td>
</tr>
<tr>
<td></td>
<td>ischarging</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>indicates if battery is charging</td>
</tr>
<tr>
<td></td>
<td>designedcapacity</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>designed capacity of battery (mWh)</td>
</tr>
<tr>
<td></td>
<td>maxcapacity</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>max capacity of battery (mWh)</td>
</tr>
<tr>
<td></td>
<td>currentcapacity</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>current capacity of battery (mWh)</td>
</tr>
<tr>
<td></td>
<td>capacityUnit</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>capacity unit (mWh if possible)</td>
</tr>
<tr>
<td></td>
<td>voltage</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>current voltage of battery (V)</td>
</tr>
<tr>
<td></td>
<td>percent</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>charging level in percent</td>
</tr>
<tr>
<td></td>
<td>timeremaining</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>minutes left (if discharging)</td>
</tr>
<tr>
<td></td>
<td>acconnected</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>AC connected</td>
</tr>
<tr>
<td></td>
<td>type</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>battery type</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>model</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>manufacturer</td>
</tr>
<tr>
<td></td>
<td>serial</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>battery serial</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Battery</div>
<div class="text">
<p>In this section you will learn how to get battery information - if supported by system:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>Battery Data</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.battery(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>battery information</td>
</tr>
<tr>
<td></td>
<td>hasbattery</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>indicates presence of battery</td>
</tr>
<tr>
<td></td>
<td>cyclecount</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>numbers of recharges</td>
</tr>
<tr>
<td></td>
<td>ischarging</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>indicates if battery is charging</td>
</tr>
<tr>
<td></td>
<td>designedcapacity</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>designed capacity of battery (mWh)</td>
</tr>
<tr>
<td></td>
<td>maxcapacity</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>max capacity of battery (mWh)</td>
</tr>
<tr>
<td></td>
<td>currentcapacity</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>current capacity of battery (mWh)</td>
</tr>
<tr>
<td></td>
<td>capacityUnit</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>capacity unit (mWh if possible)</td>
</tr>
<tr>
<td></td>
<td>voltage</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>current voltage of battery (V)</td>
</tr>
<tr>
<td></td>
<td>percent</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>charging level in percent</td>
</tr>
<tr>
<td></td>
<td>timeremaining</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>minutes left (if discharging)</td>
</tr>
<tr>
<td></td>
<td>acconnected</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>AC connected</td>
</tr>
<tr>
<td></td>
<td>type</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>battery type</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>model</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>manufacturer</td>
</tr>
<tr>
<td></td>
<td>serial</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>battery serial</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.battery().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{
@@ -249,24 +250,25 @@ si.battery().then(data => console.log(data));</code></pre class="example">
manufacturer: 'Apple',
serial: 'F9Y19860Y9AH9XBAX'
}</pre>
</tr>
</tbody>
</table>
<h2>Known issues</h2>
<h4>Windows Battery</h4>
</tr>
</tbody>
</table>
<h2>Known issues</h2>
<h4>Windows Battery</h4>
<p><span class="code">wmic</span> - which is used to determine temperature and battery sometimes needs to be run with admin
privileges. So if you do not get any values, try to run it again with according privileges. If you still do not get any
values, your system might not support this feature.</p>
<p><span class="code">wmic</span> - which is used to determine temperature and battery sometimes needs to be run with admin
privileges. So if you do not get any values, try to run it again with according privileges. If you still do not get any
values, your system might not support this feature.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -308,4 +310,4 @@ si.battery().then(data => console.log(data));</code></pre class="example">
</script>
</body>
</html>
</html>
+41 -39
View File
@@ -33,49 +33,51 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader left">
<div class="title">Contributors</div>
<div class="text">
<p>Many thanks to all contributors. Really appreciate your support!</p>
<ul>
<li>Guillaume Legrain <a href="https://github.com/glegrain" rel="nofollow">glegrain</a></li>
<li>Riccardo Novaglia <a href="https://github.com/richy24" rel="nofollow">richy24</a></li>
<li>Quentin Busuttil <a href="https://github.com/Buzut" rel="nofollow">Buzut</a></li>
<li>lapsio <a href="https://github.com/lapsio" rel="nofollow">lapsio</a></li>
<li>csy <a href="https://github.com/csy1983" rel="nofollow">csy</a></li>
<li>Tiago Roldão <a href="https://github.com/tiagoroldao" rel="nofollow">tiagoroldao</a></li>
<li>dragonjet <a href="https://github.com/dragonjet" rel="nofollow">dragonjet</a></li>
<li>Adam Reis <a href="https://github.com/adamreisnz" rel="nofollow">adamreisnz</a></li>
<li>Jimi M <a href="https://github.com/ItsJimi" rel="nofollow">ItsJimi</a></li>
<li>Git² <a href="https://github.com/GitSquared" rel="nofollow">GitSquared</a></li>
<li>weiyin <a href="https://github.com/weiyin" rel="nofollow">weiyin</a></li>
<li>Jorai Rijsdijk <a href="https://github.com/Erackron" rel="nofollow">Erackron</a></li>
<li>Rasmus Porsager <a href="https://github.com/porsager" rel="nofollow">porsager</a></li>
<li>Nathan Patten <a href="https://github.com/nrpatten" rel="nofollow">nrpatten</a></li>
<li>Juan Campuzano <a href="https://github.com/juancampuzano" rel="nofollow">juancampuzano</a></li>
<li>Ricardo Polo <a href="https://github.com/ricardopolo" rel="nofollow">ricardopolo</a></li>
<li>Miłosz Dźwigała <a href="https://github.com/mily20001" rel="nofollow">mily20001</a></li>
<li>cconley717 <a href="https://github.com/cconley717" rel="nofollow">cconley717</a></li>
</ul>
<p>OSX Temperature: credits here are going to:</p>
<ul>
<li>Frank Stock <a href="https://github.com/pcafstockf" rel="nofollow">pcafstockf</a> for his work on <a href="https://github.com/pcafstockf/smc-reader" rel="nofollow">smc-reader</a></li>
</ul>
<p>Many thanks also to all who provided help or filed an issue. This really helps improving this package!</p>
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader left">
<div class="title">Contributors</div>
<div class="text">
<p>Many thanks to all contributors. Really appreciate your support!</p>
<ul>
<li>Guillaume Legrain <a href="https://github.com/glegrain" rel="nofollow">glegrain</a></li>
<li>Riccardo Novaglia <a href="https://github.com/richy24" rel="nofollow">richy24</a></li>
<li>Quentin Busuttil <a href="https://github.com/Buzut" rel="nofollow">Buzut</a></li>
<li>lapsio <a href="https://github.com/lapsio" rel="nofollow">lapsio</a></li>
<li>csy <a href="https://github.com/csy1983" rel="nofollow">csy</a></li>
<li>Tiago Roldão <a href="https://github.com/tiagoroldao" rel="nofollow">tiagoroldao</a></li>
<li>dragonjet <a href="https://github.com/dragonjet" rel="nofollow">dragonjet</a></li>
<li>Adam Reis <a href="https://github.com/adamreisnz" rel="nofollow">adamreisnz</a></li>
<li>Jimi M <a href="https://github.com/ItsJimi" rel="nofollow">ItsJimi</a></li>
<li>Git² <a href="https://github.com/GitSquared" rel="nofollow">GitSquared</a></li>
<li>weiyin <a href="https://github.com/weiyin" rel="nofollow">weiyin</a></li>
<li>Jorai Rijsdijk <a href="https://github.com/Erackron" rel="nofollow">Erackron</a></li>
<li>Rasmus Porsager <a href="https://github.com/porsager" rel="nofollow">porsager</a></li>
<li>Nathan Patten <a href="https://github.com/nrpatten" rel="nofollow">nrpatten</a></li>
<li>Juan Campuzano <a href="https://github.com/juancampuzano" rel="nofollow">juancampuzano</a></li>
<li>Ricardo Polo <a href="https://github.com/ricardopolo" rel="nofollow">ricardopolo</a></li>
<li>Miłosz Dźwigała <a href="https://github.com/mily20001" rel="nofollow">mily20001</a></li>
<li>cconley717 <a href="https://github.com/cconley717" rel="nofollow">cconley717</a></li>
</ul>
<p>OSX Temperature: credits here are going to:</p>
<ul>
<li>Frank Stock <a href="https://github.com/pcafstockf" rel="nofollow">pcafstockf</a> for his work on <a href="https://github.com/pcafstockf/smc-reader" rel="nofollow">smc-reader</a></li>
</ul>
<p>Many thanks also to all who provided help or filed an issue. This really helps improving this package!</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -117,4 +119,4 @@
</script>
</body>
</html>
</html>
+35 -33
View File
@@ -33,44 +33,46 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Copyright Information</div>
<div class="text">&copy; 2021 Sebstian Hildebrandt, <a href="https://github.com/sebhildebrandt/"> <i class="fab fa-github"></i> sebhildebrandt</a>, <a href="https://www.plus-innovations.com"><i class="fal fa-globe"></i> +innovations</a></div>
</div>
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="row">
<div class="col-12 sectionheader">
<div class="title">License <img src="https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square" alt="MIT license" /></div>
<div class="text">
<p>Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the &quot;Software&quot;), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.</p>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Copyright Information</div>
<div class="text">&copy; 2021 Sebstian Hildebrandt, <a href="https://github.com/sebhildebrandt/"> <i class="fab fa-github"></i> sebhildebrandt</a>, <a href="https://www.plus-innovations.com"><i class="fal fa-globe"></i> +innovations</a></div>
</div>
</div>
<div class="row">
<div class="col-12 sectionheader">
<div class="title">License <img src="https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square" alt="MIT license" /></div>
<div class="text">
<p>Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the &quot;Software&quot;), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -112,4 +114,4 @@
</script>
</body>
</html>
</html>
+468 -466
View File
@@ -37,279 +37,280 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">CPU</div>
<div class="text">
<p>In this section you will learn how to get CPU data including current speed and temperature:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>CPU Data</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.cpu(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>CPU information object</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'Intel(R)'</td>
</tr>
<tr>
<td></td>
<td>brand</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'Core(TM)2 Duo'</td>
</tr>
<tr>
<td></td>
<td>speed</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>in GHz e.g. '3.40'</td>
</tr>
<tr>
<td></td>
<td>speedmin</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>in GHz e.g. '0.80'</td>
</tr>
<tr>
<td></td>
<td>speedmax</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>in GHz e.g. '3.90'</td>
</tr>
<tr>
<td></td>
<td>governor</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>e.g. 'powersave'</td>
</tr>
<tr>
<td></td>
<td>cores</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td># cores</td>
</tr>
<tr>
<td></td>
<td>physicalCores</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td># physical cores</td>
</tr>
<tr>
<td></td>
<td>efficiencyCores</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td># efficiency cores (ARM only)</td>
</tr>
<tr>
<td></td>
<td>performanceCores</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td># performance cores (ARM only)</td>
</tr>
<tr>
<td></td>
<td>processors</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td># processors</td>
</tr>
<tr>
<td></td>
<td>socket</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>socket type e.g. &quot;LGA1356&quot;</td>
</tr>
<tr>
<td></td>
<td>vendor</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>vendor ID</td>
</tr>
<tr>
<td></td>
<td>family</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>processor family</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>processor model</td>
</tr>
<tr>
<td></td>
<td>stepping</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>processor stepping</td>
</tr>
<tr>
<td></td>
<td>revision</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>revision</td>
</tr>
<tr>
<td></td>
<td>voltage</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td>voltage</td>
</tr>
<tr>
<td></td>
<td>cache</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>cache in bytes (object)</td>
</tr>
<tr>
<td></td>
<td>cache.l1d</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L1D (data) size</td>
</tr>
<tr>
<td></td>
<td>cache.l1i</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L1I (instruction) size</td>
</tr>
<tr>
<td></td>
<td>cache.l2</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L2 size</td>
</tr>
<tr>
<td></td>
<td>cache.l3</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L3 size</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">CPU</div>
<div class="text">
<p>In this section you will learn how to get CPU data including current speed and temperature:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>CPU Data</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.cpu(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>CPU information object</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'Intel(R)'</td>
</tr>
<tr>
<td></td>
<td>brand</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'Core(TM)2 Duo'</td>
</tr>
<tr>
<td></td>
<td>speed</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>in GHz e.g. '3.40'</td>
</tr>
<tr>
<td></td>
<td>speedmin</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>in GHz e.g. '0.80'</td>
</tr>
<tr>
<td></td>
<td>speedmax</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>in GHz e.g. '3.90'</td>
</tr>
<tr>
<td></td>
<td>governor</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>e.g. 'powersave'</td>
</tr>
<tr>
<td></td>
<td>cores</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td># cores</td>
</tr>
<tr>
<td></td>
<td>physicalCores</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td># physical cores</td>
</tr>
<tr>
<td></td>
<td>efficiencyCores</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td># efficiency cores (ARM only)</td>
</tr>
<tr>
<td></td>
<td>performanceCores</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td># performance cores (ARM only)</td>
</tr>
<tr>
<td></td>
<td>processors</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td># processors</td>
</tr>
<tr>
<td></td>
<td>socket</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>socket type e.g. &quot;LGA1356&quot;</td>
</tr>
<tr>
<td></td>
<td>vendor</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>vendor ID</td>
</tr>
<tr>
<td></td>
<td>family</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>processor family</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>processor model</td>
</tr>
<tr>
<td></td>
<td>stepping</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>processor stepping</td>
</tr>
<tr>
<td></td>
<td>revision</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>revision</td>
</tr>
<tr>
<td></td>
<td>voltage</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td>voltage</td>
</tr>
<tr>
<td></td>
<td>cache</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>cache in bytes (object)</td>
</tr>
<tr>
<td></td>
<td>cache.l1d</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L1D (data) size</td>
</tr>
<tr>
<td></td>
<td>cache.l1i</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L1I (instruction) size</td>
</tr>
<tr>
<td></td>
<td>cache.l2</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L2 size</td>
</tr>
<tr>
<td></td>
<td>cache.l3</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L3 size</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.cpu().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{
@@ -332,142 +333,142 @@ si.cpu().then(data => console.log(data));</code></pre class="example">
cache: { l1d: 262144, l1i: 262144, l2: 2, l3: 16 },
flags: 'fpu vme de pse ...'
}</pre>
</tr>
<tr>
<td>si.cpuFlags(cb)</td>
<td>: string</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>CPU flags</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
</tr>
<tr>
<td>si.cpuFlags(cb)</td>
<td>: string</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>CPU flags</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.cpuFlags().then(data => console.log(data));</code></pre class="example">
<pre class="example">
fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
</pre>
</tr>
<tr>
<td>si.cpuCache(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>CPU cache sizes object</td>
</tr>
<tr>
<td></td>
<td>l1d</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L1D size</td>
</tr>
<tr>
<td></td>
<td>l1i</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L1I size</td>
</tr>
<tr>
<td></td>
<td>l2</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L2 size</td>
</tr>
<tr>
<td></td>
<td>l3</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L3 size</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
</tr>
<tr>
<td>si.cpuCache(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>CPU cache sizes object</td>
</tr>
<tr>
<td></td>
<td>l1d</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L1D size</td>
</tr>
<tr>
<td></td>
<td>l1i</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L1I size</td>
</tr>
<tr>
<td></td>
<td>l2</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L2 size</td>
</tr>
<tr>
<td></td>
<td>l3</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>L3 size</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.cpuCache().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{ l1d: 262144, l1i: 262144, l2: 2, l3: 16 }
</pre>
</tr>
<tr>
<td>si.cpuCurrentspeed(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>current CPU speed (GHz) object</td>
</tr>
<tr>
<td></td>
<td>avg</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>avg CPU speed (all cores)</td>
</tr>
<tr>
<td></td>
<td>min</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>min CPU speed (all cores)</td>
</tr>
<tr>
<td></td>
<td>max</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>max CPU speed (all cores)</td>
</tr>
<tr>
<td></td>
<td>cores</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>CPU speed per core (array)</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
</tr>
<tr>
<td>si.cpuCurrentspeed(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>current CPU speed (GHz) object</td>
</tr>
<tr>
<td></td>
<td>avg</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>avg CPU speed (all cores)</td>
</tr>
<tr>
<td></td>
<td>min</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>min CPU speed (all cores)</td>
</tr>
<tr>
<td></td>
<td>max</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>max CPU speed (all cores)</td>
</tr>
<tr>
<td></td>
<td>cores</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>CPU speed per core (array)</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.cpuCurrentspeed().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{
@@ -482,84 +483,85 @@ si.cpuCurrentspeed().then(data => console.log(data));</code></pre class="example
]
}
</pre>
</tr>
<tr>
<td>si.cpuTemperature(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X*</td>
<td>X</td>
<td></td>
<td>CPU temperature (if supported)</td>
</tr>
<tr>
<td></td>
<td>main</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>main temperature (avg)</td>
</tr>
<tr>
<td></td>
<td>cores</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>array of temperatures</td>
</tr>
<tr>
<td></td>
<td>max</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>max temperature</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
</tr>
<tr>
<td>si.cpuTemperature(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X*</td>
<td>X</td>
<td></td>
<td>CPU temperature (if supported)</td>
</tr>
<tr>
<td></td>
<td>main</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>main temperature (avg)</td>
</tr>
<tr>
<td></td>
<td>cores</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>array of temperatures</td>
</tr>
<tr>
<td></td>
<td>max</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>max temperature</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.cpuTemperature().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{ main: 42, cores: [], max: 42 }
</pre>
</tr>
</tbody>
</table>
<h2>Known issues</h2>
<h4>macOS - Temperature</h4>
</tr>
</tbody>
</table>
<h2>Known issues</h2>
<h4>macOS - Temperature</h4>
<p>To be able to measure temperature on macOS I created a little additional package. Due to some difficulties in NPM with <span class="code">optionalDependencies</span>
I unfortunately was getting unexpected warnings on other platforms. So I decided to drop this optional dependency for macOS - so by default,
you will not get correct values.</p>
<p>To be able to measure temperature on macOS I created a little additional package. Due to some difficulties in NPM with <span class="code">optionalDependencies</span>
I unfortunately was getting unexpected warnings on other platforms. So I decided to drop this optional dependency for macOS - so by default,
you will not get correct values.</p>
<p>But if you need to detect macOS temperature just run the following additional installation command:</p>
<p>But if you need to detect macOS temperature just run the following additional installation command:</p>
<pre>$ npm install osx-temperature-sensor --save</pre>
<p>systeminformation will then detect this additional library and return the temperature when calling systeminformations standard function <span class="code">cpuTemperature()</span></p>
<pre>$ npm install osx-temperature-sensor --save</pre>
<p>systeminformation will then detect this additional library and return the temperature when calling systeminformations standard function <span class="code">cpuTemperature()</span></p>
<h4>Windows Temperature</h4>
<h4>Windows Temperature</h4>
<p><span class="code">wmic</span> - which is used to determine battery sometimes needs to be run with admin
privileges. So if you do not get any values, try to run it again with according privileges. If you still do not get any
values, your system might not support this feature. </p>
<p><span class="code">wmic</span> - which is used to determine battery sometimes needs to be run with admin
privileges. So if you do not get any values, try to run it again with according privileges. If you still do not get any
values, your system might not support this feature. </p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -601,4 +603,4 @@ si.cpuTemperature().then(data => console.log(data));</code></pre class="example"
</script>
</body>
</html>
</html>
+1006 -1004
View File
File diff suppressed because it is too large Load Diff
+678 -676
View File
File diff suppressed because it is too large Load Diff
+206 -204
View File
@@ -37,128 +37,129 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">General</div>
<div class="text">
<p>In this section you will learn how to get general systeminformation data. We will also cover the "get" and "get-all" functions to get partial or all data with one single call.</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>Lib-Version and Time/Timezone</h2>
<p>The first two functions just give back systeminformation library version number and time/timezone information of your machine. These are the only two functions not returning a promise (so they are not async functions):</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">General</div>
<div class="text">
<p>In this section you will learn how to get general systeminformation data. We will also cover the "get" and "get-all" functions to get partial or all data with one single call.</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>Lib-Version and Time/Timezone</h2>
<p>The first two functions just give back systeminformation library version number and time/timezone information of your machine. These are the only two functions not returning a promise (so they are not async functions):</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.version()</td>
<td>: string</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>lib version (no callback/promise)</td>
</tr>
<tr>
<td>si.time()</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>object (no callback/promise) with:</td>
</tr>
<tr>
<td></td>
<td>current</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>local (server) time</td>
</tr>
<tr>
<td></td>
<td>uptime</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>uptime in number of seconds</td>
</tr>
<tr>
<td></td>
<td>timezone</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>e.g. GMT+0200</td>
</tr>
<tr>
<td></td>
<td>timezoneName</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>e.g. CEST</td>
</tr>
</tbody>
</table>
<p>Keep in mind, that there is another function <span class="code">si.versions()</span> that will return versions of other system libraries and software packages</p>
<h2>Get Defined Result Object</h2>
<p>Normally you would call each of the functions (where you want to get detailed system information) seperately. The docs pages contain a full reference (with examples) for each available function. But there is also another really handy way to get a self-defined result object in one single call:</p>
<p>The <span class="code">si.get()</span> function is an alternative, where you can obtain several system information data in one call. You can define a json object which represents the data structure you are expecting and the <span class="code">si.get()</span> call will then return all of the requested data in a single result object</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.version()</td>
<td>: string</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>lib version (no callback/promise)</td>
</tr>
<tr>
<td>si.time()</td>
<td>si.get(valueObject,cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>object (no callback/promise) with:</td>
<td>get partial data at once<br>Specify return object for all<br>values that should be returned:</td>
</tr>
<tr>
<tr class="example">
<td></td>
<td>current</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>local (server) time</td>
</tr>
<tr>
<td></td>
<td>uptime</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>uptime in number of seconds</td>
</tr>
<tr>
<td></td>
<td>timezone</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>e.g. GMT+0200</td>
</tr>
<tr>
<td></td>
<td>timezoneName</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>e.g. CEST</td>
</tr>
</tbody>
</table>
<p>Keep in mind, that there is another function <span class="code">si.versions()</span> that will return versions of other system libraries and software packages</p>
<h2>Get Defined Result Object</h2>
<p>Normally you would call each of the functions (where you want to get detailed system information) seperately. The docs pages contain a full reference (with examples) for each available function. But there is also another really handy way to get a self-defined result object in one single call:</p>
<p>The <span class="code">si.get()</span> function is an alternative, where you can obtain several system information data in one call. You can define a json object which represents the data structure you are expecting and the <span class="code">si.get()</span> call will then return all of the requested data in a single result object</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tr>
<td>si.get(valueObject,cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>get partial data at once<br>Specify return object for all<br>values that should be returned:</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
// define all values, you want to get back
valueObject = {
@@ -199,40 +200,40 @@ si.get(valueObject).then(data => console.log(data));</code></pre class="example"
}
}
</pre>
</tr>
</tbody>
</table>
<p>The key names of the <span class="code">valueObject</span> must be exactly the same as the representing function within systeminformation.</p>
<h3>Providing parameters to the get() function</h3>
<p>Now you can also provide parameters to get() functions (where needed). Just pass the parameters in parentheses right after the wanted keys: have a look at the folloging example:</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tr>
<td>si.get(valueObject,cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>example with parameters:<br>value in paretheses goes as parameter<br>to the given function:</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
</tbody>
</table>
<p>The key names of the <span class="code">valueObject</span> must be exactly the same as the representing function within systeminformation.</p>
<h3>Providing parameters to the get() function</h3>
<p>Now you can also provide parameters to get() functions (where needed). Just pass the parameters in parentheses right after the wanted keys: have a look at the folloging example:</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tr>
<td>si.get(valueObject,cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>example with parameters:<br>value in paretheses goes as parameter<br>to the given function:</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
// define all values, you want to get back
// here the value in paretheses goes as a parameter
@@ -254,69 +255,70 @@ si.get(valueObject).then(data => console.log(data));</code></pre class="example"
}
}
</pre>
</tr>
</tbody>
</table>
<h2>Get All At Once</h2>
<p>The following three functions <span class="code">si.getStaticData()</span>, <span class="code">si.getDynamicData()</span> and <span class="code">si.getAllData()</span> will return most of the available data in a single result object:</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.getStaticData(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>all static data at once</td>
</tr>
<tr>
<td>si.getDynamicData(srv,iface,cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>all dynamic data at once<br>Specify services and interfaces to monitor<br>Defaults to first external network interface<br>Pass "*" for ALL services (linux/win only)<br>Pass "*" for ALL network interfaces</td>
</tr>
<tr>
<td>si.getAllData(srv,iface,cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>all data at once<br>Specify services and interfaces to monitor<br>Defaults to first external network interface<br>Pass "*" for ALL services (linux/win only)<br>Pass "*" for ALL network interfaces</td>
</tr>
</tbody>
</table>
<p><strong>Static data</strong> is all hardware related (or more or less constant) data like system, baseboard, bios, OS, versions, cpu, network interfces, memory and disk layout</p>
<p><strong>Dynamic data</strong> will return user, cpu-speed, load, processes, services, temperature, file system, network and disk stats, ... </p>
<p>As not all funtions are supported in each operating system the result object might be different in each OS.</p>
<p><strong>ATTENTION</strong>: Use this only if you really need ALL information. Especially on Windows this can take really long (up to 20 seconds) because the underlying <span class="code">WMIC</span> command is very slow when using it the first time.</p>
</tbody>
</table>
<h2>Get All At Once</h2>
<p>The following three functions <span class="code">si.getStaticData()</span>, <span class="code">si.getDynamicData()</span> and <span class="code">si.getAllData()</span> will return most of the available data in a single result object:</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.getStaticData(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>all static data at once</td>
</tr>
<tr>
<td>si.getDynamicData(srv,iface,cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>all dynamic data at once<br>Specify services and interfaces to monitor<br>Defaults to first external network interface<br>Pass "*" for ALL services (linux/win only)<br>Pass "*" for ALL network interfaces</td>
</tr>
<tr>
<td>si.getAllData(srv,iface,cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>all data at once<br>Specify services and interfaces to monitor<br>Defaults to first external network interface<br>Pass "*" for ALL services (linux/win only)<br>Pass "*" for ALL network interfaces</td>
</tr>
</tbody>
</table>
<p><strong>Static data</strong> is all hardware related (or more or less constant) data like system, baseboard, bios, OS, versions, cpu, network interfces, memory and disk layout</p>
<p><strong>Dynamic data</strong> will return user, cpu-speed, load, processes, services, temperature, file system, network and disk stats, ... </p>
<p>As not all funtions are supported in each operating system the result object might be different in each OS.</p>
<p><strong>ATTENTION</strong>: Use this only if you really need ALL information. Especially on Windows this can take really long (up to 20 seconds) because the underlying <span class="code">WMIC</span> command is very slow when using it the first time.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -358,4 +360,4 @@ si.get(valueObject).then(data => console.log(data));</code></pre class="example"
</script>
</body>
</html>
</html>
+50 -48
View File
@@ -37,50 +37,51 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Quick Start</div>
<div class="text">
<p>Lightweight collection of 40+ functions to retrieve detailed hardware, system and OS information.</p>
<ul>
<li>simple to use</li>
<li>get detailed information about system, cpu, baseboard, battery, memory, disks/filesystem, network, docker, software, services and processes</li>
<li>supports Linux, macOS, partial Windows, FreeBSD, OpenBSD, NetBSD and SunOS support</li>
<li>no npm dependencies (for production)</li>
</ul>
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Quick Start</div>
<div class="text">
<p>Lightweight collection of 40+ functions to retrieve detailed hardware, system and OS information.</p>
<ul>
<li>simple to use</li>
<li>get detailed information about system, cpu, baseboard, battery, memory, disks/filesystem, network, docker, software, services and processes</li>
<li>supports Linux, macOS, partial Windows, FreeBSD, OpenBSD, NetBSD and SunOS support</li>
<li>no npm dependencies (for production)</li>
</ul>
<h2>Core Concept</h2>
<p><a href="https://nodejs.org/en/" rel="nofollow">Node.js</a> comes with some basic OS information, but I always wanted a little more. So I came up to write this
little library. This library is still work in progress. It requires node.js version 4.0 and above.</p>
<h2>Core Concept</h2>
<p><a href="https://nodejs.org/en/" rel="nofollow">Node.js</a> comes with some basic OS information, but I always wanted a little more. So I came up to write this
little library. This library is still work in progress. It requires node.js version 4.0 and above.</p>
<p>I was able to test it on several Debian, Raspbian, Ubuntu distributions as well as macOS (Mavericks, Yosemite, El Captain, Sierra, High Sierra, Mojave) and some Windows 7, Windows 10, FreeBSD, OpenBSD, NetBSD and SunOS machines.
Not all functions are supported on all operating systems. Have a look at the function reference in the docs to get further details.</p>
<p>If you have comments, suggestions &amp; reports, please feel free to contact me on <a href="https://github.com/sebhildebrandt/systeminformation/issues">github</a>!</p>
<p>I also created a nice little command line tool called <a href="https://github.com/sebhildebrandt/mmon" rel="nofollow">mmon</a> (micro-monitor) for Linux and macOS, also available via <a href="https://github.com/sebhildebrandt/mmon" rel="nofollow">github</a> and <a href="https://npmjs.org/package/mmon" rel="nofollow">npm</a></p>
<p>I was able to test it on several Debian, Raspbian, Ubuntu distributions as well as macOS (Mavericks, Yosemite, El Captain, Sierra, High Sierra, Mojave) and some Windows 7, Windows 10, FreeBSD, OpenBSD, NetBSD and SunOS machines.
Not all functions are supported on all operating systems. Have a look at the function reference in the docs to get further details.</p>
<p>If you have comments, suggestions &amp; reports, please feel free to contact me on <a href="https://github.com/sebhildebrandt/systeminformation/issues">github</a>!</p>
<p>I also created a nice little command line tool called <a href="https://github.com/sebhildebrandt/mmon" rel="nofollow">mmon</a> (micro-monitor) for Linux and macOS, also available via <a href="https://github.com/sebhildebrandt/mmon" rel="nofollow">github</a> and <a href="https://npmjs.org/package/mmon" rel="nofollow">npm</a></p>
<h3>Attention:</h3>
<p>This library is supposed to be used as a <a href="https://nodejs.org/en/" rel="nofollow">node.js</a> backend/server-side library and will definilely not work within a browser.</p>
<h3>Attention:</h3>
<p>This library is supposed to be used as a <a href="https://nodejs.org/en/" rel="nofollow">node.js</a> backend/server-side library and will definilely not work within a browser.</p>
<h2>Installation (old version 4)</h2>
<pre>$ npm install systeminformation@4 —-save</pre>
<h2>Usage</h2>
<p>All functions (except <span class="code">version</span> and <span class="code">time</span>) are implemented as asynchronous functions. Here a small example how to use them:</p>
<pre><code class="js">const si = require('systeminformation');
<h2>Installation (old version 4)</h2>
<pre>$ npm install systeminformation@4 —-save</pre>
<h2>Usage</h2>
<p>All functions (except <span class="code">version</span> and <span class="code">time</span>) are implemented as asynchronous functions. Here a small example how to use them:</p>
<pre><code class="js">const si = require('systeminformation');
// promises style - new since version 3
si.cpu()
.then(data => console.log(data))
.catch(error => console.error(error));
</code></pre>
<h2>Callback, Promises, Async Await</h2>
<p>Remember: all functions (except <span class="code">version</span> and <span class="code">time</span>) are implemented as asynchronous functions! There are now three ways to consume them:</p>
<p><strong>Callback Style</strong></p>
<pre><code class="js">const si = require('systeminformation');
<h2>Callback, Promises, Async Await</h2>
<p>Remember: all functions (except <span class="code">version</span> and <span class="code">time</span>) are implemented as asynchronous functions! There are now three ways to consume them:</p>
<p><strong>Callback Style</strong></p>
<pre><code class="js">const si = require('systeminformation');
si.cpu(function(data) {
console.log('CPU Information:');
@@ -91,12 +92,12 @@ si.cpu(function(data) {
console.log('- physical cores: ' + data.physicalCores);
console.log('...');
})</code></pre><br>
<p><strong>Promise Style</strong></p>
<p>Promises style is new since version 3.0.
<p></p>
<p><strong>Promise Style</strong></p>
<p>Promises style is new since version 3.0.
<p></p>
<p>When omitting callback parameter (cb), then you can use all function in a promise oriented way. All functions (exept of <span class="code">version</span> and <span class="code">time</span>) are returning a promise, that you can consume:</p>
<pre><code class="js">const si = require('systeminformation');
<p>When omitting callback parameter (cb), then you can use all function in a promise oriented way. All functions (exept of <span class="code">version</span> and <span class="code">time</span>) are returning a promise, that you can consume:</p>
<pre><code class="js">const si = require('systeminformation');
si.cpu()
.then(data => {
@@ -109,9 +110,9 @@ si.cpu()
console.log('...');
})
.catch(error => console.error(error));</code></pre><br>
<p><strong>Async/Await Style</strong></p>
<p>Since node v7.6 you can also use the async / await pattern. The above example would then look like this:</p>
<pre><code class="js">const si = require('systeminformation');
<p><strong>Async/Await Style</strong></p>
<p>Since node v7.6 you can also use the async / await pattern. The above example would then look like this:</p>
<pre><code class="js">const si = require('systeminformation');
async function cpuData() {
try {
@@ -127,16 +128,17 @@ async function cpuData() {
console.log(e)
}
}</code></pre><br>
<p><strong>Issues</strong></p>
<p>If you discover some empty or incorrect values, please be sure to first have a look at the <a href="issues.html">Known issues</a> section.</p>
<p><strong>Issues</strong></p>
<p>If you discover some empty or incorrect values, please be sure to first have a look at the <a href="issues.html">Known issues</a> section.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -178,4 +180,4 @@ async function cpuData() {
</script>
</body>
</html>
</html>
+442 -440
View File
@@ -37,439 +37,440 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Graphics</div>
<div class="text">
<p>In this section you will learn how to get information about installed graphics conrollers and connected displays:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>Graphics Controllers, Displays</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.graphics(cb)</td>
<td>{...}</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>arrays of graphics controllers and displays</td>
</tr>
<tr>
<td></td>
<td>controllers[]</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>graphics controllers array</td>
</tr>
<tr>
<td></td>
<td>...[0].model</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>graphics controller model</td>
</tr>
<tr>
<td></td>
<td>...[0].vendor</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. ATI</td>
</tr>
<tr>
<td></td>
<td>...[0].bus</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>on which bus (e.g. PCIe)</td>
</tr>
<tr>
<td></td>
<td>...[0].vram</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>VRAM size (in MB)</td>
</tr>
<tr>
<td></td>
<td>...[0].vramDynamic</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>true if dynamicly allocated ram</td>
</tr>
<tr>
<td></td>
<td>...[0].subDeviceId</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - sub device ID</td>
</tr>
<tr>
<td></td>
<td>...[0].driverVersion</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - driver version</td>
</tr>
<tr>
<td></td>
<td>...[0].name</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - name</td>
</tr>
<tr>
<td></td>
<td>...[0].pciBus</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - PCI bus ID</td>
</tr>
<tr>
<td></td>
<td>...[0].fanSpeed</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - fan speed</td>
</tr>
<tr>
<td></td>
<td>...[0].memory total</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - memory total</td>
</tr>
<tr>
<td></td>
<td>...[0].memoryUsed</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - memory used</td>
</tr>
<tr>
<td></td>
<td>...[0].memoryFree</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - memory free</td>
</tr>
<tr>
<td></td>
<td>...[0].utilizationGpu</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - utilization GPU</td>
</tr>
<tr>
<td></td>
<td>...[0].utilizationMemory</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - utilization memory</td>
</tr>
<tr>
<td></td>
<td>...[0].temperatureGpu</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - temperature GPU</td>
</tr>
<tr>
<td></td>
<td>...[0].temperatureMemory</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - temperature memory</td>
</tr>
<tr>
<td></td>
<td>...[0].powerDraw</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - power draw</td>
</tr>
<tr>
<td></td>
<td>...[0].powerLimit</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - power limit</td>
</tr>
<tr>
<td></td>
<td>...[0].clockCore</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - clock core</td>
</tr>
<tr>
<td></td>
<td>...[0].clockMemory</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - clock memory</td>
</tr>
<tr>
<td></td>
<td>displays[]</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>monitor/display array</td>
</tr>
<tr>
<td></td>
<td>...[0].vendor</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>monitor/display vendor</td>
</tr>
<tr>
<td></td>
<td>...[0].deviceName</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>e.g. \\.\DISPLAY1</td>
</tr>
<tr>
<td></td>
<td>...[0].model</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>monitor/display model</td>
</tr>
<tr>
<td></td>
<td>...[0].main</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>true if main monitor</td>
</tr>
<tr>
<td></td>
<td>...[0].builtin</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>true if built in monitor</td>
</tr>
<tr>
<td></td>
<td>...[0].connection</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. DisplayPort, HDMI</td>
</tr>
<tr>
<td></td>
<td>...[0].sizex</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>size in mm horizontal</td>
</tr>
<tr>
<td></td>
<td>...[0].sizey</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>size in mm vertical</td>
</tr>
<tr>
<td></td>
<td>...[0].pixeldepth</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>color depth in bits</td>
</tr>
<tr>
<td></td>
<td>...[0].resolutionx</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>pixel horizontal</td>
</tr>
<tr>
<td></td>
<td>...[0].resolutiony</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>pixel vertical</td>
</tr>
<tr>
<td></td>
<td>...[0].currentResX</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>current pixel horizontal</td>
</tr>
<tr>
<td></td>
<td>...[0].currentResY</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>current pixel vertical</td>
</tr>
<tr>
<td></td>
<td>...[0].positionX</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>screen position X</td>
</tr>
<tr>
<td></td>
<td>...[0].positionY</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>screen position Y</td>
</tr>
<tr>
<td></td>
<td>...[0].currentRefreshRate</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>current screen refresh rate</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Graphics</div>
<div class="text">
<p>In this section you will learn how to get information about installed graphics conrollers and connected displays:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>Graphics Controllers, Displays</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.graphics(cb)</td>
<td>{...}</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>arrays of graphics controllers and displays</td>
</tr>
<tr>
<td></td>
<td>controllers[]</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>graphics controllers array</td>
</tr>
<tr>
<td></td>
<td>...[0].model</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>graphics controller model</td>
</tr>
<tr>
<td></td>
<td>...[0].vendor</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. ATI</td>
</tr>
<tr>
<td></td>
<td>...[0].bus</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>on which bus (e.g. PCIe)</td>
</tr>
<tr>
<td></td>
<td>...[0].vram</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>VRAM size (in MB)</td>
</tr>
<tr>
<td></td>
<td>...[0].vramDynamic</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>true if dynamicly allocated ram</td>
</tr>
<tr>
<td></td>
<td>...[0].subDeviceId</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - sub device ID</td>
</tr>
<tr>
<td></td>
<td>...[0].driverVersion</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - driver version</td>
</tr>
<tr>
<td></td>
<td>...[0].name</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - name</td>
</tr>
<tr>
<td></td>
<td>...[0].pciBus</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - PCI bus ID</td>
</tr>
<tr>
<td></td>
<td>...[0].fanSpeed</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - fan speed</td>
</tr>
<tr>
<td></td>
<td>...[0].memory total</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - memory total</td>
</tr>
<tr>
<td></td>
<td>...[0].memoryUsed</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - memory used</td>
</tr>
<tr>
<td></td>
<td>...[0].memoryFree</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - memory free</td>
</tr>
<tr>
<td></td>
<td>...[0].utilizationGpu</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - utilization GPU</td>
</tr>
<tr>
<td></td>
<td>...[0].utilizationMemory</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - utilization memory</td>
</tr>
<tr>
<td></td>
<td>...[0].temperatureGpu</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - temperature GPU</td>
</tr>
<tr>
<td></td>
<td>...[0].temperatureMemory</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - temperature memory</td>
</tr>
<tr>
<td></td>
<td>...[0].powerDraw</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - power draw</td>
</tr>
<tr>
<td></td>
<td>...[0].powerLimit</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - power limit</td>
</tr>
<tr>
<td></td>
<td>...[0].clockCore</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - clock core</td>
</tr>
<tr>
<td></td>
<td>...[0].clockMemory</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>(pptional nvidia-smi) - clock memory</td>
</tr>
<tr>
<td></td>
<td>displays[]</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>monitor/display array</td>
</tr>
<tr>
<td></td>
<td>...[0].vendor</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>monitor/display vendor</td>
</tr>
<tr>
<td></td>
<td>...[0].deviceName</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>e.g. \\.\DISPLAY1</td>
</tr>
<tr>
<td></td>
<td>...[0].model</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>monitor/display model</td>
</tr>
<tr>
<td></td>
<td>...[0].main</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>true if main monitor</td>
</tr>
<tr>
<td></td>
<td>...[0].builtin</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td></td>
<td>true if built in monitor</td>
</tr>
<tr>
<td></td>
<td>...[0].connection</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. DisplayPort, HDMI</td>
</tr>
<tr>
<td></td>
<td>...[0].sizex</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>size in mm horizontal</td>
</tr>
<tr>
<td></td>
<td>...[0].sizey</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>size in mm vertical</td>
</tr>
<tr>
<td></td>
<td>...[0].pixeldepth</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>color depth in bits</td>
</tr>
<tr>
<td></td>
<td>...[0].resolutionx</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>pixel horizontal</td>
</tr>
<tr>
<td></td>
<td>...[0].resolutiony</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>pixel vertical</td>
</tr>
<tr>
<td></td>
<td>...[0].currentResX</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>current pixel horizontal</td>
</tr>
<tr>
<td></td>
<td>...[0].currentResY</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>current pixel vertical</td>
</tr>
<tr>
<td></td>
<td>...[0].positionX</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>screen position X</td>
</tr>
<tr>
<td></td>
<td>...[0].positionY</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>screen position Y</td>
</tr>
<tr>
<td></td>
<td>...[0].currentRefreshRate</td>
<td>X</td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>current screen refresh rate</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.graphics().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{
@@ -502,17 +503,18 @@ si.graphics().then(data => console.log(data));</code></pre class="example">
}
]
}</pre>
</tr>
</tbody>
</table>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -554,4 +556,4 @@ si.graphics().then(data => console.log(data));</code></pre class="example">
</script>
</body>
</html>
</html>
+2074 -2072
View File
File diff suppressed because it is too large Load Diff
+139 -137
View File
@@ -180,152 +180,154 @@
</div>
</header>
<section class="container quickstart">
<div class="row">
<div class="col-12 sectionheader index">
<div class="title">Overview</div>
<div class="subtitle">Lightweight collection of 40+ functions to retrieve detailed hardware, system and OS information. For Linux, macOS, partial Windows, FreeBSD, OpenBSD, NetBSD and SunOS support</div>
<div class="npmicons">
<a href="https://npmjs.org/package/systeminformation" rel="nofollow"><img src="https://camo.githubusercontent.com/df25636cbefadf18ca1532e3bdcd0d2794235e19/68747470733a2f2f696d672e736869656c64732e696f2f6e706d2f762f73797374656d696e666f726d6174696f6e2e7376673f7374796c653d666c61742d737175617265" alt="NPM Version" data-canonical-src="https://img.shields.io/npm/v/systeminformation.svg?style=flat-square" style="max-width:100%;"></a>
<a href="https://david-dm.org/sebhildebrandt/systeminformation" rel="nofollow"><img src="https://camo.githubusercontent.com/69739c043c2be3a38545f105b89381a2a6310f59/68747470733a2f2f696d672e736869656c64732e696f2f64617669642f73656268696c64656272616e64742f73797374656d696e666f726d6174696f6e2e7376673f7374796c653d666c61742d737175617265" alt="deps status" data-canonical-src="https://img.shields.io/david/sebhildebrandt/systeminformation.svg?style=flat-square" style="max-width:100%;"></a>
<a href="https://lgtm.com/projects/g/sebhildebrandt/systeminformation/context:javascript" rel="nofollow"><img src="https://camo.githubusercontent.com/08409d6fb3794545416e1a40ca75172b54d34692/68747470733a2f2f696d672e736869656c64732e696f2f6c67746d2f67726164652f6a6176617363726970742f672f73656268696c64656272616e64742f73797374656d696e666f726d6174696f6e2e7376673f7374796c653d666c61742d737175617265" alt="Code Quality: Javascript" data-canonical-src="https://img.shields.io/lgtm/grade/javascript/g/sebhildebrandt/systeminformation.svg?style=flat-square" style="max-width:100%;"></a>
<a href="https://lgtm.com/projects/g/sebhildebrandt/systeminformation/alerts" rel="nofollow"><img src="https://camo.githubusercontent.com/66428127fdde80fc8247a0c1df4c651f3a6b1c0a/68747470733a2f2f696d672e736869656c64732e696f2f6c67746d2f616c657274732f672f73656268696c64656272616e64742f73797374656d696e666f726d6174696f6e2e7376673f7374796c653d666c61742d737175617265" alt="Total alerts" data-canonical-src="https://img.shields.io/lgtm/alerts/g/sebhildebrandt/systeminformation.svg?style=flat-square" style="max-width:100%;"></a>
<a href="https://github.com/sebhildebrandt/systeminformation/blob/master/LICENSE"><img src="https://camo.githubusercontent.com/4b5966a2a252ee0f241a1e03b13417178eb4964f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e7376673f7374796c653d666c61742d737175617265" alt="MIT license" data-canonical-src="https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square" style="max-width:100%;"></a>
<div class="container-fluid">
<section class="container quickstart">
<div class="row">
<div class="col-12 sectionheader index">
<div class="title">Overview</div>
<div class="subtitle">Lightweight collection of 40+ functions to retrieve detailed hardware, system and OS information. For Linux, macOS, partial Windows, FreeBSD, OpenBSD, NetBSD and SunOS support</div>
<div class="npmicons">
<a href="https://npmjs.org/package/systeminformation" rel="nofollow"><img src="https://camo.githubusercontent.com/df25636cbefadf18ca1532e3bdcd0d2794235e19/68747470733a2f2f696d672e736869656c64732e696f2f6e706d2f762f73797374656d696e666f726d6174696f6e2e7376673f7374796c653d666c61742d737175617265" alt="NPM Version" data-canonical-src="https://img.shields.io/npm/v/systeminformation.svg?style=flat-square" style="max-width:100%;"></a>
<a href="https://david-dm.org/sebhildebrandt/systeminformation" rel="nofollow"><img src="https://camo.githubusercontent.com/69739c043c2be3a38545f105b89381a2a6310f59/68747470733a2f2f696d672e736869656c64732e696f2f64617669642f73656268696c64656272616e64742f73797374656d696e666f726d6174696f6e2e7376673f7374796c653d666c61742d737175617265" alt="deps status" data-canonical-src="https://img.shields.io/david/sebhildebrandt/systeminformation.svg?style=flat-square" style="max-width:100%;"></a>
<a href="https://lgtm.com/projects/g/sebhildebrandt/systeminformation/context:javascript" rel="nofollow"><img src="https://camo.githubusercontent.com/08409d6fb3794545416e1a40ca75172b54d34692/68747470733a2f2f696d672e736869656c64732e696f2f6c67746d2f67726164652f6a6176617363726970742f672f73656268696c64656272616e64742f73797374656d696e666f726d6174696f6e2e7376673f7374796c653d666c61742d737175617265" alt="Code Quality: Javascript" data-canonical-src="https://img.shields.io/lgtm/grade/javascript/g/sebhildebrandt/systeminformation.svg?style=flat-square" style="max-width:100%;"></a>
<a href="https://lgtm.com/projects/g/sebhildebrandt/systeminformation/alerts" rel="nofollow"><img src="https://camo.githubusercontent.com/66428127fdde80fc8247a0c1df4c651f3a6b1c0a/68747470733a2f2f696d672e736869656c64732e696f2f6c67746d2f616c657274732f672f73656268696c64656272616e64742f73797374656d696e666f726d6174696f6e2e7376673f7374796c653d666c61742d737175617265" alt="Total alerts" data-canonical-src="https://img.shields.io/lgtm/alerts/g/sebhildebrandt/systeminformation.svg?style=flat-square" style="max-width:100%;"></a>
<a href="https://github.com/sebhildebrandt/systeminformation/blob/master/LICENSE"><img src="https://camo.githubusercontent.com/4b5966a2a252ee0f241a1e03b13417178eb4964f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e7376673f7374796c653d666c61742d737175617265" alt="MIT license" data-canonical-src="https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square" style="max-width:100%;"></a>
</div>
<div class="text"><span class="bold">Version 4 maintenance</span>: We are still maintaining version 4 and providing especially fixes to security issues and other important fixes. New functionality is only added to the new version 5, so please consider upgrading to version 5 soon. <span class="bold">Version 5 is NOT fully backward compatible to version 4!</span> Be aware, there are some breaking changes. Please refer to the <a href="../changes.html">Version 5 - Changes</a> page to see a full documentation of all changes you should have a look on.</div>
<div class="text larger"><span class="bold">Version 5 documentation</span> can be found <a href="../index.html">here</a>.</div>
</div>
<div class="text"><span class="bold">Version 4 maintenance</span>: We are still maintaining version 4 and providing especially fixes to security issues and other important fixes. New functionality is only added to the new version 5, so please consider upgrading to version 5 soon. <span class="bold">Version 5 is NOT fully backward compatible to version 4!</span> Be aware, there are some breaking changes. Please refer to the <a href="../changes.html">Version 5 - Changes</a> page to see a full documentation of all changes you should have a look on.</div>
<div class="text larger"><span class="bold">Version 5 documentation</span> can be found <a href="../index.html">here</a>.</div>
</div>
</div>
<div class="row justify-content-center sectionheader index">
<div class="col-8">
<hr>
<div class="row justify-content-center sectionheader index">
<div class="col-8">
<hr>
</div>
</div>
</div>
<div class="row number-section">
<div class="col-xl-4 col-lg-4 col-md-4 col-12">
<div class="numbers">10,943</div>
<div class="title">Lines of code</div>
<div class="row number-section">
<div class="col-xl-4 col-lg-4 col-md-4 col-12">
<div class="numbers">10,943</div>
<div class="title">Lines of code</div>
</div>
<div class="col-xl-4 col-lg-4 col-md-4 col-12">
<div id="downloads" class="numbers">...</div>
<div class="title">Downloads last month</div>
</div>
<div class="col-xl-4 col-lg-4 col-md-4 col-12">
<div class="numbers">375</div>
<div class="title">Dependents</div>
</div>
</div>
<div class="col-xl-4 col-lg-4 col-md-4 col-12">
<div id="downloads" class="numbers">...</div>
<div class="title">Downloads last month</div>
<div class="row justify-content-center sectionheader index">
<div class="col-8">
<hr>
</div>
</div>
<div class="col-xl-4 col-lg-4 col-md-4 col-12">
<div class="numbers">375</div>
<div class="title">Dependents</div>
<div class="row" id="docs">
<div class="col-12 sectionheader index">
<div class="title">Documentation</div>
<div class="subtitle">Detailed documentation and reference for Version 4.x.x</div>
</div>
</div>
</div>
<div class="row justify-content-center sectionheader index">
<div class="col-8">
<hr>
<div class="row index">
<a href="gettingstarted.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-download"></i></div>
<div class="icontitle">Getting Started</div>
</div>
</a>
<a href="general.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-th-list"></i></div>
<div class="icontitle">General</div>
</div>
</a>
<a href="system.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-server"></i></div>
<div class="icontitle">System</div>
</div>
</a>
<a href="cpu.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-microchip"></i></div>
<div class="icontitle">CPU</div>
</div>
</a>
<a href="memory.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-memory"></i></div>
<div class="icontitle">Memory</div>
</div>
</a>
<a href="battery.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-battery-half"></i></div>
<div class="icontitle">Battery</div>
</div>
</a>
<a href="graphics.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-desktop"></i></div>
<div class="icontitle">Graphics</div>
</div>
</a>
<a href="os.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-window"></i></div>
<div class="icontitle">OS</div>
</div>
</a>
<a href="processes.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-chart-line"></i></div>
<div class="icontitle">Process/Service</div>
</div>
</a>
<a href="filesystem.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-hdd"></i></div>
<div class="icontitle">Disks / FS</div>
</div>
</a>
<a href="network.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-network-wired"></i></div>
<div class="icontitle">Network</div>
</div>
</a>
<a href="wifi.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-wifi"></i></div>
<div class="icontitle">Wifi</div>
</div>
</a>
<a href="docker.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fab fa-docker"></i></div>
<div class="icontitle">Docker</div>
</div>
</a>
<a href="vbox.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-box-open"></i></div>
<div class="icontitle">Virtual Box</div>
</div>
</a>
</div>
</div>
<div class="row" id="docs">
<div class="col-12 sectionheader index">
<div class="title">Documentation</div>
<div class="subtitle">Detailed documentation and reference for Version 4.x.x</div>
<div class="row justify-content-center sectionheader index">
<div class="col-8">
<hr>
</div>
</div>
</div>
<div class="row index">
<a href="gettingstarted.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-download"></i></div>
<div class="icontitle">Getting Started</div>
<div class="row">
<div class="col-12 sectionheader index">
<div class="title-small">Issues</div>
<div class="text"><span class="warning">Security issues</span>: Please have a look at our <a href="security.html">security advisories</a></div>
<div class="text">If you run into problems, please check out <a href="issues.html">known issues page</a> first. If you still have problems, please feel free to open an issue on our <a href="https://github.com/sebhildebrandt/systeminformation/issues">github page</a></div>
</div>
</a>
<a href="general.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-th-list"></i></div>
<div class="icontitle">General</div>
</div>
</a>
<a href="system.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-server"></i></div>
<div class="icontitle">System</div>
</div>
</a>
<a href="cpu.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-microchip"></i></div>
<div class="icontitle">CPU</div>
</div>
</a>
<a href="memory.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-memory"></i></div>
<div class="icontitle">Memory</div>
</div>
</a>
<a href="battery.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-battery-half"></i></div>
<div class="icontitle">Battery</div>
</div>
</a>
<a href="graphics.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-desktop"></i></div>
<div class="icontitle">Graphics</div>
</div>
</a>
<a href="os.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-window"></i></div>
<div class="icontitle">OS</div>
</div>
</a>
<a href="processes.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-chart-line"></i></div>
<div class="icontitle">Process/Service</div>
</div>
</a>
<a href="filesystem.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-hdd"></i></div>
<div class="icontitle">Disks / FS</div>
</div>
</a>
<a href="network.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-network-wired"></i></div>
<div class="icontitle">Network</div>
</div>
</a>
<a href="wifi.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-wifi"></i></div>
<div class="icontitle">Wifi</div>
</div>
</a>
<a href="docker.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fab fa-docker"></i></div>
<div class="icontitle">Docker</div>
</div>
</a>
<a href="vbox.html" class="col-xl-3 col-lg-3 col-md-4 col-6 features">
<div class="inner">
<div class="icons"><i class="fal fa-box-open"></i></div>
<div class="icontitle">Virtual Box</div>
</div>
</a>
</div>
<div class="row justify-content-center sectionheader index">
<div class="col-8">
<hr>
</div>
</div>
<div class="row">
<div class="col-12 sectionheader index">
<div class="title-small">Issues</div>
<div class="text"><span class="warning">Security issues</span>: Please have a look at our <a href="security.html">security advisories</a></div>
<div class="text">If you run into problems, please check out <a href="issues.html">known issues page</a> first. If you still have problems, please feel free to open an issue on our <a href="https://github.com/sebhildebrandt/systeminformation/issues">github page</a></div>
</div>
</div>
</section>
<footer class="container-fluid">
</section>
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -369,4 +371,4 @@
</script>
</body>
</html>
</html>
+42 -40
View File
@@ -33,64 +33,66 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Known Issues</div>
<div class="text">
<h4>macOS - Temperature</h4>
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Known Issues</div>
<div class="text">
<h4>macOS - Temperature</h4>
<p>To be able to measure temperature on macOS I created a little additional package. Due to some difficulties in NPM with <span class="code">optionalDependencies</span>
I unfortunately was getting unexpected warnings on other platforms. So I decided to drop this optional dependency for macOS - so by default,
you will not get correct values.</p>
<p>To be able to measure temperature on macOS I created a little additional package. Due to some difficulties in NPM with <span class="code">optionalDependencies</span>
I unfortunately was getting unexpected warnings on other platforms. So I decided to drop this optional dependency for macOS - so by default,
you will not get correct values.</p>
<p>But if you need to detect macOS temperature just run the following additional installation command:</p>
<p>But if you need to detect macOS temperature just run the following additional installation command:</p>
<pre>$ npm install osx-temperature-sensor --save</pre>
<p>systeminformation will then detect this additional library and return the temperature when calling systeminformations standard function <span class="code">cpuTemperature()</span></p>
<pre>$ npm install osx-temperature-sensor --save</pre>
<p>systeminformation will then detect this additional library and return the temperature when calling systeminformations standard function <span class="code">cpuTemperature()</span></p>
<h4>Windows Temperature, Battery, ...</h4>
<h4>Windows Temperature, Battery, ...</h4>
<p><span class="code">wmic</span> - which is used to determine temperature and battery sometimes needs to be run with admin
privileges. So if you do not get any values, try to run it again with according privileges. If you still do not get any
values, your system might not support this feature. In some cases we also discovered that wmic returned incorrect temperature values.</p>
<p><span class="code">wmic</span> - which is used to determine temperature and battery sometimes needs to be run with admin
privileges. So if you do not get any values, try to run it again with according privileges. If you still do not get any
values, your system might not support this feature. In some cases we also discovered that wmic returned incorrect temperature values.</p>
<h4>Linux Temperature</h4>
<h4>Linux Temperature</h4>
<p>In some cases you need to install the linux <span class="code">sensors</span> package to be able to measure temperature e.g. on DEBIAN based systems by running</p>
<pre>$ sudo apt-get install lm-sensors</pre>
<p>In some cases you need to install the linux <span class="code">sensors</span> package to be able to measure temperature e.g. on DEBIAN based systems by running</p>
<pre>$ sudo apt-get install lm-sensors</pre>
<h4>Windows, macOS - CPU Speed</h4>
<h4>Windows, macOS - CPU Speed</h4>
<p><span class="code">node.js</span> and <span class="code">wmic</span> are not able to determine correct CPU current speed on windows and macOS.
This means, you will have constant values here on both platforms for all processor cores in <span class="code">cpuCurrentSpeed()</span>.</p>
<p><span class="code">node.js</span> and <span class="code">wmic</span> are not able to determine correct CPU current speed on windows and macOS.
This means, you will have constant values here on both platforms for all processor cores in <span class="code">cpuCurrentSpeed()</span>.</p>
<h4>Linux S.M.A.R.T. Status</h4>
<h4>Linux S.M.A.R.T. Status</h4>
<p>To be able to detect S.M.A.R.T. status on Linux you need to install <span class="code">smartmontools</span>. On DEBIAN based linux distributions you can install it by running:</p>
<pre>$ sudo apt-get install smartmontools</pre>
<p>If you have smartmontools version >= 7.0 then you will get also full smart data in diskLayout()</p>
<p>To be able to detect S.M.A.R.T. status on Linux you need to install <span class="code">smartmontools</span>. On DEBIAN based linux distributions you can install it by running:</p>
<pre>$ sudo apt-get install smartmontools</pre>
<p>If you have smartmontools version >= 7.0 then you will get also full smart data in diskLayout()</p>
<h4>Stats Functions</h4>
<p>To get correct values with <span class="code">fsStats()</span>, <span class="code">disksIO()</span> and <span class="code">networkStats()</span> please check <a href="statsfunctions.html">this guide</a></p>
<h4>Stats Functions</h4>
<p>To get correct values with <span class="code">fsStats()</span>, <span class="code">disksIO()</span> and <span class="code">networkStats()</span> please check <a href="statsfunctions.html">this guide</a></p>
<h4>Empty / incorrect values</h4>
<p>If you discover empty or incorrect values, please keep in mind that some underlying commands need to be run under admin privileges. So if you run your scripts as normal users, not all system information values can be determined. For linux this is e.g. the case for `memLayout()`, advances `system()`, `bios()`, `baseboard()`, `cpu()`information, S.M.A.R.T. status and others... </p>
<h4>Empty / incorrect values</h4>
<p>If you discover empty or incorrect values, please keep in mind that some underlying commands need to be run under admin privileges. So if you run your scripts as normal users, not all system information values can be determined. For linux this is e.g. the case for `memLayout()`, advances `system()`, `bios()`, `baseboard()`, `cpu()`information, S.M.A.R.T. status and others... </p>
<h4>Finding New Issues</h4>
<p>If you still have problems, please feel free to open an issue on our <a href="https://github.com/sebhildebrandt/systeminformation/issues">github page</a></p>
<h4>Finding New Issues</h4>
<p>If you still have problems, please feel free to open an issue on our <a href="https://github.com/sebhildebrandt/systeminformation/issues">github page</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -132,4 +134,4 @@
</script>
</body>
</html>
</html>
+298 -296
View File
@@ -37,169 +37,170 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Memory</div>
<div class="text">
<p>In this section you will learn how to get overall memory information (usage by OS) and memory module layout:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>System Memory and Memory Layout</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.mem(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Memory information (object)</td>
</tr>
<tr>
<td></td>
<td>total</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>total memory in bytes</td>
</tr>
<tr>
<td></td>
<td>free</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>not used in bytes</td>
</tr>
<tr>
<td></td>
<td>used</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>used (incl. buffers/cache)</td>
</tr>
<tr>
<td></td>
<td>active</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>used actively (excl. buffers/cache)</td>
</tr>
<tr>
<td></td>
<td>buffcache</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td>used by buffers+cache</td>
</tr>
<tr>
<td></td>
<td>buffers</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>used by buffers</td>
</tr>
<tr>
<td></td>
<td>cached</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>used by cache</td>
</tr>
<tr>
<td></td>
<td>slab</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>used by slab</td>
</tr>
<tr>
<td></td>
<td>available</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>potentially available (total - active)</td>
</tr>
<tr>
<td></td>
<td>swaptotal</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
</tr>
<tr>
<td></td>
<td>swapused</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
</tr>
<tr>
<td></td>
<td>swapfree</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Memory</div>
<div class="text">
<p>In this section you will learn how to get overall memory information (usage by OS) and memory module layout:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>System Memory and Memory Layout</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.mem(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Memory information (object)</td>
</tr>
<tr>
<td></td>
<td>total</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>total memory in bytes</td>
</tr>
<tr>
<td></td>
<td>free</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>not used in bytes</td>
</tr>
<tr>
<td></td>
<td>used</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>used (incl. buffers/cache)</td>
</tr>
<tr>
<td></td>
<td>active</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>used actively (excl. buffers/cache)</td>
</tr>
<tr>
<td></td>
<td>buffcache</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td>used by buffers+cache</td>
</tr>
<tr>
<td></td>
<td>buffers</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>used by buffers</td>
</tr>
<tr>
<td></td>
<td>cached</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>used by cache</td>
</tr>
<tr>
<td></td>
<td>slab</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>used by slab</td>
</tr>
<tr>
<td></td>
<td>available</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>potentially available (total - active)</td>
</tr>
<tr>
<td></td>
<td>swaptotal</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
</tr>
<tr>
<td></td>
<td>swapused</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
</tr>
<tr>
<td></td>
<td>swapfree</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.mem().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{
@@ -217,132 +218,132 @@ si.mem().then(data => console.log(data));</code></pre class="example">
swapfree: 8589930496
}
</pre>
</tr>
<tr>
<td>si.memLayout(cb)</td>
<td>[{...}]</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>Memory Layout (array of objects)</td>
</tr>
<tr>
<td></td>
<td>[0].size</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>size in bytes</td>
</tr>
<tr>
<td></td>
<td>[0].bank</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>memory bank</td>
</tr>
<tr>
<td></td>
<td>[0].type</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>memory type</td>
</tr>
<tr>
<td></td>
<td>[0].clockSpeed</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>clock speed</td>
</tr>
<tr>
<td></td>
<td>[0].formFactor</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>form factor</td>
</tr>
<tr>
<td></td>
<td>[0].manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>manufacturer</td>
</tr>
<tr>
<td></td>
<td>[0].partNum</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>part number</td>
</tr>
<tr>
<td></td>
<td>[0].serialNum</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>serial number</td>
</tr>
<tr>
<td></td>
<td>[0].voltageConfigured</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>voltage conf.</td>
</tr>
<tr>
<td></td>
<td>[0].voltageMin</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>voltage min</td>
</tr>
<tr>
<td></td>
<td>[0].voltageMax</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>voltage max</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
</tr>
<tr>
<td>si.memLayout(cb)</td>
<td>[{...}]</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>Memory Layout (array of objects)</td>
</tr>
<tr>
<td></td>
<td>[0].size</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>size in bytes</td>
</tr>
<tr>
<td></td>
<td>[0].bank</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>memory bank</td>
</tr>
<tr>
<td></td>
<td>[0].type</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>memory type</td>
</tr>
<tr>
<td></td>
<td>[0].clockSpeed</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>clock speed</td>
</tr>
<tr>
<td></td>
<td>[0].formFactor</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>form factor</td>
</tr>
<tr>
<td></td>
<td>[0].manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>manufacturer</td>
</tr>
<tr>
<td></td>
<td>[0].partNum</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>part number</td>
</tr>
<tr>
<td></td>
<td>[0].serialNum</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>serial number</td>
</tr>
<tr>
<td></td>
<td>[0].voltageConfigured</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>voltage conf.</td>
</tr>
<tr>
<td></td>
<td>[0].voltageMin</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>voltage min</td>
</tr>
<tr>
<td></td>
<td>[0].voltageMax</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>voltage max</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.memLayout().then(data => console.log(data));</code></pre class="example">
<pre class="example">
[
@@ -374,17 +375,18 @@ si.memLayout().then(data => console.log(data));</code></pre class="example">
}
]
</pre>
</tr>
</tbody>
</table>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -426,4 +428,4 @@ si.memLayout().then(data => console.log(data));</code></pre class="example">
</script>
</body>
</html>
</html>
+595 -593
View File
File diff suppressed because it is too large Load Diff
+596 -594
View File
File diff suppressed because it is too large Load Diff
+559 -557
View File
File diff suppressed because it is too large Load Diff
+142 -140
View File
@@ -33,180 +33,182 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Security Advisories</div>
<div class="text">
<h2>Passing User Paramters to Systeminformation</h2>
<p>For most of the applications that are using <span class="code">systeminformation</span>, there is no reason to worry. <span class="bold">But be aware!</span> If you are using <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span>, <span class="code">versions()</span> with arbitrary untrusted user input, you should pay extra attention! We are doing a lot of input sanitation for those functions inside this package but we cannot handle all cases!</p>
<p class="warning">This can lead to serious impact on your servers!</p>
<p>We highly recommend to always upgrade to the latest version of our package. We maintain security updates for version 5 AND also version 4. For version 4 you can install latest version by placing <span class="code">"systeminformation": "^4"</span> in your package.json (dependencies) and run <span class="code">npm install</span></p>
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Security Advisories</div>
<div class="text">
<h2>Passing User Paramters to Systeminformation</h2>
<p>For most of the applications that are using <span class="code">systeminformation</span>, there is no reason to worry. <span class="bold">But be aware!</span> If you are using <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span>, <span class="code">versions()</span> with arbitrary untrusted user input, you should pay extra attention! We are doing a lot of input sanitation for those functions inside this package but we cannot handle all cases!</p>
<p class="warning">This can lead to serious impact on your servers!</p>
<p>We highly recommend to always upgrade to the latest version of our package. We maintain security updates for version 5 AND also version 4. For version 4 you can install latest version by placing <span class="code">"systeminformation": "^4"</span> in your package.json (dependencies) and run <span class="code">npm install</span></p>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.21<br>
<span class="bold">Date:</span> 2021-05-04<br>
<span class="bold">CVE indentifier</span> -
</p>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.21<br>
<span class="bold">Date:</span> 2021-05-04<br>
<span class="bold">CVE indentifier</span> -
</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to perform a potential command injection possibility by passing a non string values as a parameter to the <span class="code">dockerContainerInspect()</span>, <span class="code">dockerContainerProcesses()</span>.</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to perform a potential command injection possibility by passing a non string values as a parameter to the <span class="code">dockerContainerInspect()</span>, <span class="code">dockerContainerProcesses()</span>.</p>
<h4>Patch</h4>
<p>Problem was fixed with parameter checking. Please upgrade to version >= 4.34.21 if you are using version 4.</p>
<h4>Patch</h4>
<p>Problem was fixed with parameter checking. Please upgrade to version >= 4.34.21 if you are using version 4.</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize parameter strings that are passed to <span class="code">dockerContainerInspect()</span>, <span class="code">dockerContainerProcesses()</span> (string only)</p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.20<br>
<span class="bold">Date:</span> 2021-04-08<br>
<span class="bold">CVE indentifier</span> -
</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize parameter strings that are passed to <span class="code">dockerContainerInspect()</span>, <span class="code">dockerContainerProcesses()</span> (string only)</p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.20<br>
<span class="bold">Date:</span> 2021-04-08<br>
<span class="bold">CVE indentifier</span> -
</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to perform a potential command injection possibility by passing a non string values as a parameter to the <span class="code">versions()</span>.</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to perform a potential command injection possibility by passing a non string values as a parameter to the <span class="code">versions()</span>.</p>
<h4>Patch</h4>
<p>Problem was fixed with parameter checking. Please upgrade to version >= 4.34.20 if you are using version 4.</p>
<h4>Patch</h4>
<p>Problem was fixed with parameter checking. Please upgrade to version >= 4.34.20 if you are using version 4.</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize parameter strings that are passed to <span class="code">versions()</span> (string only)</p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.17<br>
<span class="bold">Date:</span> 2021-03-15<br>
<span class="bold">CVE indentifier</span> -
</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize parameter strings that are passed to <span class="code">versions()</span> (string only)</p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.17<br>
<span class="bold">Date:</span> 2021-03-15<br>
<span class="bold">CVE indentifier</span> -
</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to perform a potential command injection possibility by passing a manipulated string prototype as a parameter to the following functions. Affected commands: <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span>.</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to perform a potential command injection possibility by passing a manipulated string prototype as a parameter to the following functions. Affected commands: <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span>.</p>
<h4>Patch</h4>
<p>Problem was fixed with additional parameter checking. Please upgrade to version >= 4.34.17 if you are using version 4.</p>
<h4>Patch</h4>
<p>Problem was fixed with additional parameter checking. Please upgrade to version >= 4.34.17 if you are using version 4.</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize parameter strings that are passed to <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span> (string only)</p>
<hr>
<br>
<h2>Insufficient File Scheme Validation</h2>
<p><span class="bold">Affected versions:</span>
4.34.12<br>
<span class="bold">Date:</span> 2021-02-15<br>
<span class="bold">CVE indentifier</span> -
</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize parameter strings that are passed to <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span> (string only)</p>
<hr>
<br>
<h2>Insufficient File Scheme Validation</h2>
<p><span class="bold">Affected versions:</span>
4.34.12<br>
<span class="bold">Date:</span> 2021-02-15<br>
<span class="bold">CVE indentifier</span> -
</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to run inetChecksite against local files due to improper file scheme validation. Affected commands: <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>.</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to run inetChecksite against local files due to improper file scheme validation. Affected commands: <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>.</p>
<h4>Patch</h4>
<p>Problem was fixed with additional parameter checking. Please upgrade to version >= 4.34.12 if you are using version 4.</p>
<h4>Patch</h4>
<p>Problem was fixed with additional parameter checking. Please upgrade to version >= 4.34.12 if you are using version 4.</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span> (sanitize `file://` parameter)</p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.11<br>
<span class="bold">Date:</span> 2021-02-14<br>
<span class="bold">CVE indentifier</span> CVE-2021-21315
</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span> (sanitize `file://` parameter)</p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.11<br>
<span class="bold">Date:</span> 2021-02-14<br>
<span class="bold">CVE indentifier</span> CVE-2021-21315
</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to perform a potential command injection possibility by passing a manipulated array as a parameter to the following functions. Affected commands: <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span>.</p>
<h4>Impact</h4>
<p>We had an issue that there was a possibility to perform a potential command injection possibility by passing a manipulated array as a parameter to the following functions. Affected commands: <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span>.</p>
<h4>Patch</h4>
<p>Problem was fixed with additional parameter checking. Please upgrade to version >= 4.34.11 if you are using version 4.</p>
<h4>Patch</h4>
<p>Problem was fixed with additional parameter checking. Please upgrade to version >= 4.34.11 if you are using version 4.</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span> (string only)</p>
<hr>
<br>
<h2>DOS Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.10<br>
<span class="bold">Date:</span> 2021-02-12<br>
<span class="bold">CVE indentifier</span> -
</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetLatency()</span>, <span class="code">inetChecksite()</span>, <span class="code">services()</span>, <span class="code">processLoad()</span> (string only)</p>
<hr>
<br>
<h2>DOS Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
&lt; 4.34.10<br>
<span class="bold">Date:</span> 2021-02-12<br>
<span class="bold">CVE indentifier</span> -
</p>
<h4>Impact</h4>
<p>Here we had an issue that there was a possibility to perform a ping command execution for too long time. Affected commands: <span class="code">inetLatency()</span>.</p>
<h4>Impact</h4>
<p>Here we had an issue that there was a possibility to perform a ping command execution for too long time. Affected commands: <span class="code">inetLatency()</span>.</p>
<h4>Patch</h4>
<p>Problem was fixed with a shell string sanitation fix. Please upgrade to version >= 4.34.10 if you are using version 4.</p>
<h4>Patch</h4>
<p>Problem was fixed with a shell string sanitation fix. Please upgrade to version >= 4.34.10 if you are using version 4.</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetLatency()</span> (no spaces)</p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
< 4.31.1<br>
<span class="bold">Date:</span> 2020-12-11<br>
<span class="bold">CVE indentifier</span> CVE-2020-26274, CVE-2020-28448
</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetLatency()</span> (no spaces)</p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
< 4.31.1<br>
<span class="bold">Date:</span> 2020-12-11<br>
<span class="bold">CVE indentifier</span> CVE-2020-26274, CVE-2020-28448
</p>
<h4>Impact</h4>
<p>Here we had an issue that there was a possibility to inject commands to the command line of your machine via systeminformation. Affected commands: <span class="code">inetLatency()</span>.</p>
<h4>Impact</h4>
<p>Here we had an issue that there was a possibility to inject commands to the command line of your machine via systeminformation. Affected commands: <span class="code">inetLatency()</span>.</p>
<h4>Patch</h4>
<p>Problem was fixed with a shell string sanitation fix. Please upgrade to version >= 4.31.1</p>
<h4>Patch</h4>
<p>Problem was fixed with a shell string sanitation fix. Please upgrade to version >= 4.31.1</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetLatency()</span></p>
<hr>
<br>
<h2>Command Injection Vulnerability - prototype pollution</h2>
<p><span class="bold">Affected versions:</span>
< 4.30.5<br>
<span class="bold">Date:</span> 2020-11-26<br>
<span class="bold">CVE indentifier</span> CVE-2020-26245
</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetLatency()</span></p>
<hr>
<br>
<h2>Command Injection Vulnerability - prototype pollution</h2>
<p><span class="bold">Affected versions:</span>
< 4.30.5<br>
<span class="bold">Date:</span> 2020-11-26<br>
<span class="bold">CVE indentifier</span> CVE-2020-26245
</p>
<h4>Impact</h4>
<p>Here we had an issue that there was a possibility to inject commands to the command line by property pollution on the string object. Affected commands: <span class="code">inetChecksite()</span>.</p>
<h4>Impact</h4>
<p>Here we had an issue that there was a possibility to inject commands to the command line by property pollution on the string object. Affected commands: <span class="code">inetChecksite()</span>.</p>
<h4>Patch</h4>
<p>Problem was fixed with a shell string sanitation fix as well as handling prototype polution. Please upgrade to version >= 4.30.5</p>
<h4>Patch</h4>
<p>Problem was fixed with a shell string sanitation fix as well as handling prototype polution. Please upgrade to version >= 4.30.5</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetChecksite()</span></p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
< 4.27.11<br>
<span class="bold">Date:</span> 2020-10-26<br>
<span class="bold">CVE indentifier</span> CVE-2020-7752
</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetChecksite()</span></p>
<hr>
<br>
<h2>Command Injection Vulnerability</h2>
<p><span class="bold">Affected versions:</span>
< 4.27.11<br>
<span class="bold">Date:</span> 2020-10-26<br>
<span class="bold">CVE indentifier</span> CVE-2020-7752
</p>
<h4>Impact</h4>
<p>Here we had an issue that there was a possibility to inject commands to the command line of your machine via systeminformation. Affected commands: <span class="code">inetChecksite()</span>.</p>
<h4>Impact</h4>
<p>Here we had an issue that there was a possibility to inject commands to the command line of your machine via systeminformation. Affected commands: <span class="code">inetChecksite()</span>.</p>
<h4>Patch</h4>
<p>Problem was fixed with a shell string sanitation fix. Please upgrade to version >= 4.27.11</p>
<h4>Patch</h4>
<p>Problem was fixed with a shell string sanitation fix. Please upgrade to version >= 4.27.11</p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetChecksite()</span></p>
<h4>Workarround</h4>
<p>If you cannot upgrade, be sure to check or sanitize service parameter strings that are passed to <span class="code">inetChecksite()</span></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
+51 -49
View File
@@ -37,65 +37,66 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Stats Functions</div>
<div class="text">
<h2>Getting correct stats values</h2>
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Stats Functions</div>
<div class="text">
<h2>Getting correct stats values</h2>
<p>In <span class="code">fsStats()</span>, <span class="code">disksIO()</span>, <span class="code">currentLoad()</span> and <span class="code">networkStats()</span> the
results / sec. values (rx_sec, IOPS, ...) are calculated correctly beginning with the <strong>second</strong> call of the function.
It is determined by calculating the difference of transferred bytes / IOs divided by the time between two calls of the function.</p>
<p>In <span class="code">fsStats()</span>, <span class="code">disksIO()</span>, <span class="code">currentLoad()</span> and <span class="code">networkStats()</span> the
results / sec. values (rx_sec, IOPS, ...) are calculated correctly beginning with the <strong>second</strong> call of the function.
It is determined by calculating the difference of transferred bytes / IOs divided by the time between two calls of the function.</p>
<p>The first time you are calling one of this functions, you will get <span class="code">-1</span> for transfer rates.
The second time, you should then get statistics based on the time between the two calls ...</p>
<p>The first time you are calling one of this functions, you will get <span class="code">-1</span> for transfer rates.
The second time, you should then get statistics based on the time between the two calls ...</p>
<p>So basically, if you e.g. need a values for network stats every second, your code should look like this:</p>
<p>So basically, if you e.g. need a values for network stats every second, your code should look like this:</p>
<pre><code class="js">const si = require('systeminformation');
<pre><code class="js">const si = require('systeminformation');
setInterval(function() {
si.networkStats().then(data => {
console.log(data);
})
}, 1000)</code></pre>
<p>Beginning with the second call, you get network transfer values per second.</p>
<h2>Observe System Parameters</h2>
<p>systeminformation now allows you to easily observe system parameters: First you define a result object of system parameters you want to observe (see also decription of the <a href="general.html"><span class="code">si.get()</span> function here</a>):</p>
<p>Then you just call an <span class="code">si.observe()</span> function with three parameters: your result object, the polling interval (in milliseconds) and a callback function. systeminformation will now observe the result object. Every time the result changes, your callback function is called. This callback function also gets the current value the observed system parameters object.</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<p>Beginning with the second call, you get network transfer values per second.</p>
<h2>Observe System Parameters</h2>
<p>systeminformation now allows you to easily observe system parameters: First you define a result object of system parameters you want to observe (see also decription of the <a href="general.html"><span class="code">si.get()</span> function here</a>):</p>
<p>Then you just call an <span class="code">si.observe()</span> function with three parameters: your result object, the polling interval (in milliseconds) and a callback function. systeminformation will now observe the result object. Every time the result changes, your callback function is called. This callback function also gets the current value the observed system parameters object.</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
<td>si.observe(valueObject,interval,cb)</td>
<td>-</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Observe the defined value object,<br>call callback on changes:</td>
</tr>
</thead>
<tr>
<td>si.observe(valueObject,interval,cb)</td>
<td>-</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Observe the defined value object,<br>call callback on changes:</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
// define all values, you want to get back
valueObject = {
@@ -125,7 +126,8 @@ setTimeout(() => {
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -167,4 +169,4 @@ setTimeout(() => {
</script>
</body>
</html>
</html>
+9 -4
View File
@@ -2,6 +2,7 @@ body {
font-family: -apple-system, BlinkMacSystemFont, "segoe ui", Roboto, Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol";
font-weight: 300;
min-height: 100%;
background-color: #59351e;
}
h1, h2, h3, h4 {
@@ -22,6 +23,11 @@ h1, h2, h3, h4 {
color: #9c0101;
}
.container-fluid {
background-color: white;
padding-bottom: 30px;
}
.bg-image-full {
background: no-repeat center center scroll;
background-color: #4b2313;
@@ -546,17 +552,16 @@ pre {
background-color: #f0f0f4;
}
footer {
.footer {
background-color: #eee;
margin-top: 30px;
padding-top: 30px;
padding-bottom: 30px;
position: relative;
}
footer a {
.footer a {
color: #000;
}
footer .badge {
.footer .badge {
color: #fff;
font-size: 0.9rem;
}
+1 -1
View File
@@ -1 +1 @@
{"version":3,"sources":["styles.scss"],"names":[],"mappings":"AAAA;EACI,0JAAA;EACA,gBAAA;EACA,gBAAA;AACJ;;AACA;EACI,0JAAA;EACA,gBAAA;AAEJ;;AAAA;EACI,kBAAA;AAGJ;;AADA;EACI,gBAAA;AAIJ;;AAFA;EACI,gBAAA;EACA,cAAA;AAKJ;;AAHA;EACI,0CAAA;EACA,yBAAA;EAA2B,+CAAA;EAC3B,2DAAA;EAA8D,mCAAA;EAI9D,sBAAA;EACA,yBAAA;EACA,aAAA;EACA,kCAAA;EACA,aAAA;EACA,aAAA;EACA,uBAAA;EACA,kBAAA;EAGA,sBAAA;AAKJ;AAJI;EACE,kBAAA;EACA,kBAAA;EACA,aAAA;EACA,uBAAA;EACA,sBAAA;EACA,mBAAA;EACA,YAAA;AAMN;AAJI;EACE,kBAAA;EACA,SAAA;EACA,YAAA;EACA,WAAA;EACA,qBAAA;EACA,YAAA;EACA,kBAAA;EACA,iBAAA;EACA,YAAA;EACA,wBAAA;EACA,mBAAA;EACA,iBAAA;AAMN;AALM;EAbF;IAcM,eAAA;EAQR;AACF;AAPM;EAhBF;IAiBM,iBAAA;EAUR;AACF;AATM;EAnBF;IAoBI,SAAA;IACA,YAAA;IACA,iBAAA;EAYN;AACF;AAXM;EACE,qBAAA;AAaR;AAVI;EACI,WAAA;EACA,iBAAA;EACA,iBAAA;EACA,mBAAA;AAYR;AAXQ;EALJ;IAMQ,iBAAA;EAcV;AACF;AAbQ;EARJ;IASQ,iBAAA;EAgBV;AACF;AAfQ;EAXJ;IAYQ,eAAA;EAkBV;AACF;AAhBI;EACI,YAAA;AAkBR;AAjBQ;EAFJ;IAGQ,YAAA;EAoBV;AACF;AAnBQ;EALJ;IAMQ,YAAA;EAsBV;AACF;AArBQ;EARJ;IASQ,YAAA;EAwBV;AACF;AAtBI;EACI,kBAAA;EACA,WAAA;EACA,kBAAA;AAwBR;AAvBQ;EAJJ;IAKQ,iBAAA;EA0BV;AACF;AAzBQ;EAPJ;IAQQ,eAAA;EA4BV;AACF;AA3BQ;EAVJ;IAWQ,iBAAA;EA8BV;AACF;AA7BQ;EAbJ;IAcQ,iBAAA;EAgCV;AACF;AA9BI;EACI,kBAAA;EACA,WAAA;EACA,iBAAA;AAgCR;AA/BQ;EACI,WAAA;EACA,qBAAA;AAiCZ;AA/BQ;EARJ;IASQ,iBAAA;EAkCV;AACF;AAjCQ;EAXJ;IAYQ,eAAA;EAoCV;AACF;AAnCQ;EAdJ;IAeQ,eAAA;EAsCV;AACF;AArCQ;EAjBJ;IAkBQ,iBAAA;EAwCV;AACF;AAtCI;EACI,kBAAA;EACA,mBAAA;EACA,WAAA;EACA,iBAAA;AAwCR;AAvCQ;EALJ;IAMQ,iBAAA;EA0CV;AACF;AAzCQ;EARJ;IASQ,eAAA;EA4CV;AACF;AA3CQ;EAXJ;IAYQ,iBAAA;EA8CV;AACF;AA5CI;EACE,kBAAA;EACA,WAAA;EACA,iBAAA;EACA,cAAA;EACA,mBAAA;EACA,eAAA;AA8CN;AA7CM;EACE,eAAA;AA+CR;;AAnCA;EACI,0CAAA;EAGA,yBAAA;EAA2B,+CAAA;EAC3B,2DAAA;EAA8D,mCAAA;EAG9D,sBAAA;EACA,yBAAA;EACA,YAAA;EACA,kBAAA;AAsCJ;AArCI;EACI,WAAA;EACA,gBAAA;AAuCR;AArCI;EACI,aAAA;EACA,WAAA;EACA,iBAAA;EACA,iBAAA;EACA,gBAAA;AAuCR;AAtCQ;EANJ;IAOQ,qBAAA;EAyCV;AACF;AAxCQ;EATJ;IAUQ,iBAAA;EA2CV;AACF;AAzCI;EACI,gBAAA;AA2CR;AAzCQ;EACI,WAAA;EACA,gBAAA;EACA,eAAA;AA2CZ;AA1CY;EAJJ;IAKQ,gBAAA;IACA,iBAAA;EA6Cd;AACF;AA5CY;EACI,WAAA;EACA,qBAAA;AA8ChB;AA1CI;EACE,aAAA;AA4CN;AA3CM;EAFF;IAGI,qBAAA;EA8CN;AACF;AA5CI;EACE,qBAAA;AA8CN;AA7CM;EAFF;IAGI,aAAA;EAgDN;AACF;;AA7CA;EACI,kBAAA;EACA,WAAA;AAgDJ;AA/CI;EACE,iBAAA;AAiDN;AAhDM;EAFF;IAGI,kBAAA;EAmDN;AACF;AAlDM;EACI,cAAA;EACA,eAAA;EACA,WAAA;AAoDV;AAnDU;EAJJ;IAKQ,iBAAA;EAsDZ;AACF;AArDU;EAPJ;IAQQ,eAAA;EAwDZ;AACF;AAvDU;EAVJ;IAWQ,eAAA;EA0DZ;AACF;AAxDM;EACI,iBAAA;AA0DV;AAvDM;EACI,mBAAA;EACA,cAAA;AAyDV;AAxDU;EACE,cAAA;AA0DZ;;AApDI;EACI,kBAAA;EACA,iBAAA;EACA,eAAA;AAuDR;AAtDQ;EAJJ;IAKQ,iBAAA;EAyDV;AACF;AAxDQ;EAPJ;IAQQ,gBAAA;IACA,iBAAA;IACA,iBAAA;EA2DV;AACF;AA1DQ;EAZJ;IAaQ,iBAAA;IACA,eAAA;EA6DV;AACF;AA3DI;EACI,kBAAA;EACA,iBAAA;AA6DR;AA5DQ;EAHJ;IAIQ,iBAAA;EA+DV;AACF;AA9DQ;EANJ;IAOQ,gBAAA;IACA,iBAAA;IACA,iBAAA;EAiEV;AACF;AAhEQ;EAXJ;IAYQ,iBAAA;IACA,eAAA;EAmEV;AACF;AAjEI;EACI,kBAAA;EACA,iBAAA;AAmER;AAlEQ;EAHJ;IAIQ,eAAA;EAqEV;AACF;AApEQ;EANJ;IAOQ,gBAAA;IACA,iBAAA;EAuEV;AACF;AAtEQ;EAVJ;IAWQ,iBAAA;EAyEV;AACF;AAvEI;EACI,kBAAA;AAyER;AAvEI;EACI,kBAAA;EACA,iBAAA;AAyER;AAxEQ;EAHJ;IAIQ,gBAAA;EA2EV;AACF;AAzEI;EACI,gBAAA;EACA,kBAAA;EACA,sBAAA;AA2ER;;AAxEA;EACE,kBAAA;AA2EF;AA1EE;EACI,kBAAA;AA4EN;AA1EE;EACI,qBAAA;AA4EN;AA3EM;EACI,qBAAA;EACA,cAAA;AA6EV;;AAxEI;EACI,gBAAA;AA2ER;;AAxEA;EACI,gBAAA;AA2EJ;;AAzEA;EACI,gBAAA;AA4EJ;;AA1EA;EACI,gBAAA;EACA,kBAAA;AA6EJ;AA5EI;EACI,eAAA;AA8ER;AA7EQ;EAFJ;IAGQ,iBAAA;EAgFV;AACF;AA/EQ;EALJ;IAMQ,iBAAA;EAkFV;AACF;AAhFI;EACI,WAAA;EACA,eAAA;AAkFR;AAjFQ;EAHJ;IAIQ,iBAAA;EAoFV;AACF;AAnFQ;EANJ;IAOQ,iBAAA;EAsFV;AACF;;AAnFA;EACI,aAAA;AAsFJ;AArFI;EAFJ;IAGQ,gBAAA;IACA,qBAAA;EAwFN;AACF;AAvFI;EACI,oBAAA;EACA,WAAA;AAyFR;AAxFQ;EACE,WAAA;EACA,WAAA;EACA,qBAAA;AA0FV;AAzFU;EACI,cAAA;AA2Fd;AAvFI;EACI,aAAA;AAyFR;AAvFI;EACI,qBAAA;EACA,SAAA;EACA,UAAA;AAyFR;AAxFQ;EACI,cAAA;AA0FZ;AAzFY;EACI,WAAA;EACA,WAAA;EACA,qBAAA;AA2FhB;AA1FgB;EACI,cAAA;AA4FpB;AAzFY;EACI,cAAA;AA2FhB;;AAtFA;EACI,mEAAA;EACA,mCAAA;EACA,eAAA;EACA,kBAAA;EACA,oBAAA;EACA,gBAAA;EACA,qBAAA;EACA,sBAAA;EACA,SAAA;EACA,cAAA;AAyFJ;;AAvFA;EACI,0BAAA;EACA,mEAAA;EACA,mCAAA;EACA,eAAA;EACA,kBAAA;EACA,oBAAA;EACA,gBAAA;EACA,iBAAA;EACA,sBAAA;EACA,WAAA;EACA,gBAAA;AA0FJ;;AAvFI;EACE,iCAAA;AA0FN;AAxFI;EACE,oCAAA;AA0FN;AAxFI;EACE,gBAAA;EACA,kBAAA;AA0FN;AAxFI;EACE,uBAAA;AA0FN;AAzFM;EACE,yBAAA;AA2FR;;AAtFA;EACI,sBAAA;EACA,gBAAA;EACA,iBAAA;EACA,oBAAA;EACA,kBAAA;AAyFJ;AAxFI;EACI,WAAA;AA0FR;AAxFI;EACE,WAAA;EACA,iBAAA;AA0FN;;AAvFA;EACE,gBAAA;EACA,4BAAA;AA0FF;;AAxFA;EACE,cAAA;AA2FF","file":"styles.css"}
{"version":3,"sources":["styles.scss"],"names":[],"mappings":"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","file":"styles.css"}
+6 -2
View File
@@ -2,6 +2,7 @@ body {
font-family: -apple-system, BlinkMacSystemFont, "segoe ui", Roboto, Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol";
font-weight: 300;
min-height: 100%;
background-color: rgb(89, 53, 30);
}
h1, h2, h3, h4 {
font-family: -apple-system, BlinkMacSystemFont, "segoe ui", Roboto, Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol";
@@ -17,6 +18,10 @@ h1, h2, h3, h4 {
font-weight: 500;
color: rgb(156, 1, 1);
}
.container-fluid {
background-color: rgb(255,255,255);
padding-bottom: 30px;
}
.bg-image-full {
background: no-repeat center center scroll;
background-color: #4b2313; /* For browsers that do not support gradients */
@@ -462,9 +467,8 @@ pre {
}
}
}
footer {
.footer {
background-color: #eee;
margin-top: 30px;
padding-top: 30px;
padding-bottom: 30px;
position: relative;
+340 -338
View File
@@ -37,129 +37,130 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">System (Hardware)</div>
<div class="text">
<p>In this section you will learn how to get basic system hardware data. We will cover the system, baseboard and bios:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>System</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.system(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>hardware information</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'MSI' or 'DELL'</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>model/product e.g. 'MS-7823'</td>
</tr>
<tr>
<td></td>
<td>version</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>version e.g. '1.0'</td>
</tr>
<tr>
<td></td>
<td>serial</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>serial number</td>
</tr>
<tr>
<td></td>
<td>uuid</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>UUID</td>
</tr>
<tr>
<td></td>
<td>sku</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>SKU number</td>
</tr>
<tr>
<td></td>
<td>virtual</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>is virtual machine</td>
</tr>
<tr>
<td></td>
<td>raspberry</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>Additional Raspberry-specific information<br>manufacturer, processor, type, revision<br>Raspberry only</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">System (Hardware)</div>
<div class="text">
<p>In this section you will learn how to get basic system hardware data. We will cover the system, baseboard and bios:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>System</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.system(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>hardware information</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'MSI' or 'DELL'</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>model/product e.g. 'MS-7823'</td>
</tr>
<tr>
<td></td>
<td>version</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>version e.g. '1.0'</td>
</tr>
<tr>
<td></td>
<td>serial</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>serial number</td>
</tr>
<tr>
<td></td>
<td>uuid</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>UUID</td>
</tr>
<tr>
<td></td>
<td>sku</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>SKU number</td>
</tr>
<tr>
<td></td>
<td>virtual</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>is virtual machine</td>
</tr>
<tr>
<td></td>
<td>raspberry</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>Additional Raspberry-specific information<br>manufacturer, processor, type, revision<br>Raspberry only</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.system().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{
@@ -172,62 +173,62 @@ si.system().then(data => console.log(data));</code></pre class="example">
virtual: false,
}
</pre>
</tr>
<tr>
<td>si.bios(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>bios information</td>
</tr>
<tr>
<td></td>
<td>vendor</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'AMI'</td>
</tr>
<tr>
<td></td>
<td>version</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>version</td>
</tr>
<tr>
<td></td>
<td>releaseDate</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>release date</td>
</tr>
<tr>
<td></td>
<td>revision</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>revision</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
</tr>
<tr>
<td>si.bios(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>bios information</td>
</tr>
<tr>
<td></td>
<td>vendor</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'AMI'</td>
</tr>
<tr>
<td></td>
<td>version</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>version</td>
</tr>
<tr>
<td></td>
<td>releaseDate</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>release date</td>
</tr>
<tr>
<td></td>
<td>revision</td>
<td>X</td>
<td>X</td>
<td></td>
<td>X</td>
<td></td>
<td>revision</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.bios().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{
@@ -236,72 +237,72 @@ si.bios().then(data => console.log(data));</code></pre class="example">
releaseDate: '2019-09-05',
revision: '5.13'
}</pre>
</tr>
<tr>
<td>si.baseboard(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>baseboard information</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'ASUS'</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>model / product name</td>
</tr>
<tr>
<td></td>
<td>version</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>version</td>
</tr>
<tr>
<td></td>
<td>serial</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>serial number</td>
</tr>
<tr>
<td></td>
<td>assetTag</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>asset tag</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
</tr>
<tr>
<td>si.baseboard(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>baseboard information</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'ASUS'</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>model / product name</td>
</tr>
<tr>
<td></td>
<td>version</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>version</td>
</tr>
<tr>
<td></td>
<td>serial</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>serial number</td>
</tr>
<tr>
<td></td>
<td>assetTag</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>asset tag</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.baseboard().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{
@@ -311,92 +312,92 @@ si.baseboard().then(data => console.log(data));</code></pre class="example">
serial: 'C80-xxxxxxxxxxx',
assetTag: ''
}</pre>
</tr>
<tr>
<td>si.chassis(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>chassis information</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'ASUS'</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>model / product name</td>
</tr>
<tr>
<td></td>
<td>type</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>chassis type e.g. 'desktop'</td>
</tr>
<tr>
<td></td>
<td>version</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>version</td>
</tr>
<tr>
<td></td>
<td>serial</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>serial number</td>
</tr>
<tr>
<td></td>
<td>assetTag</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>asset tag</td>
</tr>
<tr>
<td></td>
<td>sku</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>SKU number</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
</tr>
<tr>
<td>si.chassis(cb)</td>
<td>{...}</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>chassis information</td>
</tr>
<tr>
<td></td>
<td>manufacturer</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>e.g. 'ASUS'</td>
</tr>
<tr>
<td></td>
<td>model</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>model / product name</td>
</tr>
<tr>
<td></td>
<td>type</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>chassis type e.g. 'desktop'</td>
</tr>
<tr>
<td></td>
<td>version</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>version</td>
</tr>
<tr>
<td></td>
<td>serial</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>serial number</td>
</tr>
<tr>
<td></td>
<td>assetTag</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td></td>
<td>asset tag</td>
</tr>
<tr>
<td></td>
<td>sku</td>
<td></td>
<td></td>
<td></td>
<td>X</td>
<td></td>
<td>SKU number</td>
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.chassis().then(data => console.log(data));</code></pre class="example">
<pre class="example">
{
@@ -408,17 +409,18 @@ si.chassis().then(data => console.log(data));</code></pre class="example">
assetTag: 'Mac-99878xxxx...',
sku: ''
}</pre>
</tr>
</tbody>
</table>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -460,4 +462,4 @@ si.chassis().then(data => console.log(data));</code></pre class="example">
</script>
</body>
</html>
</html>
+42 -40
View File
@@ -33,50 +33,52 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader left">
<div class="title">Trademarks</div>
<div class="text">
<p>The following trademarks are the properties of their respective owners as listed below. Should any trademark attribution be missing, mistaken or erroneous, please contact us as soon as possible for rectification.</p>
<ul>
<li><strong>Node.js</strong> is a trademark of Joyent Inc.</li>
<li><strong>Linux</strong> is a registered trademark of Linus Torvalds</li>
<li><strong>Apple, macOS, OS X</strong> are registered trademarks of Apple Inc.</li>
<li><strong>Windows</strong> is a registered trademark of Microsoft Corporation</li>
<li><strong>Intel</strong> is a trademark of Intel Corporation</li>
<li><strong>AMD</strong> is a trademark of Advanced Micro Devices Inc.</li>
<li><strong>Ryzen</strong> is a trademark of Advanced Micro Devices Inc.</li>
<li><strong>Raspberry Pi</strong> is a trademark of the Raspberry Pi Foundation</li>
<li><strong>Debian</strong> is a trademark of the Debian Project</li>
<li><strong>FreeBSD</strong> is a registered trademark of The FreeBSD Foundation</li>
<li><strong>NetBSD</strong> is a registered trademark of The NetBSD Foundation</li>
<li><strong>Docker</strong> is a trademark of Docker, Inc.</li>
<li><strong>Ubuntu</strong> is a trademark of Canonical Ltd.</li>
<li><strong>CentOS</strong> is a trademark of Read Hat Inc.</li>
<li><strong>Sun, Solaris, OpenSolaris</strong> are registered trademarks of Sun Microsystems</li>
<li><strong>Virtual Box</strong> are registered trademarks of Oracle Corporation</li>
<li><strong>BSD</strong> is a registered trademark of UUnet Technologies, Inc.</li>
<li><strong>UNIX</strong> is a registered trademark of The Open Group.</li>
<li><strong>NVIDIA</strong> is a registered trademark of NVIDIA Corporation.</li>
<li><strong>MSI</strong> is a registered trademark Micro-Star International Co.</li>
<li><strong>DELL</strong> is a registered trademark of Dell Inc.</li>
<li><strong>ASUS</strong> is a registered trademark of ASUSTeK Computer.</li>
<li><strong>Alpine</strong> is a trademark of Alpine Linux Development Team.</li>
</ul>
<p>All other trademarks are the property of their respective owners.</p>
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader left">
<div class="title">Trademarks</div>
<div class="text">
<p>The following trademarks are the properties of their respective owners as listed below. Should any trademark attribution be missing, mistaken or erroneous, please contact us as soon as possible for rectification.</p>
<ul>
<li><strong>Node.js</strong> is a trademark of Joyent Inc.</li>
<li><strong>Linux</strong> is a registered trademark of Linus Torvalds</li>
<li><strong>Apple, macOS, OS X</strong> are registered trademarks of Apple Inc.</li>
<li><strong>Windows</strong> is a registered trademark of Microsoft Corporation</li>
<li><strong>Intel</strong> is a trademark of Intel Corporation</li>
<li><strong>AMD</strong> is a trademark of Advanced Micro Devices Inc.</li>
<li><strong>Ryzen</strong> is a trademark of Advanced Micro Devices Inc.</li>
<li><strong>Raspberry Pi</strong> is a trademark of the Raspberry Pi Foundation</li>
<li><strong>Debian</strong> is a trademark of the Debian Project</li>
<li><strong>FreeBSD</strong> is a registered trademark of The FreeBSD Foundation</li>
<li><strong>NetBSD</strong> is a registered trademark of The NetBSD Foundation</li>
<li><strong>Docker</strong> is a trademark of Docker, Inc.</li>
<li><strong>Ubuntu</strong> is a trademark of Canonical Ltd.</li>
<li><strong>CentOS</strong> is a trademark of Read Hat Inc.</li>
<li><strong>Sun, Solaris, OpenSolaris</strong> are registered trademarks of Sun Microsystems</li>
<li><strong>Virtual Box</strong> are registered trademarks of Oracle Corporation</li>
<li><strong>BSD</strong> is a registered trademark of UUnet Technologies, Inc.</li>
<li><strong>UNIX</strong> is a registered trademark of The Open Group.</li>
<li><strong>NVIDIA</strong> is a registered trademark of NVIDIA Corporation.</li>
<li><strong>MSI</strong> is a registered trademark Micro-Star International Co.</li>
<li><strong>DELL</strong> is a registered trademark of Dell Inc.</li>
<li><strong>ASUS</strong> is a registered trademark of ASUSTeK Computer.</li>
<li><strong>Alpine</strong> is a trademark of Alpine Linux Development Team.</li>
</ul>
<p>All other trademarks are the property of their respective owners.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -118,4 +120,4 @@
</script>
</body>
</html>
</html>
+406 -404
View File
@@ -37,414 +37,416 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Virtual Box</div>
<div class="text">
<p>In this section you will learn how to get information about virtual box VMs:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>VMs</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.vboxInfo(cb)</td>
<td>[{...}]</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>returns array of detailed info about all VMs</td>
</tr>
<tr>
<td></td>
<td>[0].id</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>virtual box ID</td>
</tr>
<tr>
<td></td>
<td>[0].name</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>name</td>
</tr>
<tr>
<td></td>
<td>[0].running</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>vbox is running</td>
</tr>
<tr>
<td></td>
<td>[0].started</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>started date time</td>
</tr>
<tr>
<td></td>
<td>[0].runningSince</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>running since (secs)</td>
</tr>
<tr>
<td></td>
<td>[0].stopped</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>stopped date time</td>
</tr>
<tr>
<td></td>
<td>[0].stoppedSince</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>stopped since (secs)</td>
</tr>
<tr>
<td></td>
<td>[0].guestOS</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Guest OS</td>
</tr>
<tr>
<td></td>
<td>[0].hardwareUUID</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Hardware UUID</td>
</tr>
<tr>
<td></td>
<td>[0].memory</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Memory in MB</td>
</tr>
<tr>
<td></td>
<td>[0].vram</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>VRAM in MB</td>
</tr>
<tr>
<td></td>
<td>[0].cpus</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>CPUs</td>
</tr>
<tr>
<td></td>
<td>[0].cpuExepCap</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>CPU exec cap</td>
</tr>
<tr>
<td></td>
<td>[0].cpuProfile</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>CPU profile</td>
</tr>
<tr>
<td></td>
<td>[0].chipset</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>chipset</td>
</tr>
<tr>
<td></td>
<td>[0].firmware</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>firmware</td>
</tr>
<tr>
<td></td>
<td>[0].pageFusion</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>page fusion</td>
</tr>
<tr>
<td></td>
<td>[0].configFile</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>config file</td>
</tr>
<tr>
<td></td>
<td>[0].snapshotFolder</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>snapshot folder</td>
</tr>
<tr>
<td></td>
<td>[0].logFolder</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>log folder path</td>
</tr>
<tr>
<td></td>
<td>[0].HPET</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>HPET</td>
</tr>
<tr>
<td></td>
<td>[0].PAE</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>PAE</td>
</tr>
<tr>
<td></td>
<td>[0].longMode</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>long mode</td>
</tr>
<tr>
<td></td>
<td>[0].tripleFaultReset</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>triple fault reset</td>
</tr>
<tr>
<td></td>
<td>[0].APIC</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>APIC</td>
</tr>
<tr>
<td></td>
<td>[0].X2APIC</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X2APIC</td>
</tr>
<tr>
<td></td>
<td>[0].ACPI</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>ACPI</td>
</tr>
<tr>
<td></td>
<td>[0].IOAPIC</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>IOAPIC</td>
</tr>
<tr>
<td></td>
<td>[0].biosAPICmode</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>BIOS APIC mode</td>
</tr>
<tr>
<td></td>
<td>[0].bootMenuMode</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>boot menu Mode</td>
</tr>
<tr>
<td></td>
<td>[0].bootDevice1</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>bootDevice1</td>
</tr>
<tr>
<td></td>
<td>[0].bootDevice2</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>bootDevice2</td>
</tr>
<tr>
<td></td>
<td>[0].bootDevice3</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>bootDevice3</td>
</tr>
<tr>
<td></td>
<td>[0].bootDevice4</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>bootDevice4</td>
</tr>
<tr>
<td></td>
<td>[0].timeOffset</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>time Offset</td>
</tr>
<tr>
<td></td>
<td>[0].RTC</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>RTC</td>
</tr>
</tbody>
</table>
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Virtual Box</div>
<div class="text">
<p>In this section you will learn how to get information about virtual box VMs:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>VMs</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.vboxInfo(cb)</td>
<td>[{...}]</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>returns array of detailed info about all VMs</td>
</tr>
<tr>
<td></td>
<td>[0].id</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>virtual box ID</td>
</tr>
<tr>
<td></td>
<td>[0].name</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>name</td>
</tr>
<tr>
<td></td>
<td>[0].running</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>vbox is running</td>
</tr>
<tr>
<td></td>
<td>[0].started</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>started date time</td>
</tr>
<tr>
<td></td>
<td>[0].runningSince</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>running since (secs)</td>
</tr>
<tr>
<td></td>
<td>[0].stopped</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>stopped date time</td>
</tr>
<tr>
<td></td>
<td>[0].stoppedSince</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>stopped since (secs)</td>
</tr>
<tr>
<td></td>
<td>[0].guestOS</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Guest OS</td>
</tr>
<tr>
<td></td>
<td>[0].hardwareUUID</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Hardware UUID</td>
</tr>
<tr>
<td></td>
<td>[0].memory</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>Memory in MB</td>
</tr>
<tr>
<td></td>
<td>[0].vram</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>VRAM in MB</td>
</tr>
<tr>
<td></td>
<td>[0].cpus</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>CPUs</td>
</tr>
<tr>
<td></td>
<td>[0].cpuExepCap</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>CPU exec cap</td>
</tr>
<tr>
<td></td>
<td>[0].cpuProfile</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>CPU profile</td>
</tr>
<tr>
<td></td>
<td>[0].chipset</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>chipset</td>
</tr>
<tr>
<td></td>
<td>[0].firmware</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>firmware</td>
</tr>
<tr>
<td></td>
<td>[0].pageFusion</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>page fusion</td>
</tr>
<tr>
<td></td>
<td>[0].configFile</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>config file</td>
</tr>
<tr>
<td></td>
<td>[0].snapshotFolder</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>snapshot folder</td>
</tr>
<tr>
<td></td>
<td>[0].logFolder</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>log folder path</td>
</tr>
<tr>
<td></td>
<td>[0].HPET</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>HPET</td>
</tr>
<tr>
<td></td>
<td>[0].PAE</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>PAE</td>
</tr>
<tr>
<td></td>
<td>[0].longMode</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>long mode</td>
</tr>
<tr>
<td></td>
<td>[0].tripleFaultReset</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>triple fault reset</td>
</tr>
<tr>
<td></td>
<td>[0].APIC</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>APIC</td>
</tr>
<tr>
<td></td>
<td>[0].X2APIC</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X2APIC</td>
</tr>
<tr>
<td></td>
<td>[0].ACPI</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>ACPI</td>
</tr>
<tr>
<td></td>
<td>[0].IOAPIC</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>IOAPIC</td>
</tr>
<tr>
<td></td>
<td>[0].biosAPICmode</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>BIOS APIC mode</td>
</tr>
<tr>
<td></td>
<td>[0].bootMenuMode</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>boot menu Mode</td>
</tr>
<tr>
<td></td>
<td>[0].bootDevice1</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>bootDevice1</td>
</tr>
<tr>
<td></td>
<td>[0].bootDevice2</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>bootDevice2</td>
</tr>
<tr>
<td></td>
<td>[0].bootDevice3</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>bootDevice3</td>
</tr>
<tr>
<td></td>
<td>[0].bootDevice4</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>bootDevice4</td>
</tr>
<tr>
<td></td>
<td>[0].timeOffset</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>time Offset</td>
</tr>
<tr>
<td></td>
<td>[0].RTC</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>RTC</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -486,4 +488,4 @@
</script>
</body>
</html>
</html>
+152 -150
View File
@@ -37,149 +37,150 @@
</div>
</nav>
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Wifi</div>
<div class="text">
<p>In this section you will learn how to get detailed information about available wifi networks:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>Wifi Networks</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.wifiNetworks(cb)</td>
<td>[{...}]</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>array of available wifi networks</td>
</tr>
<tr>
<td></td>
<td>[0].ssid</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>Wifi network SSID</td>
</tr>
<tr>
<td></td>
<td>[0].bssid</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>BSSID (mac)</td>
</tr>
<tr>
<td></td>
<td>[0].mode</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>mode</td>
</tr>
<tr>
<td></td>
<td>[0].channel</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>channel</td>
</tr>
<tr>
<td></td>
<td>[0].frequency</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>frequengy in MHz</td>
</tr>
<tr>
<td></td>
<td>[0].signalLevel</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>signal level in dB</td>
</tr>
<tr>
<td></td>
<td>[0].quality</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>quaility in %</td>
</tr>
<tr>
<td></td>
<td>[0].security</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>array e.g. WPA, WPA-2</td>
</tr>
<tr>
<td></td>
<td>[0].wpaFlags</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>array of WPA flags</td>
</tr>
<tr>
<td></td>
<td>[0].rsnFlags</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>array of RDN flags
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
<div class="container-fluid">
<section class="container">
<div class="row">
<div class="col-12 col-md-4 col-lg-3 col-xl-2 menu" id="menu">
</div>
<div class="col-12 col-md-8 col-lg-9 col-xl-10 content">
<div class="row">
<div class="col-12 sectionheader">
<div class="title">Wifi</div>
<div class="text">
<p>In this section you will learn how to get detailed information about available wifi networks:</p>
<p>For function reference and examples we assume, that we imported <span class="code">systeminformation</span> as follows:</p>
<pre><code class="js">const si = require('systeminformation');</code></pre>
<h2>Wifi Networks</h2>
<p>All functions in this section return a promise or can be called with a callback function (parameter <span class="code">cb</span> in the function reference)</p>
<table class="table table-sm table-bordered table-striped">
<thead>
<tr>
<th>Function</th>
<th>Result object</th>
<th>Linux</th>
<th>BSD</th>
<th>Mac</th>
<th>Win</th>
<th>Sun</th>
<th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>si.wifiNetworks(cb)</td>
<td>[{...}]</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>X</td>
<td>array of available wifi networks</td>
</tr>
<tr>
<td></td>
<td>[0].ssid</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>Wifi network SSID</td>
</tr>
<tr>
<td></td>
<td>[0].bssid</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>BSSID (mac)</td>
</tr>
<tr>
<td></td>
<td>[0].mode</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>mode</td>
</tr>
<tr>
<td></td>
<td>[0].channel</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>channel</td>
</tr>
<tr>
<td></td>
<td>[0].frequency</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>frequengy in MHz</td>
</tr>
<tr>
<td></td>
<td>[0].signalLevel</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>signal level in dB</td>
</tr>
<tr>
<td></td>
<td>[0].quality</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>quaility in %</td>
</tr>
<tr>
<td></td>
<td>[0].security</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>array e.g. WPA, WPA-2</td>
</tr>
<tr>
<td></td>
<td>[0].wpaFlags</td>
<td>X</td>
<td></td>
<td>X</td>
<td>X</td>
<td></td>
<td>array of WPA flags</td>
</tr>
<tr>
<td></td>
<td>[0].rsnFlags</td>
<td>X</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>array of RDN flags
</tr>
<tr class="example">
<td></td>
<td colspan="7">
<h5>Example</h5>
<pre><code class="js">const si = require('systeminformation');
si.wifiNetworks().then(data => console.log(data));</code></pre class="example">
<pre class="example">
[
@@ -209,19 +210,20 @@ si.wifiNetworks().then(data => console.log(data));</code></pre class="example">
},
...
]</pre>
</tr>
</tr>
</tbody>
</table>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="container-fluid">
</div>
<footer class="container-fluid footer">
<div class="container">
<div class="row">
<div class="col-lg-4 col-12">
@@ -263,4 +265,4 @@ si.wifiNetworks().then(data => console.log(data));</code></pre class="example">
</script>
</body>
</html>
</html>