Skip to content

Commit 7cd2f73

Browse files
authored
Merge pull request #1 from brbeaird/solar
2 parents e0e83cf + 7acdd45 commit 7cd2f73

3 files changed

Lines changed: 33 additions & 23 deletions

File tree

src/server/CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog
22

3+
## 1.0.1 (2023-03-07)
4+
5+
### Fixed
6+
- Fixed Solar support
7+
38
## 1.0.0 (2023-02-27)
49

510
### Added

src/server/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "smartthings-edge-sense",
33
"author": "Brian Beaird",
44
"repository": "https://github.com/brbeaird/SmartThings-MyQ-Sense.git",
5-
"version": "1.0.0",
5+
"version": "1.0.1",
66
"description": "Node agent for Sense Energy Monitor and SmartThings Edge",
77
"main": "server.js",
88
"scripts": {

src/server/server.js

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ async function senseLogin(email, password){
3333
//Save it
3434
log('Got new username/password from hub. Initializing connection.')
3535
mySense = await sense({email: email, password: password, verbose: false}) //Set up Sense API object and authenticate
36+
log('Login successful!');
3637
setupWebsocketEvents();
3738
senseEmail = email;
3839
sensePassword = password;
@@ -62,24 +63,24 @@ const updateSenseDevices = async () => {
6263
}
6364

6465
for (let device of devices){
65-
if (device.tags.DeviceListAllowed == 'true'){
66-
let isGuess = device.data?.tags?.NameUserGuess === 'true' ? true : false;
67-
let devName = isGuess ? device.name.trim() + ' (?)' : device.name.trim();
68-
69-
//If already exists, only refresh the name
70-
if (deviceList[device.id]){
71-
deviceList[device.id].name = devName;
72-
}
73-
else{
74-
log(`Found ${devName} `);
75-
deviceList[device.id] = {
76-
id: device.id,
77-
name: devName,
78-
state: "off",
79-
usage: 0
80-
};
81-
}
82-
}
66+
if (device.tags.DeviceListAllowed == 'true' || device.id === 'solar'){
67+
let isGuess = device.tags?.NameUserGuess === 'true' ? true : false;
68+
let devName = isGuess ? device.name.trim() + ' (?)' : device.name.trim();
69+
70+
//If already exists, only refresh the name
71+
if (deviceList[device.id]){
72+
deviceList[device.id].name = devName;
73+
}
74+
else{
75+
log(`Found ${devName} `);
76+
deviceList[device.id] = {
77+
id: device.id,
78+
name: devName,
79+
state: "off",
80+
usage: 0
81+
};
82+
}
83+
}
8384
}
8485

8586
deviceList[totalDeviceId] = {
@@ -89,7 +90,7 @@ const updateSenseDevices = async () => {
8990
usage: 0
9091
};
9192
} catch (error) {
92-
log(`Device list error: ${error.message}`)
93+
log(`Device list error: ${error.message}\n${error.stack}`)
9394
}
9495
}
9596

@@ -108,7 +109,7 @@ app.post('/senseDevices', async (req, res) => {
108109
//Schedule the device refresh
109110
if (!deviceListRefreshInterval){
110111
log(`Scheduling device refresh`)
111-
await updateSenseDevices();
112+
updateSenseDevices();
112113
deviceListRefreshInterval = setInterval(() => {
113114
updateSenseDevices();
114115
}, 1000*60*5);
@@ -117,7 +118,10 @@ app.post('/senseDevices', async (req, res) => {
117118
//Schedule the device refresh
118119
if (!websocketRefreshInterval){
119120
log(`Scheduling websocket refresh`)
120-
mySense.openStream();
121+
setTimeout(() => {
122+
mySense.openStream();
123+
}, 5000);
124+
121125
websocketRefreshInterval = setInterval(() => {
122126
mySense.openStream();
123127
}, 1000*60);
@@ -174,6 +178,7 @@ app.post('/senseDevices', async (req, res) => {
174178
for (let dev of data.payload.devices) {
175179
if (!deviceList[dev.id]){
176180
log(`Device missing: ${dev.id}`);
181+
continue;
177182
}
178183

179184
//Don't go below 1 watt
@@ -190,7 +195,7 @@ app.post('/senseDevices', async (req, res) => {
190195

191196
return 0;
192197
} catch (error) {
193-
log(`Data processing error: ${error.message}`, 1);
198+
log(`Data processing error: ${error.message}\n${error.stack}`, 1);
194199
}
195200
});
196201

0 commit comments

Comments
 (0)