Crate noble_example_offchain_worker[][src]

Offchain Worker Example Module

The Offchain Worker Example: A simple noble demonstrating concepts, APIs and structures common to most offchain workers.

Run cargo doc --package noble-example-offchain-worker --open to view this module’s documentation.

Overview

In this example we are going to build a very simplistic, naive and definitely NOT production-ready oracle for BTC/USD price. Offchain Worker (OCW) will be triggered after every block, fetch the current price and prepare either signed or unsigned transaction to feed the result back on chain. The on-chain logic will simply aggregate the results and store last 64 values to compute the average price. Additional logic in OCW is put in place to prevent spamming the network with both signed and unsigned transactions, and custom UnsignedValidator makes sure that there is only one unsigned transaction floating in the network.

Re-exports

pub use $crate::traits::GetNobleVersion as _;

Modules

crypto

Based on the above KeyTypeId we need to generate a noble-specific crypto type wrappers. We can use from supported crypto kinds (sr25519, ed25519 and ecdsa) and augment the types with this noble-specific identifier.

Structs

Module

A public part of the noble.

PricePayload

Payload used by this example crate to hold price data required to submit a transaction.

Enums

Call

Dispatchable calls.

RawEvent

Events for this module.

Constants

KEY_TYPE

Defines application identifier for crypto keys of this module.

Traits

Config

This noble’s configuration trait

Type Definitions

Event

RawEvent specialized for the configuration Config