Package Exports
- node-opcua
- node-opcua/lib/client/client_subscription
- node-opcua/lib/client/opcua_client
- node-opcua/lib/client/proxy
- node-opcua/lib/datamodel/datavalue
- node-opcua/lib/datamodel/diagnostic_info
- node-opcua/lib/datamodel/expanded_nodeid
- node-opcua/lib/datamodel/localized_text
- node-opcua/lib/datamodel/nodeclass
- node-opcua/lib/datamodel/nodeclass.js
- node-opcua/lib/datamodel/nodeid
- node-opcua/lib/datamodel/opcua_status_code
- node-opcua/lib/datamodel/qualified_name
- node-opcua/lib/datamodel/variant
- node-opcua/lib/findservers
- node-opcua/lib/misc/crypto_utils
- node-opcua/lib/misc/utils
- node-opcua/lib/opcua_node_ids
- node-opcua/lib/opcua_node_ids.js
- node-opcua/lib/services/browse_service
- node-opcua/lib/services/browse_service.js
- node-opcua/lib/services/read_service
- node-opcua/lib/services/subscription_service
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (node-opcua) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
node-opcua
an implementation of a OPC UA stack fully written in javascript and nodejs
Node-opcua is an full OPC-UA stack written in NodeJS.
Why NodeJS ?
Because nodeJs is a great framework to design asynchronous application.
Getting started
installing node-opcua
$ npm install node-opcuarunning the demo server
$ git clone https://github.com/node-opcua/node-opcua.git
$ cd node-opcua
$ npm install
$ node bin/simple_serverrunning the demo client
$ git clone https://github.com/node-opcua/node-opcua.git
$ cd node-opcua
$ npm install
$ node bin/simple_client.js -e "opc.tcp://opcserver.mAutomation.net:4841" -n="ns=1;s=EVR2.system.RTC_SEC"
Tutorials
API Documentation
- check out the API documentation
Contributing
$ git clone git://github.com/node-opcua/node-opcua.git
$ cd node-opcua
$ npm install
$ npm testSupporting the project
If you like the project, please
.
This will give us full of motivation to carry on and keep working on the roadmap.
Supported Features
| Service | ||
|---|---|---|
| Discovery Service Set | ||
| FindServers() | ✅ | |
| GetEndpoints() | ✅ | |
| RegisterServer() | ✅ | |
| Secure Channel Service Set | ||
| OpenSecureChannel() | ✅ | |
| CloseSecureChannel() | ✅ | |
| Session Service Set | ||
| CreateSession() | ✅ | |
| CloseSession() | ✅ | |
| ActivateSession() | ✅ | |
| Cancel() | ||
| View Service Set | ||
| Browse() | ✅ | |
| BrowseNext() | ✅ | |
| TranslateBrowsePathsToNodeIds() | ✅ | |
| RegisterNodes() | ✅ | |
| UnregisterNodes() | ✅ | |
| Attribute Service Set | ||
| Read() | ✅ | |
| Write() | ✅ | |
| HistoryRead() | ✅ | |
| HistoryUpdate() | 🌒 | |
| MonitoredItems Service Set | ||
| CreateMonitoredItems() | ✅ | |
| ModifyMonitoredItems() | ✅ | |
| SetMonitoringMode() | ✅ | |
| SetTriggering() | 🌑 | |
| DeleteMonitoredItems() | ✅ | |
| Subscription Service Set | ||
| CreateSubscription() | ✅ | |
| ModifySubscription() | ✅ | |
| DeleteSubscriptions() | ✅ | |
| Publish() | ✅ | |
| Republish() | ✅ | |
| TransferSubscriptions() | 🌑 | |
| Node Management Service Set | ||
| AddNodes() | 🌑 | |
| AddReferences() | 🌑 | |
| DeleteNodes() | 🌑 | |
| DeleteReferences() | 🌑 | |
| Query Service Set | ||
| QueryFirst() | 🌑 | |
| QueryNext() | 🌑 |
| Transport Protocol | ||
| Transport | Status | Comment |
| UA-TCP UA-SC UA Binary | ✅ | OPC.TCP - Binary |
| SOAP-HTTP WS-SC UA Binary | 🌑 | HTTP/HTTPS - Binary |
| SOAP-HTTP WS-SC UA XML | 🌑 | |
| SOAP-HTTP WS-SC UA XML-UA Binary | 🌑 | |
| Security Policies | ||
| Policy | Status | Comment |
| None | ✅ | |
| Basic128Rsa15 | ✅ | |
| Basic256 | ✅ | |
| Basic256Sha256 | ✅ | |
| Authentication | Status | Comment |
| Anonymous | ✅ | |
| User Name Password | ✅ | |
| X509 Certificate | 🌑 | |
| client facets | ||
| Base Client Behaviour | ✅ | |
| AddressSpace Lookup | ✅ | |
| Attribute Read | ✅ | |
| DataChange Subscription | ✅ | |
| DataAccess | ✅ | |
| Discovery | ✅ | |
| Event Subscription | ✅ | |
| Method call | ✅ | |
| Historical Access | 🌑 | |
| Advanced Type | ✅ | |
| Programming | 🌑 | |
| Auditing | 🌑 | |
| Redundancy | 🌑 | |
| server profiles | ||
| Core Server | ✅ | |
| Data Access Server | ✅ | |
| Embedded Server | ✅ | |
| Nano Embedded Device Server | ✅ | |
| Micro Embedded Device Server | ✅ | |
| Standard DataChange Subscription Server | ||
| Standard Event Subscription Server | ||
| Standard UA Server | ||
| Redundancy Transparent Server | 🌑 | |
| Redundancy Visible Server | 🌑 | |
| Node Management Server | 🌑 | |
| Auditing Server | 🌑 | |
| Complex Type Server |
Road-map
This are the item we would like to achieve in the next version of the API.
- improved documentation
- Compliance testing and certification (CTT)
- HA Support : supporting the historizing service
- more tutorials
Feedback
if you're using node-opcua in one of your project, please feel free to leave a comment and a quick description in the wiki
if you have a particular wish or found a issue, let us known and create an issue








