Monitor power state changes.
Process: Main
The powerMonitor
module emits the following events:
Emitted when the system is suspending.
Emitted when system is resuming.
Emitted when the system changes to AC power.
Emitted when system changes to battery power.
state
string - The system's new thermal state. Can be unknown
, nominal
, fair
, serious
, critical
.Emitted when the thermal state of the system changes. Notification of a change in the thermal status of the system, such as entering a critical temperature range. Depending on the severity, the system might take steps to reduce said temperature, for example, throttling the CPU or switching on the fans if available.
Apps may react to the new state by reducing expensive computing tasks (e.g. video encoding), or notifying the user. The same state might be received repeatedly.
limit
number - The operating system's advertised speed limit for CPUs, in percent.Notification of a change in the operating system's advertised speed limit for CPUs, in percent. Values below 100 indicate that the system is impairing processing power due to thermal management.
Emitted when the system is about to reboot or shut down. If the event handler
invokes e.preventDefault()
, Electron will attempt to delay system shutdown in
order for the app to exit cleanly. If e.preventDefault()
is called, the app
should exit as soon as possible by calling something like app.quit()
.
Emitted when the system is about to lock the screen.
Emitted as soon as the systems screen is unlocked.
Emitted when a login session is activated. See documentation for more information.
Emitted when a login session is deactivated. See documentation for more information.
The powerMonitor
module has the following methods:
powerMonitor.getSystemIdleState(idleThreshold)
idleThreshold
IntegerReturns string
- The system's current idle state. Can be active
, idle
, locked
or unknown
.
Calculate the system idle state. idleThreshold
is the amount of time (in seconds)
before considered idle. locked
is available on supported systems only.
powerMonitor.getSystemIdleTime()
Returns Integer
- Idle time in seconds
Calculate system idle time in seconds.
powerMonitor.getCurrentThermalState()
macOSReturns string
- The system's current thermal state. Can be unknown
, nominal
, fair
, serious
, or critical
.
powerMonitor.isOnBatteryPower()
Returns boolean
- Whether the system is on battery power.
To monitor for changes in this property, use the on-battery
and on-ac
events.
powerMonitor.onBatteryPower
A boolean
property. True if the system is on battery power.