Hooked up power events

Bryan Roe committed May 31, 2020 at 11:24 UTC 5ad469e8b43b7c62aff8c46c64518257ae20d4e4
1 file changed +29
agents/meshcore.js
+29
@@ -251,6 +251,35 @@ function createMeshCore(agent) {
251 return (svc);
252 }
253
254 + if (require('identifiers').isBatteryPowered && require('identifiers').isBatteryPowered())
255 + {
256 + require('MeshAgent')._battLevelChanged = function _battLevelChanged(val)
257 + {
258 + _battLevelChanged.self.SendCommand({ action: 'battery', state: _battLevelChanged.self._currentPowerState, level: val });
259 + };
260 + require('MeshAgent')._battLevelChanged.self = require('MeshAgent');
261 + require('MeshAgent')._powerChanged = function _powerChanged(val)
262 + {
263 + _powerChanged.self._currentPowerState = (val == 'AC' ? 'ac' : 'dc');
264 + _powerChanged.self.SendCommand({ action: 'battery', state: (val == 'AC' ? 'ac' : 'dc') });
265 + };
266 + require('MeshAgent')._powerChanged.self = require('MeshAgent');
267 + require('MeshAgent').on('Connected', function (status)
268 + {
269 + if (status == 0)
270 + {
271 + require('power-monitor').removeListener('acdc', this._powerChanged);
272 + require('power-monitor').removeListener('batteryLevel', this._battLevelChanged);
273 + }
274 + else
275 + {
276 + require('power-monitor').on('acdc', this._powerChanged);
277 + require('power-monitor').on('batteryLevel', this._battLevelChanged);
278 + }
279 + });
280 + }
281 +
282 +
283 /*
284 function borderController() {
285 this.container = null;