Smart Meters

Conduit Smart Meters are used to measure resource events (change, use, etc.) either on or off network. Smart Meters are deployed as a part of the Worker Node OS, measure and monitor resources, and interface with a Security Module to store data in Conduit Temporal Ledgers.

Smart Meters support a Predicate language that is used to define significant events and measurements that are communicated via a cryptographic proof to Network Message Queues. From a high level, this language allows developers to define when:

  • A significant event occurs within a workflow that will trigger a state transition,
  • A notification event occurs for human or machine
  • A periodic event occurs with the measurements or metrics related to resource for that period, or
  • A heartbeat that represents a time interval passing without a significant event occurring.

Predicates support the ability to transfer information about an event or measurement to Message Queue subscribers in the form of a Predicate Proof. A Predicate Proof supports both zero knowledge proofs or transparent information accessible by anyone with authority to access the Predicate Proof.

All Smart Meters perform two requisite functions:

  1. The creation of Predicate Proofs upon a Predicate detecting a significant event, and
  2. Providing billing information for use, sale or transfer of a Resource the Smart Meter monitors or measures to a Security Module to calculate the charge and do the Billing and Settlement.

Smart Meters are designed to deal with following types of events:

  • Calendar – events based on time of day, date/time, day in a period, holiday, etc.,
  • Duration – events related to elapsed time; minutes, hours, days, etc.,
  • Message – based on the call of an API, receipt of a message or the addition, change or deleting of a file,
  • Polling – the periodic call of an API, script, URI or process that provides a return, and
  • Signal – events such as a call to API supported by the specific type of Smart Meter.

Smart Meters are written to work for a specific type of Resource or class of Resource. They can be built to work with special devices or to support a particular system. Examples include IoT temperature devices, vehicle operations sensors, point of sale devices, credit card machines, bank account balances for a specific bank, inventory control systems, etc. There are theoretically an infinite number of Smart Meters that can be created because there are an infinite number of Resources that could be controlled by the Conduit Network.

The Conduit Network provides a set of Smart Meters for Worker Nodes and some others for common use cases, primarily as examples. However, Smart Meters are intended to be created by the Conduit Network community.