tos_dart_sdk 0.29.0 copy "tos_dart_sdk: ^0.29.0" to clipboard
tos_dart_sdk: ^0.29.0 copied to clipboard

Software Development Kit in Dart to build Apps for the TOS Blockchain.

example/tos_dart_sdk_example.dart

import 'dart:io';

import 'package:tos_dart_sdk/tos_dart_sdk.dart';

Future<void> main() async {
  try {
    // Create a daemon client repository which will be used
    // to interact with a TOS node.
    final daemonClient = DaemonClient(
      endPoint: localhostAddress,
      secureWebSocket: false,
    );

    // You must initiate the connection first.
    daemonClient.connect();

    // You can use the repository to make requests to the daemon.
    final res = await daemonClient.getInfo();
    print('result: $res');

    // You can also use the repository to listen to events.
    daemonClient
      ..onNewBlock((block) {
        print('new block: $block');
      })
      // You can add multiple callbacks for the same event.
      // They will be called in the order they were added.
      ..onNewBlock((block) {
        print('another callback for new block: $block');
      })
      // Here with another events.
      ..onBlockOrdered((block) {
        print('block ordered: $block');
      })
      ..onTransactionAddedInMempool((tx) {
        print('tx added in mempool: $tx');
      })
      ..onTransactionExecuted((tx) {
        print('tx executed: $tx');
      })
      // You can also unsubscribe from the events.
      // This will remove all the callbacks for the event.
      ..unsubscribeFromNewBlock()
      // You can unsubscribe from all the events at once.
      ..unsubscribeFromAll()
      // You can also add callbacks for the connection events ...
      ..onOpen(() {
        print('channel opened');
      })
      ..onClose(() {
        print('channel closed');
      })
      ..onError((error) {
        print('channel error: $error');
      });

    // Close connection and exit
    await Future.delayed(Duration(seconds: 1));
    daemonClient.disconnect();
    exit(0);
  } catch (e) {
    print(e);
    exit(1);
  }
}
0
likes
0
points
200
downloads

Publisher

unverified uploader

Weekly Downloads

Software Development Kit in Dart to build Apps for the TOS Blockchain.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

convert, freezed_annotation, json_annotation, json_rpc_2, jsontool, logging, very_good_analysis, web_socket_client

More

Packages that depend on tos_dart_sdk