什么是 @ethereum-alarm-clock/cli?
@ethereum-alarm-clock/cli 是一个命令行工具,可以让用户使用 Ethereum Alarm Clock 中的定时交易和调度服务,它可以帮助用户在 Ethereum 上创建定时交易,以便将来自动执行。
npm 包的安装
使用 npm 包 @ethereum-alarm-clock/cli 前,我们需要首先在命令行界面中安装这个包。输入以下命令安装:
npm install -g @ethereum-alarm-clock/cli
包的使用
安装好包后,我们可以在命令行中输入以下命令来使用 @ethereum-alarm-clock/cli:
eac command [arguments]
其中,command 可以是以下命令中的一个:
schedule
: 用于一次性交易的调度batches
: 用于批量调度交易transactions
: 用于查询已调度交易的状态
arguments 是与命令相关的参数,其数量和含义取决于命令。
以下是各命令的用法:
schedule
命令
该命令用于一次性交易的调度。
使用 schedule
命令时,需要告诉 EAC (Ethereum Alarm Clock):
- 何时执行交易。
- 执行哪个以太坊交易。
- 交易的 gas 费用是多少。
下面是 schedule
命令的用法:
eac schedule --from ADDRESS --value VALUE --data DATA --gas GAS --start [time] --window [time] --to ADDRESS
其中,必填项是:
--from ADDRESS
: 需要交易的地址。--value VALUE
: 需要交易的数值。--data DATA
: 需要交易的数据。--gas GAS
: 需要交易的 gas 量。
可选项是:
--start [time]
: 交易执行的开始时间(用 UNIX 时间戳表示),默认为当前时间。--window [time]
: 如果在交易开始时间之后的这段时间内无法满足交易,则事务将被自动取消。默认为 60 分钟。--to ADDRESS
: 接收交易的地址。
以下是一个可以在未来一小时内执行交易的样例代码:
eac schedule --from $MY_ADDRESS --value 0 --data '0x' --gas 21000 --start `expr $(date +%s) + 3600` --window 3600 --to $RECEIVER_ADDRESS
batches
命令
该命令可以通过文本文件来为多个交易批量调度。
文本文件中应包含所有的交易参数,以逗号分隔。每一行表示一个交易。
以下是 batches
命令的用法:
eac batches --batchFile FILENAME --window [time] --start [time] --estimateGas
其中,必填项是:
--batchFile FILENAME
: 交易参数列表所在的文本文件。
可选项是:
--window [time]
: 如果在交易开始时间之后的这段时间内无法满足交易,则事务将被自动取消。默认为 60 分钟。--start [time]
: 交易执行的开始时间(用 UNIX 时间戳表示),默认为当前时间。--estimateGas
: 如果给出了此选项,则在发送每个交易之前会首先估算一个合适的 gas 上限。
以下是一个可以从名为 transactions.txt
的文件中读取交易参数的样例代码:
eac batches --batchFile transactions.txt --window 3600 --start `expr $(date +%s) + 3600` --estimateGas
transactions
命令
该命令用于查询已调度的交易的状态。
以下是 transactions
命令的用法:
eac transactions [txhash]
其中,txhash
表示已调度的交易的交易哈希值。
如果未提供 txhash
参数,则将列出所有已调度的交易和它们的状态及调度时间。
以下是一个可以查询特定交易状态的样例代码:
eac transactions 0x1234567890123456789012345678901234567890123456789012345678901234
结论
通过本文的介绍,我们了解了如何使用 @ethereum-alarm-clock/cli 这个 npm 包来管理定时交易和调度服务。我们学会了在命令行中使用 schedule
、batches
和 transactions
命令,以及在每个命令中使用的参数和选项。
此外,我们还给出了一些使用样例代码,以供读者参考。希望本文能帮助到想在以太坊上使用定时交易和调度服务的前端开发者们!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671a630d09270238224d5