@node-i3x/opcua-connector 0.4.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var M=class{constructor(e,t){this.client=e;this._logger=t}client;_logger;async connect(){await this.client.connect()}async disconnect(){await this.client.disconnect()}isConnected(){return this.client.isConnected()}async browseTree(){return this.client.browseTree()}async getNamespaces(){return this.client.getNamespaces()}async getObjectTypes(){return this.client.getObjectTypes()}async readValue(e){return this.client.readValue(e)}async readValues(e){return this.client.readValues(e)}async writeValue(e,t){return this.client.writeValue(e,t)}async readHistory(e,t,s){return this.client.readHistory(e,t,s)}async createMonitoredSubscription(e){return this.client.createMonitoredSubscription(e)}};import{AttributeIds as w,BrowseDirection as v,browseAll as U,coerceNodeId as h,DataType as d,MessageSecurityMode as V,NodeClass as g,OPCUAClient as H,resolveNodeId as T,StatusCodes as z,TimestampsToReturn as F,UserTokenType as E,Variant as k}from"node-opcua";import{NodeClass as b,StatusCodes as A}from"node-opcua";var q={[b.Object]:"Object",[b.Variable]:"Variable",[b.Method]:"Method",[b.ObjectType]:"ObjectType",[b.VariableType]:"VariableType",[b.ReferenceType]:"ReferenceType",[b.DataType]:"DataType",[b.View]:"View"};function R(c,e){if(!c?.name)return"";let t=c.namespaceIndex??0;return`nsu=${e[t]??`ns=${t}`}:${c.name}`}function $(c,e,t){let s=c.nodeClass??b.Unspecified,r=R(c.browseName,t),a="",o=r.match(/^nsu=(.+):([^:]+)$/);if(o)a=o[1];else{let u=c.browseName?.namespaceIndex??0;a=t[u]??""}return{sourceNodeId:c.nodeId.toString(),parentSourceNodeId:e,browseName:c.browseName?.toString()??"",nsuQualifiedName:r,displayName:c.displayName?.text??c.browseName?.toString()??"",nodeClass:q[s]??"Unknown",typeDefinition:c.typeDefinition?c.typeDefinition.toString():null,namespaceUri:a,eventNotifier:c.nodeClass===b.Object?(c.eventNotifier??0)!==0:!1}}function D(c){let e=c.statusCode?.equals(A.Good)??!1;return{value:c.value?.value??null,quality:e?"Good":"Bad",timestamp:c.sourceTimestamp?.toISOString()??c.serverTimestamp?.toISOString()??new Date().toISOString(),statusCode:c.statusCode?.value}}function j(c){return{value:c.value?.value??null,quality:c.statusCode?.equals(A.Good)?"Good":"Bad",timestamp:c.sourceTimestamp?.toISOString()??c.serverTimestamp?.toISOString()??new Date().toISOString()}}async function _(c,e){try{let{ClientSessionOptimized:t}=await import("@sterfive/opcua-optimized-client"),s=new t(c);return e.info("\u2713 @sterfive/opcua-optimized-client activated \u2014 auto-batching, limit-splitting, and coalescing enabled"),s}catch{return e.info("Standard node-opcua client mode. Install @sterfive/opcua-optimized-client for automatic batching and enhanced performance."),c}}var L={None:V.None,Sign:V.Sign,SignAndEncrypt:V.SignAndEncrypt},P=class{constructor(e,t){this.logger=t;this._opts={endpointUrl:e.endpointUrl,securityMode:e.securityMode??"None",applicationName:e.applicationName??"node-i3x",optimizedClient:e.optimizedClient??"auto",browseStrategy:e.browseStrategy??"parallel",browseFilter:e.browseFilter??"application-only",username:e.username,password:e.password}}logger;_client=null;_session=null;_namespaceArray=[];_opts;async connect(){let e=L[this._opts.securityMode]??V.None;this._client=H.create({applicationName:this._opts.applicationName,securityMode:e,connectionStrategy:{initialDelay:1e3,maxDelay:3e4,maxRetry:1/0},keepSessionAlive:!0,endpointMustExist:!1}),this._client.on("backoff",(a,o)=>{this.logger.warn(`Connection backoff #${a}, retrying in ${o}ms`)}),this._client.on("connection_reestablished",()=>{this.logger.info("OPC UA connection re-established")}),this.logger.info(`Connecting to ${this._opts.endpointUrl}...`),await this._client.connect(this._opts.endpointUrl);let t=this._opts.username&&this._opts.password?{type:E.UserName,userName:this._opts.username,password:this._opts.password}:void 0,s=await this._client.createSession(t);this._opts.optimizedClient!=="disabled"&&(s=await _(s,this.logger)),this._session=s;let r=await s.read({nodeId:h("i=2255"),attributeId:w.Value});this._namespaceArray=r.value?.value??[],this.logger.info("OPC UA session created")}async disconnect(){if(this._session){try{await this._session.close()}catch{}this._session=null}if(this._client){try{await this._client.disconnect()}catch{}this._client=null}this.logger.info("OPC UA disconnected")}isConnected(){return this._session!==null&&!this._session.isReconnecting}get session(){if(!this._session)throw new Error("OPC UA session not connected");return this._session}_makeBrowseDescriptions(e){return e.map(t=>({nodeId:h(t),browseDirection:v.Forward,includeSubtypes:!0,referenceTypeId:T("HierarchicalReferences"),resultMask:63,requestedMaxReferencesPerNode:0}))}async _browseSingleNode(e){let t=this._makeBrowseDescriptions([e])[0],s=await this.session.browse(t),r=[...s.references??[]],a=1,o=s.continuationPoint;for(;o;){let u=await this.session.browseNext(o,!1);a++,r.push(...u.references??[]),o=u.continuationPoint}return{refs:r,txCount:a}}async _bfsBrowse(e,t,s){let r=performance.now(),a=[],o=new Set,u=0,n=[{nodeId:e,parentId:null}],i=this._opts.browseStrategy!=="browseAll",p=new Set;for(;n.length>0;){let l=n.filter(f=>!o.has(f.nodeId));for(let f of l)o.add(f.nodeId);if(l.length===0)break;let y;if(i)y=await Promise.all(l.map(f=>this._browseSingleNode(f.nodeId)));else{let f=this._makeBrowseDescriptions(l.map(C=>C.nodeId)),N=await U(this.session,f);u+=1,y=N.map(C=>({refs:C.references??[],txCount:0}))}let m=[],I=new Set;for(let f=0;f<l.length;f++){let N=l[f],{refs:C,txCount:B}=y[f];u+=B;for(let O of C){let S=O.nodeId.toString();if(!o.has(S)){if(!p.has(S)){p.add(S);let x=t(O,N.nodeId);x!==null&&a.push(x)}(!s||s(O,N.nodeId))&&(I.has(S)||(I.add(S),m.push({nodeId:S,parentId:N.nodeId})))}}}n=m}return{items:a,txCount:u,ms:performance.now()-r}}async browseTree(){let e=T("ObjectsFolder").toString(),t=this._opts.browseFilter??"application-only",{items:s,txCount:r,ms:a}=await this._bfsBrowse(e,(u,n)=>$(u,n===e?null:n,this._namespaceArray),(u,n)=>{if(u.nodeClass!==g.Object&&u.nodeClass!==g.Variable)return!1;if(n===e){if(t==="all")return!0;if(t==="application-only")return(u.browseName?.namespaceIndex??0)!==0;let i=u.nodeId.toString(),p=u.browseName?.name??"";return t.some(l=>l===i||l===p)}return!0}),o=this._opts.browseStrategy!=="browseAll"?"parallel":"browseAll";return this.logger.info(`Browse tree: ${s.length} nodes in ${a.toFixed(0)}ms (strategy=${o}, transactions=${r})`),s}async getObjectTypes(){let{items:e,txCount:t,ms:s}=await this._bfsBrowse(T("ObjectTypesFolder").toString(),(o,u)=>{let n=o.browseName?.namespaceIndex??0,i=this._namespaceArray[n]??"";return{sourceNodeId:o.nodeId.toString(),parentSourceNodeId:u,browseName:o.browseName?.toString()??"",displayName:o.displayName?.text??"",namespaceUri:i}},()=>!0),r=this._opts.browseStrategy!=="browseAll"?"parallel":"browseAll";this.logger.info(`Browse object types: ${e.length} types in ${s.toFixed(0)}ms (strategy=${r}, transactions=${t})`);let a=[];for(let o of e)if(o.sourceNodeId.startsWith("ns=0;"))a.push(o);else{let u=await this._browseTypeMembers(o.sourceNodeId);a.push({...o,members:u})}return a}async _browseTypeMembers(e){let{refs:t}=await this._browseSingleNode(e),s=[],r=[];for(let n of t)n.nodeClass!==g.Variable&&n.nodeClass!==g.Object&&n.nodeClass!==g.Method||n.nodeClass===g.Variable&&r.push(n);let a=new Map;if(r.length>0){let n=r.map(i=>({nodeId:i.nodeId,attributeId:w.DataType}));try{let i=await this.session.read(n),p=Array.isArray(i)?i:[i];for(let l=0;l<r.length;l++){let y=r[l].nodeId.toString(),m=p[l]?.value?.value;a.set(y,m?m.toString():null)}}catch{}}let o=new Map,u=t.filter(n=>n.nodeClass===g.Variable||n.nodeClass===g.Object||n.nodeClass===g.Method);if(u.length>0){let n=u.map(i=>({nodeId:i.nodeId,browseDirection:v.Forward,includeSubtypes:!0,referenceTypeId:T("HasModellingRule"),resultMask:63,requestedMaxReferencesPerNode:0}));try{let i=await U(this.session,n);for(let p=0;p<u.length;p++){let l=u[p].nodeId.toString(),y=i[p]?.references?.[0];o.set(l,y?.displayName?.text??null)}}catch{}}for(let n of u){let i=n.nodeId.toString();s.push({browseName:n.browseName?.name??n.browseName?.toString()??"",displayName:n.displayName?.text??"",nodeClass:n.nodeClass===g.Variable?"Variable":n.nodeClass===g.Object?"Object":"Method",dataType:a.get(i)??null,modellingRule:o.get(i)??null})}return s}async getNamespaces(){return this._namespaceArray.map((e,t)=>({uri:e,displayName:e.split("/").pop()??`ns${t}`}))}async readValue(e){let t=await this.session.read({nodeId:h(e),attributeId:w.Value});return D(t)}async readValues(e){if(e.length===0)return[];let t=e.map(a=>({nodeId:h(a),attributeId:w.Value})),s=await this.session.read(t);return(Array.isArray(s)?s:[s]).map(D)}async writeValue(e,t){let s=h(e),r=await this.session.read([{nodeId:s,attributeId:w.DataType},{nodeId:s,attributeId:w.Value}]),a=Array.isArray(r)?r:[r],o=a[0]?.value?.value,u=a[1],n=d.Null;if(o){let m=typeof o=="object"?o.value??0:Number(o);m>=1&&m<=25?n=m:u?.value?.value!==void 0&&(n=u.value.dataType??d.Null)}let i=t;try{i=this._coerceToDataType(t,n)}catch(m){let I=`Write coercion failed for ${e}: targetDataType=${d[n]}(${n}) jsType=${typeof t} jsValue=${JSON.stringify(t)} error=${m}`;throw this.logger.warn(I),new Error(I)}let p={nodeId:s,attributeId:w.Value,value:{value:new k({dataType:n!==d.Null?n:this._inferDataType(i),value:i})}};this.logger.debug(`writeValue: nodeId=${e} targetDataType=${d[n]} jsType=${typeof t} \u2192 coerced=${JSON.stringify(i)}`);let l=await this.session.write(p),y=Array.isArray(l)?l[0]:l;if(y&&!y.equals(z.Good)){let m=`Write failed: ${y.toString()} | nodeId=${e} targetDataType=${d[n]}(${n}) inputValue=${JSON.stringify(t)} (${typeof t}) coercedValue=${JSON.stringify(i)} (${typeof i})`;throw this.logger.warn(m),new Error(m)}}_coerceToDataType(e,t){switch(t){case d.Boolean:return typeof e=="boolean"?e:typeof e=="number"?e!==0:typeof e=="string"?e.toLowerCase()==="true"||e==="1":!!e;case d.SByte:case d.Byte:case d.Int16:case d.UInt16:case d.Int32:case d.UInt32:return Math.trunc(Number(e));case d.Int64:case d.UInt64:return Array.isArray(e)?e:[0,Math.trunc(Number(e))];case d.Float:case d.Double:return Number(e);case d.String:return String(e);case d.DateTime:return e instanceof Date?e:typeof e=="string"||typeof e=="number"?new Date(e):e;case d.ByteString:return Buffer.isBuffer(e)?e:typeof e=="string"?Buffer.from(e,"base64"):e;case d.Null:default:return e}}_inferDataType(e){return typeof e=="number"?d.Double:typeof e=="boolean"?d.Boolean:typeof e=="string"?d.String:e instanceof Date?d.DateTime:d.Null}async readHistory(e,t,s){let a=await this.session.readHistoryValue(h(e),t,s);return(a.historyData?a.historyData?.dataValues??[]:[]).map(j)}async callMethod(e,t,s){let r={objectId:h(e),methodId:h(t),inputArguments:s.map(o=>new k({dataType:d.Null,value:o}))};return(await this.session.call(r)).outputArguments??null}async createMonitoredSubscription(e){let t=await this.session.createSubscription2({requestedPublishingInterval:e.publishingIntervalMs,requestedLifetimeCount:100,requestedMaxKeepAliveCount:10,maxNotificationsPerPublish:0,publishingEnabled:!0,priority:10}),s=null,r=new Map,a=`opcua-sub-${Date.now()}`,o=this.logger;return o.info(`OPC UA CreateSubscription id=${a} publishingInterval=${e.publishingIntervalMs}ms`),{id:a,async addItems(n){let i=n.filter(l=>!r.has(l));if(i.length===0)return;let p=await Promise.all(i.map(l=>t.monitor({nodeId:h(l),attributeId:w.Value},{samplingInterval:e.publishingIntervalMs,discardOldest:!0,queueSize:10},F.Both)));for(let l=0;l<i.length;l++){let y=i[l],m=p[l];m.on("changed",I=>{if(s){let f=D(I);s(y,f.value,f.quality,f.timestamp)}}),r.set(y,m)}o.info(`OPC UA CreateMonitoredItems: ${i.length} items added (total=${r.size})`)},async removeItems(n){let i=n.map(p=>({id:p,item:r.get(p)})).filter(p=>p.item!=null);await Promise.all(i.map(({id:p,item:l})=>(r.delete(p),l.terminate().catch(()=>{}))))},onDataChange(n){s=n},async close(){try{await t.terminate()}catch{}r.clear()}}}};export{P as OpcUaClient,M as OpcUaDataSourceAdapter,R as qualifiedNameToNsu,_ as wrapSessionIfOptimized};
1
+ var M=class{constructor(e,t){this.client=e;this._logger=t}client;_logger;async connect(){await this.client.connect()}async disconnect(){await this.client.disconnect()}isConnected(){return this.client.isConnected()}async browseTree(){return this.client.browseTree()}async getNamespaces(){return this.client.getNamespaces()}async getObjectTypes(){return this.client.getObjectTypes()}async readValue(e){return this.client.readValue(e)}async readValues(e){return this.client.readValues(e)}async writeValue(e,t){return this.client.writeValue(e,t)}async readHistory(e,t,s){return this.client.readHistory(e,t,s)}async createMonitoredSubscription(e){return this.client.createMonitoredSubscription(e)}};import{AttributeIds as I,BrowseDirection as v,browseAll as U,coerceNodeId as w,DataType as p,MessageSecurityMode as V,NodeClass as g,OPCUAClient as F,resolveNodeId as D,StatusCodes as H,TimestampsToReturn as z,UserTokenType as E,Variant as k}from"node-opcua";import{NodeClass as h,StatusCodes as A}from"node-opcua";var q={[h.Object]:"Object",[h.Variable]:"Variable",[h.Method]:"Method",[h.ObjectType]:"ObjectType",[h.VariableType]:"VariableType",[h.ReferenceType]:"ReferenceType",[h.DataType]:"DataType",[h.View]:"View"};function R(a,e){if(!a?.name)return"";let t=a.namespaceIndex??0;return`nsu=${e[t]??`ns=${t}`}:${a.name}`}function $(a,e,t){let s=a.nodeClass??h.Unspecified,o=R(a.browseName,t),l="",c=o.match(/^nsu=(.+):([^:]+)$/);if(c)l=c[1];else{let d=a.browseName?.namespaceIndex??0;l=t[d]??""}return{sourceNodeId:a.nodeId.toString(),parentSourceNodeId:e,browseName:a.browseName?.toString()??"",nsuQualifiedName:o,displayName:a.displayName?.text??a.browseName?.toString()??"",nodeClass:q[s]??"Unknown",typeDefinition:a.typeDefinition?a.typeDefinition.toString():null,namespaceUri:l,eventNotifier:a.nodeClass===h.Object?(a.eventNotifier??0)!==0:!1}}function T(a){let e=a.statusCode?.equals(A.Good)??!1;return{value:a.value?.value??null,quality:e?"Good":"Bad",timestamp:a.sourceTimestamp?.toISOString()??a.serverTimestamp?.toISOString()??new Date().toISOString(),statusCode:a.statusCode?.value}}function j(a){return{value:a.value?.value??null,quality:a.statusCode?.equals(A.Good)?"Good":"Bad",timestamp:a.sourceTimestamp?.toISOString()??a.serverTimestamp?.toISOString()??new Date().toISOString()}}async function _(a,e){try{let{ClientSessionOptimized:t}=await import("@sterfive/opcua-optimized-client"),s=new t(a);return e.info("\u2713 @sterfive/opcua-optimized-client activated \u2014 auto-batching, limit-splitting, and coalescing enabled"),s}catch{return e.info("Standard node-opcua client mode. Install @sterfive/opcua-optimized-client for automatic batching and enhanced performance."),a}}var L={None:V.None,Sign:V.Sign,SignAndEncrypt:V.SignAndEncrypt},P=class{constructor(e,t){this.logger=t;this._opts={endpointUrl:e.endpointUrl,securityMode:e.securityMode??"None",applicationName:e.applicationName??"node-i3x",optimizedClient:e.optimizedClient??"auto",browseStrategy:e.browseStrategy??"parallel",browseFilter:e.browseFilter??"application-only",username:e.username,password:e.password}}logger;_client=null;_session=null;_namespaceArray=[];_opts;async connect(){let e=L[this._opts.securityMode]??V.None;this._client=F.create({applicationName:this._opts.applicationName,securityMode:e,connectionStrategy:{initialDelay:1e3,maxDelay:3e4,maxRetry:1/0},keepSessionAlive:!0,endpointMustExist:!1}),this._client.on("backoff",(l,c)=>{this.logger.warn(`Connection backoff #${l}, retrying in ${c}ms`)}),this._client.on("connection_reestablished",()=>{this.logger.info("OPC UA connection re-established")}),this.logger.info(`Connecting to ${this._opts.endpointUrl}...`),await this._client.connect(this._opts.endpointUrl);let t=this._opts.username&&this._opts.password?{type:E.UserName,userName:this._opts.username,password:this._opts.password}:void 0,s=await this._client.createSession(t);this._opts.optimizedClient!=="disabled"&&(s=await _(s,this.logger)),this._session=s;let o=await s.read({nodeId:w("i=2255"),attributeId:I.Value});this._namespaceArray=o.value?.value??[],this.logger.info("OPC UA session created")}async disconnect(){if(this._session){try{await this._session.close()}catch{}this._session=null}if(this._client){try{await this._client.disconnect()}catch{}this._client=null}this.logger.info("OPC UA disconnected")}isConnected(){return this._session!==null&&!this._session.isReconnecting}get session(){if(!this._session)throw new Error("OPC UA session not connected");return this._session}_makeBrowseDescriptions(e){return e.map(t=>({nodeId:w(t),browseDirection:v.Forward,includeSubtypes:!0,referenceTypeId:D("HierarchicalReferences"),resultMask:63,requestedMaxReferencesPerNode:0}))}async _browseSingleNode(e){let t=this._makeBrowseDescriptions([e])[0],s=await this.session.browse(t),o=[...s.references??[]],l=1,c=s.continuationPoint;for(;c;){let d=await this.session.browseNext(c,!1);l++,o.push(...d.references??[]),c=d.continuationPoint}return{refs:o,txCount:l}}async _bfsBrowse(e,t,s){let o=performance.now(),l=[],c=new Set,d=0,n=[{nodeId:e,parentId:null}],r=this._opts.browseStrategy!=="browseAll",m=new Set;for(;n.length>0;){let i=n.filter(y=>!c.has(y.nodeId));for(let y of i)c.add(y.nodeId);if(i.length===0)break;let u;if(r)u=await Promise.all(i.map(y=>this._browseSingleNode(y.nodeId)));else{let y=this._makeBrowseDescriptions(i.map(C=>C.nodeId)),N=await U(this.session,y);d+=1,u=N.map(C=>({refs:C.references??[],txCount:0}))}let f=[],b=new Set;for(let y=0;y<i.length;y++){let N=i[y],{refs:C,txCount:B}=u[y];d+=B;for(let O of C){let S=O.nodeId.toString();if(!c.has(S)){if(!m.has(S)){m.add(S);let x=t(O,N.nodeId);x!==null&&l.push(x)}(!s||s(O,N.nodeId))&&(b.has(S)||(b.add(S),f.push({nodeId:S,parentId:N.nodeId})))}}}n=f}return{items:l,txCount:d,ms:performance.now()-o}}async browseTree(){let e=D("ObjectsFolder").toString(),t=this._opts.browseFilter??"application-only",{items:s,txCount:o,ms:l}=await this._bfsBrowse(e,(d,n)=>$(d,n===e?null:n,this._namespaceArray),(d,n)=>{if(d.nodeClass!==g.Object&&d.nodeClass!==g.Variable)return!1;if(n===e){if(t==="all")return!0;if(t==="application-only")return(d.browseName?.namespaceIndex??0)!==0;let r=d.nodeId.toString(),m=d.browseName?.name??"";return t.some(i=>i===r||i===m)}return!0}),c=this._opts.browseStrategy!=="browseAll"?"parallel":"browseAll";return this.logger.info(`Browse tree: ${s.length} nodes in ${l.toFixed(0)}ms (strategy=${c}, transactions=${o})`),s}async getObjectTypes(){let{items:e,txCount:t,ms:s}=await this._bfsBrowse(D("ObjectTypesFolder").toString(),(u,f)=>{let b=u.browseName?.namespaceIndex??0,y=this._namespaceArray[b]??"";return{sourceNodeId:u.nodeId.toString(),parentSourceNodeId:f,browseName:u.browseName?.toString()??"",displayName:u.displayName?.text??"",namespaceUri:y}},()=>!0),o=this._opts.browseStrategy!=="browseAll"?"parallel":"browseAll";this.logger.info(`Browse object types: ${e.length} types in ${s.toFixed(0)}ms (strategy=${o}, transactions=${t})`);let l=performance.now(),c=new Set,d=[],n=[];for(let u of e)c.has(u.sourceNodeId)||(c.add(u.sourceNodeId),u.sourceNodeId.startsWith("ns=0;")?d.push(u):n.push(u));let r=await Promise.all(n.map(u=>this._browseTypeMembers(u.sourceNodeId).then(f=>({...u,members:f}),()=>u))),m=[...d,...r],i=performance.now()-l;return this.logger.info(`Enriched ${n.length} types with members in ${i.toFixed(0)}ms`),m}async _browseTypeMembers(e){let{refs:t}=await this._browseSingleNode(e),s=[],o=[];for(let n of t)n.nodeClass!==g.Variable&&n.nodeClass!==g.Object&&n.nodeClass!==g.Method||n.nodeClass===g.Variable&&o.push(n);let l=new Map;if(o.length>0){let n=o.map(r=>({nodeId:r.nodeId,attributeId:I.DataType}));try{let r=await this.session.read(n),m=Array.isArray(r)?r:[r];for(let i=0;i<o.length;i++){let u=o[i].nodeId.toString(),f=m[i]?.value?.value;l.set(u,f?f.toString():null)}}catch{}}let c=new Map,d=t.filter(n=>n.nodeClass===g.Variable||n.nodeClass===g.Object||n.nodeClass===g.Method);if(d.length>0){let n=d.map(r=>({nodeId:r.nodeId,browseDirection:v.Forward,includeSubtypes:!0,referenceTypeId:D("HasModellingRule"),resultMask:63,requestedMaxReferencesPerNode:0}));try{let r=await U(this.session,n);for(let m=0;m<d.length;m++){let i=d[m].nodeId.toString(),u=r[m]?.references?.[0];c.set(i,u?.displayName?.text??null)}}catch{}}for(let n of d){let r=n.nodeId.toString();s.push({browseName:n.browseName?.name??n.browseName?.toString()??"",displayName:n.displayName?.text??"",nodeClass:n.nodeClass===g.Variable?"Variable":n.nodeClass===g.Object?"Object":"Method",dataType:l.get(r)??null,modellingRule:c.get(r)??null})}return s}async getNamespaces(){return this._namespaceArray.map((e,t)=>({uri:e,displayName:e.split("/").pop()??`ns${t}`}))}async readValue(e){let t=await this.session.read({nodeId:w(e),attributeId:I.Value});return T(t)}async readValues(e){if(e.length===0)return[];let t=e.map(l=>({nodeId:w(l),attributeId:I.Value})),s=await this.session.read(t);return(Array.isArray(s)?s:[s]).map(T)}async writeValue(e,t){let s=w(e),o=await this.session.read([{nodeId:s,attributeId:I.DataType},{nodeId:s,attributeId:I.Value}]),l=Array.isArray(o)?o:[o],c=l[0]?.value?.value,d=l[1],n=p.Null;if(c){let f=typeof c=="object"?c.value??0:Number(c);f>=1&&f<=25?n=f:d?.value?.value!==void 0&&(n=d.value.dataType??p.Null)}let r=t;try{r=this._coerceToDataType(t,n)}catch(f){let b=`Write coercion failed for ${e}: targetDataType=${p[n]}(${n}) jsType=${typeof t} jsValue=${JSON.stringify(t)} error=${f}`;throw this.logger.warn(b),new Error(b)}let m={nodeId:s,attributeId:I.Value,value:{value:new k({dataType:n!==p.Null?n:this._inferDataType(r),value:r})}};this.logger.debug(`writeValue: nodeId=${e} targetDataType=${p[n]} jsType=${typeof t} \u2192 coerced=${JSON.stringify(r)}`);let i=await this.session.write(m),u=Array.isArray(i)?i[0]:i;if(u&&!u.equals(H.Good)){let f=`Write failed: ${u.toString()} | nodeId=${e} targetDataType=${p[n]}(${n}) inputValue=${JSON.stringify(t)} (${typeof t}) coercedValue=${JSON.stringify(r)} (${typeof r})`;throw this.logger.warn(f),new Error(f)}}_coerceToDataType(e,t){switch(t){case p.Boolean:return typeof e=="boolean"?e:typeof e=="number"?e!==0:typeof e=="string"?e.toLowerCase()==="true"||e==="1":!!e;case p.SByte:case p.Byte:case p.Int16:case p.UInt16:case p.Int32:case p.UInt32:return Math.trunc(Number(e));case p.Int64:case p.UInt64:return Array.isArray(e)?e:[0,Math.trunc(Number(e))];case p.Float:case p.Double:return Number(e);case p.String:return String(e);case p.DateTime:return e instanceof Date?e:typeof e=="string"||typeof e=="number"?new Date(e):e;case p.ByteString:return Buffer.isBuffer(e)?e:typeof e=="string"?Buffer.from(e,"base64"):e;case p.Null:default:return e}}_inferDataType(e){return typeof e=="number"?p.Double:typeof e=="boolean"?p.Boolean:typeof e=="string"?p.String:e instanceof Date?p.DateTime:p.Null}async readHistory(e,t,s){let l=await this.session.readHistoryValue(w(e),t,s);return(l.historyData?l.historyData?.dataValues??[]:[]).map(j)}async callMethod(e,t,s){let o={objectId:w(e),methodId:w(t),inputArguments:s.map(c=>new k({dataType:p.Null,value:c}))};return(await this.session.call(o)).outputArguments??null}async createMonitoredSubscription(e){let t=await this.session.createSubscription2({requestedPublishingInterval:e.publishingIntervalMs,requestedLifetimeCount:100,requestedMaxKeepAliveCount:10,maxNotificationsPerPublish:0,publishingEnabled:!0,priority:10}),s=null,o=new Map,l=`opcua-sub-${Date.now()}`,c=this.logger;return c.info(`OPC UA CreateSubscription id=${l} publishingInterval=${e.publishingIntervalMs}ms`),{id:l,async addItems(n){let r=n.filter(i=>!o.has(i));if(r.length===0)return;let m=await Promise.all(r.map(i=>t.monitor({nodeId:w(i),attributeId:I.Value},{samplingInterval:e.publishingIntervalMs,discardOldest:!0,queueSize:10},z.Both)));for(let i=0;i<r.length;i++){let u=r[i],f=m[i];f.on("changed",b=>{if(s){let y=T(b);s(u,y.value,y.quality,y.timestamp)}}),o.set(u,f)}c.info(`OPC UA CreateMonitoredItems: ${r.length} items added (total=${o.size})`)},async removeItems(n){let r=n.map(m=>({id:m,item:o.get(m)})).filter(m=>m.item!=null);await Promise.all(r.map(({id:m,item:i})=>(o.delete(m),i.terminate().catch(()=>{}))))},onDataChange(n){s=n},async close(){try{await t.terminate()}catch{}o.clear()}}}};export{P as OpcUaClient,M as OpcUaDataSourceAdapter,R as qualifiedNameToNsu,_ as wrapSessionIfOptimized};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/opcua-adapter.ts","../src/opcua-client.ts","../src/opcua-mapper.ts","../src/optimized.ts"],"mappings":"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","names":["OpcUaDataSourceAdapter","client","_logger","sourceNodeId","sourceNodeIds","value","startTime","endTime","options","AttributeIds","BrowseDirection","browseAll","coerceNodeId","DataType","MessageSecurityMode","NodeClass","OPCUAClient","resolveNodeId","StatusCodes","TimestampsToReturn","UserTokenType","Variant","NodeClass","StatusCodes","NODE_CLASS_NAMES","qualifiedNameToNsu","browseName","namespaceArray","nsIdx","refToSourceNode","ref","parentSourceNodeId","nodeClass","nsuQName","namespaceUri","nsuMatch","dataValueToSource","dv","isGood","dataValueToHistorical","wrapSessionIfOptimized","session","logger","ClientSessionOptimized","optimized","SECURITY_MODES","MessageSecurityMode","OpcUaClient","opts","logger","securityMode","OPCUAClient","count","delay","userIdentity","UserTokenType","session","wrapSessionIfOptimized","nsArrayDv","coerceNodeId","AttributeIds","nodeIds","nodeId","BrowseDirection","resolveNodeId","desc","result","refs","txCount","cp","next","seedNodeId","onRef","shouldRecurse","started","output","visited","totalTx","frontier","useParallel","mapped","wave","item","waveResults","w","descriptions","browseResults","browseAll","r","nextFrontier","queued","i","ref","childId","m","objectsFolderId","filter","items","ms","parentNodeId","refToSourceNode","NodeClass","name","f","strategy","nsIdx","nsUri","enriched","type","members","typeNodeId","variableRefs","dataTypeMap","readItems","dvs","arr","dtValue","modellingRuleMap","memberRefs","mrDescriptions","mrResults","mrRef","uri","idx","dv","dataValueToSource","id","value","nid","readResults","dvArr","dataTypeNodeId","currentDataValue","targetDataType","DataType","dtNum","coercedValue","coerceErr","msg","writeVal","Variant","code","StatusCodes","errMsg","dt","startTime","endTime","resultAny","dataValueToHistorical","objectNodeId","methodNodeId","args","request","a","options","sub","dataChangeCb","monitored","subId","sourceNodeIds","newIds","TimestampsToReturn","toRemove","e","cb"]}
1
+ {"version":3,"sources":["../src/opcua-adapter.ts","../src/opcua-client.ts","../src/opcua-mapper.ts","../src/optimized.ts"],"mappings":"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","names":["OpcUaDataSourceAdapter","client","_logger","sourceNodeId","sourceNodeIds","value","startTime","endTime","options","AttributeIds","BrowseDirection","browseAll","coerceNodeId","DataType","MessageSecurityMode","NodeClass","OPCUAClient","resolveNodeId","StatusCodes","TimestampsToReturn","UserTokenType","Variant","NodeClass","StatusCodes","NODE_CLASS_NAMES","qualifiedNameToNsu","browseName","namespaceArray","nsIdx","refToSourceNode","ref","parentSourceNodeId","nodeClass","nsuQName","namespaceUri","nsuMatch","dataValueToSource","dv","isGood","dataValueToHistorical","wrapSessionIfOptimized","session","logger","ClientSessionOptimized","optimized","SECURITY_MODES","MessageSecurityMode","OpcUaClient","opts","logger","securityMode","OPCUAClient","count","delay","userIdentity","UserTokenType","session","wrapSessionIfOptimized","nsArrayDv","coerceNodeId","AttributeIds","nodeIds","nodeId","BrowseDirection","resolveNodeId","desc","result","refs","txCount","cp","next","seedNodeId","onRef","shouldRecurse","started","output","visited","totalTx","frontier","useParallel","mapped","wave","f","item","waveResults","w","descriptions","browseResults","browseAll","r","nextFrontier","queued","i","ref","childId","m","objectsFolderId","filter","items","ms","parentNodeId","refToSourceNode","NodeClass","name","strategy","nsIdx","nsUri","enrichStart","stdTypes","nonStdTypes","type","memberResults","members","enriched","enrichMs","typeNodeId","variableRefs","dataTypeMap","readItems","dvs","arr","dtValue","modellingRuleMap","memberRefs","mrDescriptions","mrResults","mrRef","uri","idx","dv","dataValueToSource","id","value","nid","readResults","dvArr","dataTypeNodeId","currentDataValue","targetDataType","DataType","dtNum","coercedValue","coerceErr","msg","writeVal","Variant","code","StatusCodes","errMsg","dt","startTime","endTime","resultAny","dataValueToHistorical","objectNodeId","methodNodeId","args","request","a","options","sub","dataChangeCb","monitored","subId","sourceNodeIds","newIds","TimestampsToReturn","toRemove","e","cb"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@node-i3x/opcua-connector",
3
- "version": "0.4.0",
3
+ "version": "0.5.1",
4
4
  "description": "i3X OPC UA adapter — implements IDataSourcePort using node-opcua",
5
5
  "license": "AGPL-3.0-or-later OR LicenseRef-Sterfive-Commercial",
6
6
  "author": "Sterfive SAS <contact@sterfive.com> (https://sterfive.com)",
@@ -57,7 +57,7 @@
57
57
  "typecheck": "tsc --noEmit"
58
58
  },
59
59
  "dependencies": {
60
- "@node-i3x/core": "0.4.0",
60
+ "@node-i3x/core": "0.5.1",
61
61
  "node-opcua": "^2.173.1",
62
62
  "node-opcua-client": "^2.173.1"
63
63
  },