Перейти к основному содержанию
Вы можете обращаться к Node RPC прямо из функций Web3 Action. Это позволяет отправлять транзакции в Mainnet или тестнеты и читать on-chain данные автоматически через Web3 Actions. Настройка Web3 Actions для доступа к блокчейну требует минимальной подготовки — одной JavaScript-переменной. Не нужно беспокоиться о копировании/вставке URL-адресов RPC, управлении секретными ключами и т. д. Tenderly позаботится обо всём этом за вас в фоновом режиме. В этом руководстве вы узнаете, как настроить код функции Web3 Action для использования production-ноды Tenderly для доступа к Mainnet.

Node RPC в Context

В Web3 Actions доступ к ноде Tenderly включается через объект context. Подробнее о Context в Web3 Actions. Объект context содержит свойство gateways, которое даёт доступ к методу getGateway(). Этот метод требует один аргумент Network, который используется для указания сети, к которой вы хотите получить доступ. Аргумент Network — это тоже объект, дающий доступ ко всем поддерживаемым сетям в Node RPC:
  • Network.MAINNET
  • Network.GOERLI
  • Network.SEPOLIA
  • Network.HOLESKY
  • Network.POLYGON
  • Network.MUMBAI
  • Network.OPTIMISTIC
  • Network.OPTIMISTIC_GOERLI
  • Network.ARBITRUM_SEPOLIA
  • Network.BASE
  • Network.BASE_GOERLI
  • Network.BOBA_ETHEREUM
  • Network.BOBA_GOERLI
  • Network.BOBA_BINANCE
  • Network.BOBA_BINANCE_RIALTO
Список сетей можно увидеть в npm-пакете @tenderly/actions здесь. Чтобы показать, как всё это работает вместе, вот пример JavaScript-переменной, настроенной на доступ к Mainnet:
example.jsx

Пример функции Web3 Action для доступа к Mainnet

Давайте создадим простой Web3 Action, который будет срабатывать каждый раз, когда в Mainnet майнится новый блок. Каждый раз, когда блок майнится, Web3 Action будет выполнять пользовательский код, также называемый «функцией». Подробнее о функциях Web3 Action. Для простоты приведённая ниже функция будет получать номер последнего заминированного блока и выводить его в консоль. Читайте комментарии, чтобы понять, что делает каждая строка кода.
example.jsx
Далее перейдите в DashboardWeb3 ActionsAdd Action.
Web3 Action set up wizard
  • В качестве Trigger Type выберите Block.
  • В текстовом поле Function вставьте код из примера выше и нажмите Next.
Custom code that is executed when the Web3 Action is triggered
  • Установите Trigger, выбрав сеть. В нашем случае это Mainnet.
  • Также установите Block Period, чтобы сообщить Tenderly, как часто выполнять функцию Web3 Action. Например, если вы укажете 1, Web3 Action будет выполняться каждый раз при майнинге блока.
  • В полях Info добавьте имя для Web3 Action и необязательное описание.
  • Вы также можете задать Destination, куда будете получать уведомления о неудачных выполнениях Web3 Action.
  • Наконец, нажмите Create, чтобы развернуть Web3 Action.
Со страницы Execution History мы видим, что Web3 Action выполняется успешно.
Web3 Action execution history
Вы можете нажать на Execution ID, чтобы увидеть детали выполненного Web3 Action и полезную нагрузку в JSON.

Полезные ресурсы

Для получения дополнительной информации об управлении вашими Web3 Actions и мониторинге ошибок выполнения прочитайте следующие руководства: