Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

node-opcua-test-fixtures

node-opcua3MIT0.7.0

pure nodejs OPCUA SDK - module -test-fixtures

OPCUA, opcua, m2m, iot, opc ua, internet of things

readme

node-opcua

an implementation of a OPC UA stack fully written in javascript and nodejs

NPM download NPM version Build Status Build status HitCount

Coverage Status Code Climate

OPC UA Gitter chat Node-opcua is an full OPC-UA stack written in NodeJS.

Flattr us.

Why NodeJS ?

Because nodeJs is a great framework to design asynchronous application.

Getting started

installing node-opcua as a node package

$ npm install node-opcua

installing node-opcua samples as a node package

    $ npm install node-opcua-samples
    $ ./node_modules/.bin/simple_server

or

    $ ./node_modules/.bin/simple_client  -e "opc.tcp://opcserver.mAutomation.net:4841" -n="ns=1;s=EVR2.system.RTC_SEC"

installing node-opcua from source

running the demo server from source

 $ git clone https://github.com/node-opcua/node-opcua.git
 $ cd node-opcua
 $ npm install
 $ node packages/node-opcua-samples/bin/simple_server

running the demo client from source

 $ git clone https://github.com/node-opcua/node-opcua.git
 $ cd node-opcua
 $ npm install
 $ node packages/node-opcua-samples/bin/simple_client.js -e "opc.tcp://opcserver.mAutomation.net:4841" -n="ns=1;s=EVR2.system.RTC_SEC"

Tutorials

API Documentation

Minimum nodejs requirement

  • nodejs version 6.10 or above

Contributing

$ git clone git://github.com/node-opcua/node-opcua.git
$ cd node-opcua
$ npm install
$ npm test

Supporting the project

If you like the project, please Flattr us. This will give us full of motivation to carry on and keep working on the roadmap.

NPM

Project Stats

Getting commercial support

To get commercial support, please contact sterfive

Supported Features

| Service | | | |-----------------------------|-----------------------|---------------------------| | Discovery Service Set | | | | |FindServers() | :white_check_mark: | | |GetEndpoints() | :white_check_mark: | | |RegisterServer() | :white_check_mark: | | |RegisterServer2() | :white_check_mark: | | |FindServersOnNetwork() | :white_check_mark: | | Secure Channel Service Set | | | | |OpenSecureChannel() | :white_check_mark: | | |CloseSecureChannel() | :white_check_mark: | | Session Service Set | | | | |CreateSession() | :white_check_mark: | | |CloseSession() | :white_check_mark: | | |ActivateSession() | :white_check_mark: | | |Cancel() | | | View Service Set | | | | |Browse() | :white_check_mark: | | |BrowseNext() | :white_check_mark: | | |TranslateBrowsePathsToNodeIds() | :white_check_mark:| | |RegisterNodes() | :white_check_mark:| | |UnregisterNodes() |:white_check_mark:| | Attribute Service Set | || | |Read() |:white_check_mark:| | |Write() |:white_check_mark:| | |HistoryRead() |:waxing_crescent_moon:| | |HistoryUpdate() |:waxing_crescent_moon:| |MonitoredItems Service Set | || | |CreateMonitoredItems() |:white_check_mark:| | |ModifyMonitoredItems() |:white_check_mark:| | |SetMonitoringMode() |:white_check_mark:| | |SetTriggering() |:new_moon:| | |DeleteMonitoredItems() |:white_check_mark:| |Subscription Service Set | || | |CreateSubscription() |:white_check_mark:| | |ModifySubscription() |:white_check_mark:| | |DeleteSubscriptions() |:white_check_mark:| | |Publish() |:white_check_mark:| | |Republish() |:white_check_mark:| | |TransferSubscriptions()|:white_check_mark:| |Node Management Service Set | || | |AddNodes() |:new_moon:| | |AddReferences() |:new_moon:| | |DeleteNodes() |:new_moon:| | |DeleteReferences() |:new_moon:| |Query Service Set | || | |QueryFirst() |:new_moon:| | |QueryNext() |:new_moon:|

| | | | |----------------------------------------|:------------------------:|--------------------| | Transport Protocol | | | | Transport | Status | Comment | | UA-TCP UA-SC UA Binary | :white_check_mark: | OPC.TCP - Binary |
| SOAP-HTTP WS-SC UA Binary | :new_moon: | HTTP/HTTPS - Binary|
| SOAP-HTTP WS-SC UA XML | :new_moon: | |
| SOAP-HTTP WS-SC UA XML-UA Binary | :new_moon: | |
| Security Policies | | | | Policy | Status | Comment | | None | :white_check_mark: | |
| Basic128Rsa15 | :white_check_mark: | |
| Basic256 | :white_check_mark: | |
| Basic256Sha256 | :white_check_mark: | |
| Authentication | Status | Comment | | Anonymous |:white_check_mark: | | | User Name Password |:white_check_mark: | | | X509 Certificate |:new_moon: | | | client facets | | | | Base Client Behaviour |:white_check_mark: | | | AddressSpace Lookup |:white_check_mark: | | | Attribute Read |:white_check_mark: | | | DataChange Subscription |:white_check_mark: | | | DataAccess |:white_check_mark: | | | Discovery |:white_check_mark: | | | Event Subscription |:white_check_mark: | | | Method call |:white_check_mark: | | | Historical Access |:first_quarter_moon: | | | Advanced Type |:white_check_mark: | | | Programming |:new_moon: | | | Auditing |:first_quarter_moon: | | | Redundancy |:new_moon: | | | server profiles | | | | Core Server | :white_check_mark: | | | Data Access Server | :white_check_mark: | | | Embedded Server | :white_check_mark: | | | Nano Embedded Device Server | :white_check_mark: | | | Micro Embedded Device Server | :white_check_mark: | | | Standard DataChange Subscription Server| :white_check_mark: | | | Standard Event Subscription Server | :white_check_mark: | | | Standard UA Server | :white_check_mark: | | | Redundancy Transparent Server | :new_moon: | | | Redundancy Visible Server | :new_moon: | | | Node Management Server | :new_moon: | | | Auditing Server | :first_quarter_moon: | | | Complex Type Server | :first_quarter_moon: | | | Session Diagnostics | :white_check_mark: | | | Subscription Diagnostics | :white_check_mark: | | | Alarms & Conditions | :white_check_mark: | |

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)
  • 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