首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使智能合同交互自动化

如何使智能合同交互自动化
EN

Ethereum用户
提问于 2021-01-13 09:59:10
回答 2查看 1.6K关注 0票数 0

我向区块链部署了一个智能契约,但功能不多。

我想知道如何与代码交互,例如>合同有2种功能--存款和取款。现在,我不用手动保存和使用100次了,我如何编写自动调用这些函数的代码呢?

假设代码创建了新闻电子钱包,将Ethereum发送到那个钱包,然后,从那个钱包中存入资金并提取它,然后创建新的钱包并重复。

EN

回答 2

Ethereum用户

发布于 2021-01-13 10:27:18

智能契约中的代码不能从区块链中自动调用,必须从外部调用。

这意味着您需要编写一个脚本或一些服务,这些脚本或服务将运行并与您的智能契约交互。一旦您拥有了此服务,您可以根据需要运行它多少次,或者您可以安排它以特定的时间间隔运行。

一个很好的起点是阅读Web3.js,这是一个众所周知的库,可以与Ethereum块链集成。

票数 0
EN

Ethereum用户

发布于 2021-08-13 12:56:51

找到了这个关于如何自动化智能契约的教程

“假设你已经部署了一份智能合同。你希望盖拉托在某一时间调用智能合同。你所需要做的就是部署一个解析器合同,它将告诉盖拉托。”

“嘿,每小时都在这里打电话给这个功能”

下面是函数buy()的一个例子,我希望Gelato调用这个函数。此函数通过Uniswap V2购买ETH:

代码语言:javascript
复制
uint256 public lastBought;
function buy(
    uint256 amountIn,
    uint256 amountOutMin,
    address[] calldata path,
    address to,
    uint256 deadline
  ) external {
    require(block.timestamp >= lastBought + 1 hours);
    IERC20(path[0]).approve(address(router), amountIn);
    router.swapExactTokensForETH(
           amountIn, 
           amountOutMin, 
           path, 
           to,     
           deadline
    );
    lastBought = block.timestamp;
  }

在本教程中有更多的内容。希望能帮上忙!

票数 -3
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/92236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档