ZooBC 维基
交易

定时转账

定时转账是由单笔交易设置的一系列付款。付款方只签名一次,每笔付款到期时都由链来执行:工资、订阅费、零用钱,或一笔资助的归属。它可以支付 ZBC 或任何代币。

设置计划

ScheduledTransfer(类型 29)的交易体为 47 字节,声明以下内容:

字段含义
代币 id要支付的资产;0 表示 ZBC
金额每笔付款的金额
间隔两笔付款之间的时间,以秒计
付款次数从 1 到 520
锁定期第一笔付款之前的可选延迟
注资模式0 为归属,1 为拉取(见下文)
取消策略可撤销或不可撤销
结束时间可选

手续费只在创建计划时支付一次。之后各笔付款按间隔进行;每笔付款是否到期按前一个区块的时间戳判断,因此出块者无法把自己的区块时间戳提前,从而把某笔付款拉进该区块。

两种注资模式

沿时间轴的两条通道:归属模式下,一个锁定的箱子在每个刻度释放一笔等额付款;拉取模式下,每笔付款都从付款方扣取,连续四次失败则以取消告终
沿时间轴的两条通道:归属模式下,一个锁定的箱子在每个刻度释放一笔等额付款;拉取模式下,每笔付款都从付款方扣取,连续四次失败则以取消告终
  • 归属(模式 0):创建计划时就锁定全部总额,并一次释放一笔付款。接收方知道钱确实在那里。
  • 拉取(模式 1):不锁定任何资金。每笔付款到期时才从付款方的余额中扣取。连续错过四笔付款后,计划会自动取消。

归属模式的付款与任何入账一样,会经过接收方的分账策略;拉取模式的付款则不会(见 分账策略与交易策略)。

取消与重定向

  • CancelSchedule(类型 30)结束一个计划。付款方只有在计划可撤销时才能取消它。接收方可以随时取消,这也是接收方谢绝一个计划的方式。归属计划被取消时,仍处于锁定状态的资金退还给付款方。
  • ReassignSchedule(类型 31)让接收方把未来的付款重定向到另一个地址。

交易策略只针对 ScheduledTransfer 本身所指定的接收方进行检查,因此即使接收方之后选择拒收付款,后续付款仍会到达它。

计划不做的事

计划不会在网络上寻找便宜的时机:它的手续费在创建时支付,付款按付款方设定的间隔进行。它也不做买卖:它支付的是自己指定的资产,而把一种资产兑换成另一种资产是 兑换报价 和 市场与订单 的工作。

其他形式的付款由其他工具负责。对于应当逐分钟连续归属的资金,见 流动支付(流式支付)。对于在未来某个区块高度或某个事件得到确认时释放的单笔付款,见 触发器与见证。

如果计划中的代币过期,在分配该代币的 ZBC 储备时,仍锁定在归属计划中的单位计入计划的所有者(见 代币维护费(存续))。

另见