Предположим, что здесь smartcontract A и B. B уже развернут и имеет функцию BuyService.Пользователь должен вызвать эту функцию, чтобы получить сервис с токенами.A имеет достаточно tokens(Erc20)
.
- Пользователь отправляет TX на A
- А Покупатель BuyService B
- B получает
tokens(erc20)
в A и предоставляет обслуживание Пользователю
Возможна ли эта логика?Если нет, как я могу сделать A?Я не хочу менять код в B. B является очень общим.Пожалуйста поправьте меня.
contract A {
ERC20 token = ERC20(0x...);
B b = B(0x...);
function helpMeBuyService() external {
token.approve(b, 1000);
b.BuyService(msg.sender);
}
}