This is a contract that make deals with Filecoin storage miners (ie, is a proxy for clients).
addCID
: a way to add cids to its authorized set.It is possible to put funds in a contract that takes care of storing some data for an undetermined period of time (i.e. up until funding is available).
Functions:
depositTo(amount)
: This function adds tokens to the internal balance of the perpetual storage contract.activatePerpetualStorage(file_id)
:
createDealProposal(file_id, ...) ->deal_id
from Bounty contract; and then start listening to the logs (onchain events),
dealAccepted(deal_id)
event, then get the deal_id_start_epoch
and go to step 2,dealTerminated(deal_id)
event is on chain: check internal balance, if there is enough tokens then invokes createDealProposal
from Bounty contract again;current_epoch = deal_id_start_epoch + deal_duration
: check internal balance, if there is enough tokens then invokes createDealProposal
from Bounty contract again.