@@ -636,59 +636,59 @@ module.exports = function (RED) {
636636 NODE . send ( resultMsg ) ;
637637 } else if ( NODE . type == ST_STATUS_DEVICE ) {
638638 OneApi . getDeviceStates ( param , authToken )
639- . then ( function ( response ) {
640- NODE . loggingEditor && NODE . warn ( "[SmartThings] Status :" + NODE . name || NODE . alias || NODE . type ) ;
641- var deviceStatus = response . data ;
642- var opCheck = false ;
643- NODE . capabilityId = NODE . capabilityId . split ( '_v' ) [ 0 ]
644- NODE . rules . forEach ( ( rule , idx ) => {
645- var attributeValue = deviceStatus . components [ deviceConfig . componentId || 'main' ] [ NODE . capabilityId ] [ NODE . attributeId ] . value ;
646-
647- let ruleValue = rule . value ;
648-
649- if ( rule . valueType == 'object' ) {
650- ruleValue = { } ;
651- for ( let k in rule . value ) {
652- const data = rule . value [ k ] ;
653- ruleValue [ k ] = RED . util . evaluateNodeProperty ( data . value , rule . type , NODE , msg ) ;
654- }
655- } else {
656- if ( rule . argType === 'jsonata' ) {
657- ruleValue = RED . util . evaluateJSONataExpression ( ruleValue , msg ) ;
658- } else {
659- ruleValue = RED . util . evaluateNodeProperty ( ruleValue , rule . argType , NODE , msg ) ;
660- }
661- }
639+ . then ( function ( response ) {
640+ NODE . loggingEditor && NODE . warn ( "[SmartThings] Status :" + NODE . name || NODE . alias || NODE . type ) ;
641+ var data = response . data ;
642+ var opCheck = false ;
643+ NODE . capabilityId = NODE . capabilityId . split ( '_v' ) [ 0 ]
644+ NODE . rules . forEach ( ( rule , idx ) => {
645+ var attributeValue = data . components [ deviceConfig . componentId || 'main' ] [ NODE . capabilityId ] [ NODE . attributeId ] . value ;
646+
647+ let ruleValue = rule . value ;
648+
649+ if ( rule . valueType == 'object' ) {
650+ ruleValue = { } ;
651+ for ( let k in rule . value ) {
652+ const data = rule . value [ k ] ;
653+ ruleValue [ k ] = RED . util . evaluateNodeProperty ( data . value , rule . type , NODE , msg ) ;
654+ }
655+ } else {
656+ if ( rule . argType === 'jsonata' ) {
657+ ruleValue = RED . util . evaluateJSONataExpression ( ruleValue , msg ) ;
658+ } else {
659+ ruleValue = RED . util . evaluateNodeProperty ( ruleValue , rule . argType , NODE , msg ) ;
660+ }
661+ }
662662
663- if ( ruleValue == '' || ruleValue == undefined ) {
664- ruleValue = "\'\'" ;
665- }
666- if ( rule . valueType == 'Iso8601Date' ) {
667- opCheck = operators [ rule . operator ] ( new Date ( ruleValue ) , new Date ( attributeValue ) ) ;
668- } else {
669- opCheck = operators [ rule . operator ] ( ruleValue , attributeValue ) ;
670- }
671- if ( opCheck ) {
672- // sendDebug(NODE.attributeId+"=\""+attributeValue+"\", ("+idx+")port success")
673- RED . util . setMessageProperty ( msg , 'payload' , attributeValue ) ;
674- onward . push ( msg ) ;
675- } else {
676- // sendDebug(NODE.attributeId+"=\""+attributeValue+"\", ("+idx+")port fail")
677- onward . push ( null ) ;
678- }
679- } )
663+ if ( ruleValue == '' || ruleValue == undefined ) {
664+ ruleValue = "\'\'" ;
665+ }
666+ if ( rule . valueType == 'Iso8601Date' ) {
667+ opCheck = operators [ rule . operator ] ( new Date ( ruleValue ) , new Date ( attributeValue ) ) ;
668+ } else {
669+ opCheck = operators [ rule . operator ] ( ruleValue , attributeValue ) ;
670+ }
671+ if ( opCheck ) {
672+ // sendDebug(NODE.attributeId+"=\""+attributeValue+"\", ("+idx+")port success")
673+ RED . util . setMessageProperty ( msg , 'payload' , attributeValue ) ;
674+ onward . push ( msg ) ;
675+ } else {
676+ // sendDebug(NODE.attributeId+"=\""+attributeValue+"\", ("+idx+")port fail")
677+ onward . push ( null ) ;
678+ }
679+ } )
680680
681- if ( NODE . rules . length == 0 ) {
682- RED . util . setMessageProperty ( msg , 'payload' , data ) ;
683- onward . push ( msg ) ;
684- }
685- NODE . send ( onward ) ;
681+ if ( NODE . rules . length == 0 ) {
682+ RED . util . setMessageProperty ( msg , 'payload' , data ) ;
683+ onward . push ( msg ) ;
684+ }
685+ NODE . send ( onward ) ;
686686
687- } )
688- . catch ( function ( err ) {
689- NODE . loggingEditor && console . error ( err ) ;
690- NODE . loggingConsole && NODE . error ( "[error] " + err . errCd + ", " + err . errMsg ) ;
691- } ) ;
687+ } )
688+ . catch ( function ( err ) {
689+ NODE . loggingEditor && console . error ( err ) ;
690+ NODE . loggingConsole && NODE . error ( "[error] " + err . errCd + ", " + err . errMsg ) ;
691+ } ) ;
692692 } else {
693693 NODE . loggingEditor && NODE . warn ( "[SmartThings] Action:" + NODE . name || NODE . alias || NODE . type ) ;
694694
0 commit comments