Sense Agents
Last updated
Last updated
Sense Agents are software or hardware tools that gather data from the digital or physical world, package it, and send it to subscribers.
The Oz Collector Factory contract is open source - to view the code, visit our GitHub repository: https://github.com/Oz-Networks/oz-protocol-public
The Sense Agent Hub is an application that lets users deploy Sense Agents in their local network. It makes deployment of most Sense Agents as easy as clicking a button, and helps to keep you logged in and connected, so your rewards keep on flowing.
As new Agents become available, they'll be added to the Hub for easy deployment. That means more and more smart devices will be supported on Oz over time.
Data collection has four key steps:
Gather data points from an authoritative source (web page, application, IoT sensor, etc)
Structure data into a format defined by the collector contract
Retrieve the list of subscribers from the Oz chain
Send data to each subscriber on their subscriber list
Data providers are users who use a collector to gather and share data with their subscribers. To become a data provider, users must install or deploy a collector and hold the corresponding collector NFT.
Collector NFTs are used to whitelist data providers and track their reputation.
Subscription Fees
Application teams can subscribe to the data feeds provided by each collector. To ensure maximum control over the data received, application teams can choose which data providers to subscribe to for each collector type.
Developer Fee
Collector developers earn a portion of the subscription fee paid to every data provider using their collector. During the early phases of the protocol, we're working to discover the optimal value of the collector fees.
As of now, the recommended fee amount is 20% of the total subscription fee.
This fee is paid entirely to the collector developer.
During testnet, collector development is permissioned. To start building your own collector, reach out to the Oz team. We'd be excited to help you set up and deploy your own collector to begin gathering and sharing data.
To implement a collector, you'll need the following:
Identify your data source. This can be an existing application, a new application, or a sensor device.
Define your Schema. Define a JSON schema indicating the values you intend to collect.
Define your fee address. This address will receive all collector fees from your data provider subscriptions.
Deploy your collector contract. Get in touch with us to facilitate deployment of your contract
Considerations
Be careful to inform users of the types of data being shared via your collector. Users will send data directly from their collector device to their subscribers securely using HTTPS, but this doesn't necessarily mean you should send PII.
Limit payload sizes. If you intend for your data providers to send data to a large set of data, consider implementing an intermediate scaling solution to receive and propagate signals to a larger set of users.
The collector architecture has three key components:
The collector factory. This is a smart contract deployed on Oz Protocol that manages collector contracts.
Collector contracts. These are individual smart contracts that define each collector. Oz supports an unlimited number of collector contracts. Each collector contract has a corresponding data format.
Collector NFTs. To share data via a collector, users need to hold the corresponding NFT. This token is used to track the user's reputation and whitelist their data feed.