Data Oracle is a data provider DAO aiming at offer Data Oracle service for Filecoin Network. The implementation offered deal information on multi chains for users who want to store their data on Filecoin network.
Our v1 release provides the Filecoin data info available on FEVM network.
The Data Oracle provide the following fuctions:
- Data on chain proof
- Data price feed
- Node operator of data validation
Some previous work can be found here:
https://github.com/filswan/flink
https://filecoin.io/blog/posts/filecoin-and-chainlink-integration/
This is the DAO contract to sign transactions. Once a deal has enough signatures
(depending on threshold), the locked funds can be unlocked to the owner.
-
updateThreshold(threshold)change the threshold for signatures -
setFilinkOracle(filinkAddress)changeFilinkConsumercontract address -
setDAOUsers(daoUsers[])change the list of DAO users -
signCarTransaction(cidList[], dealId, network, recipient)
signs a CAR file. Once the number of signatures reaches thethresholdamount, this contract will call therequestDealInfofromFilinkConsumer -
isCarPaymentAvailable(dealId, network, recipient)returnsnumber of signatures >= threshold -
getCarPaymentVotes(dealId, network, recipient)returns number of signatures -
getThreshold()returnsthreshold -
getCidList(dealId, network)returnscidListfor a deal -
getSignatureList(dealId, network)returns the list of signatures for a deal -
preSign(dealId, network, recipient, batchCount) -
sign(dealId, network, cidList[], batchNo) -
signHash(dealId, network, recipient, voteKey) -
getHashKey(dealId, network, recipient, cidList[])