@@ -16,11 +16,13 @@ var arrDevices = [];
16
16
var arrDevicesItem ;
17
17
var accessToken ;
18
18
var loginDataResult = { success : false } ;
19
+ var regionTuya ;
19
20
20
21
module . exports = NodeHelper . create ( {
21
22
// Subclass start method.
22
23
start : function ( ) {
23
24
console . log ( "Starting node_helper.js for MMM-TuyaSL." ) ;
25
+ regionTuya = 'eu' ;
24
26
} ,
25
27
26
28
dump : function ( v , s ) {
@@ -169,7 +171,11 @@ module.exports = NodeHelper.create({
169
171
let params = '{"header": {"name": "Discovery", "namespace": "discovery", "payloadVersion": 1}, "payload": {"accessToken": "' + that . accessToken + '"}}' ;
170
172
171
173
try {
172
- let res = await axios . post ( 'https://px1.tuyaeu.com/homeassistant/skill' , params , configAx ) ;
174
+ let res = await axios . post ( 'https://px1.tuya' + regionTuya + '.com/homeassistant/skill' , params , configAx ) ;
175
+ console . log ( `DEBUG: regionTuya : ${ regionTuya } ` ) ;
176
+ if ( regionTuya == 'eu' ) regionTuya = 'us' ;
177
+ else if ( regionTuya == 'us' ) regionTuya = 'cn' ;
178
+ else if ( regionTuya == 'cn' ) regionTuya = 'eu' ;
173
179
174
180
//console.log(`DEBUG: Status code : ${res.status}`);
175
181
//console.log(`DEBUG: Status text : ${res.statusText}`);
@@ -183,17 +189,18 @@ module.exports = NodeHelper.create({
183
189
//console.log(`DEBUG: Data.code : ${res.data.header.code}`);
184
190
//console.log(`DEBUG: Data.payloadVersion: ${res.data.header.payloadVersion}`);
185
191
186
- if ( res . data . header . code === 'SUCCESS' ) {
192
+ if ( "header" in res . data && "code" in res . data . header && res . data . header . code === 'SUCCESS' ) {
187
193
try {
188
194
function myDeviceItem ( value , index , array ) {
189
195
deviceOnline = value . data . online ;
196
+ //deviceOnline = (value.data.online === "false" ? false : value.data.online);
190
197
deviceState = ( value . data . state == "true" ? true : ( value . data . state == "false" ? false : value . data . state ) ) ;
191
198
arrDevicesItem = { alias :value . name , type :value . dev_type , online :deviceOnline , on_off :deviceState } ;
192
199
arrDevices . push ( arrDevicesItem ) ;
193
200
}
194
201
195
202
res . data . payload . devices . forEach ( myDeviceItem ) ;
196
- // console.log(`DEBUG: Number of Devices = ${arrDevices.length}`);
203
+ console . log ( `DEBUG: Number of Devices = ${ arrDevices . length } ` ) ;
197
204
//console.log(`DEBUG: Device-List ${that.dump(arrDevices)}`);
198
205
}
199
206
catch ( e ) {
0 commit comments