Introduction
This is an OPC UA experimental Pubsub implementation.
The implementation is based on the foundation of the crate opcua.
State
Currently only standalone subscriber and publisher via UADP are supported, see examples standalone_subscriber and standalone_publisher. The subscriber is tested against open62541
Warning this crate is in prototyping stage! Library interfaces will like change.
Features
- Pubsub Messages
- Standalone Subscription
- Standalone Publisher
- integrated Subscription
- integrated Publisher
- PubSub EventLoop
- Events
- Tokio support
- Discovery Request and Response handling
Protocols
- Udp wit uadp encoding
- Eth with uadp encoding
- MQTT with uadp encoding
- MQTT with json encoding
- AMQP with uadp encoding
- AMQP with json encoding
UADP Messages
- UADP Data Messages
- UADP Delta Messages
- UADP Keepalive Message
- UADP Chunked Messages
- UADP Discovery
- UADP Security
Json Messages
- Json Decoding
- Message
Integration Publisher with opcua server
- PubSubConnection
- PublishedDataSet
- WriterGroup
- DataSetWriter
- Information Model
Integration Subscriber with opcua server
- PubSubConnection
- SubscripedDataSet
- ReaderGroup
- DataSetReader
- Link DataSet with DataSource
- Information Model
WriterGroup
- Raw Structures
- KeepAlive
- DeltaFrames (needs test)
- Max message length
- Events
General
- Conform specs for alle points
- Expand integration tests and add more tests
Configurable Features
- "mqtt" - enables mqtt via paho
- "server-integration" - enables integrates the opcua pubsub with an opcua server, it uses the opcua-server crate.
License
The code is licenced under MPL-2.0. Like all open source code, you use this code at your own risk.