DSLink SDK for Dart
DSLink SDK for Dart
Getting Started
Prerequisites
Install
pub global activate -sgit https://github.com/IOT-DSA/broker-dart.git # Globally install the DSA Broker
Start a Broker
dsbroker # If you have the pub global executable path setup.
pub global run dsbroker:broker # If you do not have the pub global executable path setup.
You can edit the server configuration using broker.json
. For more information about broker configuration, see this page.
Create a Link
For documentation, see this page. For more examples, see this page.
import "package:dslink/dslink.dart";
LinkProvider link;
main(List<String> args) async {
// Process the arguments and initializes the default nodes.
link = new LinkProvider(args, "Simple-", defaultNodes: {
"Message": {
r"$type": "string", // The type of the node is a string.
r"$writable": "write", // This node's value can be set by a responder link.
"?value": "Hello World" // The default message value.
}
});
// Connect to the broker.
link.connect();
// Save the message when it changes.
link.onValueChange("/Message").listen((_) => link.save());
}
Start a Link
dart path/to/link.dart # Start a link that connects to a broker at http://127.0.0.1:8080/conn
dart path/to/link.dart --broker http://my.broker:8080/conn # Start a link that connects to the specified broker.
Links
Libraries
- dslink
-
Entry Point for the DSLink SDK for the Dart VM
- dslink.broker_discovery
- dslink.browser
-
Main DSLink API for Browsers
- dslink.browser_client
-
Base API for DSA in the Browser
- dslink.client
-
Provides the base APIs for the DSLink SDK on the Dart VM.
- dslink.common
-
Shared APIs between all DSA Components.
- dslink.historian
- dslink.io
-
DSLink SDK IO Utilities
- dslink.nodes
-
Helper Nodes for Responders
- dslink.query
-
DSA Query Implementation
- dslink.requester
-
DSA Requester API
- dslink.responder
-
DSA Responder API
- dslink.server
-
DSA Broker Server
- dslink.socket_client
-
Placeholder for future socket client support.
- dslink.socket_server
-
Placeholder for future socket server support.
- dslink.utils
-
Common Utilities for DSA Components
- dslink.worker
-
API for distributing work across multiple independent isolates.