@@ -124,24 +124,34 @@ module.exports = function (RED) {
124124
125125 // step 3 : browse
126126 node . debug ( "nodeIdBrowse:" + nodeIdToBrowse ) ;
127- const browseResult = await session . browse ( nodeIdToBrowse ) ;
128-
129-
130- // step 4 : Read Value and Datatypes
131- for ( const reference of browseResult . references )
132- {
133- var ref_obj = Object . assign ( { } , reference ) ;
134- const dataValue = await session . read ( { nodeId : ref_obj . nodeId , attributeId : opcua . AttributeIds . Value } ) ;
135- ref_obj [ "value" ] = dataValue . value . value ;
136- ref_obj [ "dataType" ] = opcua . DataType [ dataValue . value . dataType ] ;
137- node . add_item ( ref_obj ) ;
127+ try {
128+ const browseResult = await session . browse ( nodeIdToBrowse ) ;
129+
130+
131+ // step 4 : Read Value and Datatypes
132+ for ( const reference of browseResult . references )
133+ {
134+ var ref_obj = Object . assign ( { } , reference ) ;
135+ const dataValue = await session . read ( { nodeId : ref_obj . nodeId , attributeId : opcua . AttributeIds . Value } ) ;
136+ ref_obj [ "value" ] = dataValue . value . value ;
137+ ref_obj [ "dataType" ] = opcua . DataType [ dataValue . value . dataType ] ;
138+ node . add_item ( ref_obj ) ;
139+ }
140+ node . status ( {
141+ fill : "green" ,
142+ shape : "dot" ,
143+ text : "Items: " + node . items . length ,
144+ source : { id : node . id , type : node . type , name : "OPC UA Browser" }
145+ } ) ;
146+ } catch ( err ) {
147+ node_error ( err ) ;
148+ node . status ( {
149+ fill : "yellow" ,
150+ shape : "ring" ,
151+ text : "browse error" ,
152+ source : { id : node . id , type : node . type , name : "OPC UA Browser" }
153+ } ) ;
138154 }
139- node . status ( {
140- fill : "green" ,
141- shape : "dot" ,
142- text : "Items: " + node . items . length ,
143- source : { id : node . id , type : node . type , name : "OPC UA Browser" }
144- } ) ;
145155
146156 //step 5 close session
147157 node . debug ( "close browse session" ) ;
0 commit comments