预言机和智能合约之间定期、重复、交互
Regular, repeating, interaction between an oracle and a smart contract
这只是一个例子。我正在构建这个 dapp,我有一个开始日期和一个结束日期,每天我都想从 oracle 中获取一个随机数。如果在某个时候我每天获得的数字总和超过了阈值,则会向我的后端发送一条 OK 消息 returns。假设我们有 7 天的范围。
第 1 天:
- 我的后端向“智能合约号”发送请求并调用requestOk()方法
- 智能合约Number调用oracle智能合约的gethNumber()方法,传递给return响应的回调
- oracle智能合约发出updateN()事件
- oracle服务获取数据,通过调用UpdateNumber()方法return发送到oracle智能合约
- oracle智能合约使用回调return将数据发送到智能合约Number
- 智能合约号码检查当天收到的号码是否大于阈值。如果它更大,一个 ok 消息 returns 到 backande,否则对第 2 天执行相同的程序,我将新数字添加到第 1 天的数字。最后我比较总和(天数字 1 + 天数 2) 以及阈值等等。
现在我的问题是:第2天必须再次执行的操作可以自动从智能合约编号开始吗?我的意思是,是否有可能创建一种机制,让智能合约 Number 在一周内每天向 oracle 询问一个随机数?或者必须是我的后端要求在第 2 天和一周中的每一天执行相同的操作?
Or must it be my backend asking to do the same operations for day 2 and every day of the week?
是的。
这只是一个例子。我正在构建这个 dapp,我有一个开始日期和一个结束日期,每天我都想从 oracle 中获取一个随机数。如果在某个时候我每天获得的数字总和超过了阈值,则会向我的后端发送一条 OK 消息 returns。假设我们有 7 天的范围。
第 1 天:
- 我的后端向“智能合约号”发送请求并调用requestOk()方法
- 智能合约Number调用oracle智能合约的gethNumber()方法,传递给return响应的回调
- oracle智能合约发出updateN()事件
- oracle服务获取数据,通过调用UpdateNumber()方法return发送到oracle智能合约
- oracle智能合约使用回调return将数据发送到智能合约Number
- 智能合约号码检查当天收到的号码是否大于阈值。如果它更大,一个 ok 消息 returns 到 backande,否则对第 2 天执行相同的程序,我将新数字添加到第 1 天的数字。最后我比较总和(天数字 1 + 天数 2) 以及阈值等等。
现在我的问题是:第2天必须再次执行的操作可以自动从智能合约编号开始吗?我的意思是,是否有可能创建一种机制,让智能合约 Number 在一周内每天向 oracle 询问一个随机数?或者必须是我的后端要求在第 2 天和一周中的每一天执行相同的操作?
Or must it be my backend asking to do the same operations for day 2 and every day of the week?
是的。