Metamask-extension: Add Scheduled Tx Submission

Created on 12 Oct 2016  路  5Comments  路  Source: MetaMask/metamask-extension

image

submitted by @pipermerriam

Something like this, really rought UX but hopefully it communicates the idea.
I would think that this UX would only be available if the user explicitely checked a box somewhere enabling it and it would have warnings that it's an experimental feature.
There's more options that could be shown for configuring the scheduled transaction but this is basically the simplest UX possible. Added fields would be things like controlling the fee amount, transaction gas, as well as scheduling based on block number rather than time.

N00-needsDesign T01-enhancement T03-discussion

Most helpful comment

Hey, I'm with ChronoLogic, after brief discussion with @danfinlay we would like to reboot this idea.

Ethereum-Alarm-Clock is operating on the mainnet since 24th of August 2018. Contracts have been audited by @bokkypoobah and report is available here.

So far the protocol is integrated with MyCrypto wallet more info here and our in-house DApp at https://app.chronologic.network. Our team provided the integration by creating PR to MyCrypto repository and activly improve the UI/UX for "Send later" functionality (https://github.com/MyCryptoHQ/MyCrypto/pull/1343, https://github.com/MyCryptoHQ/MyCrypto/pull/2225, https://github.com/MyCryptoHQ/MyCrypto/pull/2228 and other smaller ones)

At the time of writing EAC has successfully transffered over 1100ETH (current amount can be check on https://www.ethereum-alarm-clock.com)

How EAC protocol works:

TL;DR;

  • Users are locking ETH or tokens or just calldata on the smart contract deployed by EAC protocol with necessary parameters like time of execution, bounty...
  • Decentralized network of TimeNodes (relayers) coordinating and executing those transactions

Full explanation with deep dive talk recorded during EthCC here

ChronoLogic delivered whole suite of software required to run and facilitate the protocol:

  • audited smart contracts
  • js libraries for integration (https://github.com/ethereum-alarm-clock)
  • TimeNode nodes for executing transactions as

    • js library (https://github.com/ethereum-alarm-clock/timenode-core)

    • CLI (https://github.com/ethereum-alarm-clock/cli)

    • TimeNode (electron based app) (https://github.com/chronologic/eth-alarm-clock-dapp/releases)

TimeNode networks open for everyone to join and provide the service. We currently working on making it available on DappNode distro/PM.

Our team (@bagaric and @Kuzirashi) can start working on proposal for UI and implementation ASAP.

Happy to answer any questions 馃殌

All 5 comments

Use cases I know of thus far:

  1. Scheduling your purchase into a crowdsale/ICO to be executed when the sale begins.
  2. Scheduling claiming your winnings from something like a prediction market (or any other applications which requires you to resolve something at a later time).
  3. Scheduling any payment to be executed at some later time/date.

New use case:

Cryptokitties uses reverse dutch auctions for selling cats. In a reverse dutch, when you bid is what you bid, and sometimes my desired bid is a time I'll be unavailable/asleep.

In times like these, I'd like to schedule a tx to send. Ideally, the nonce-incrementing would be done at the scheduled time, but I get there's a few implementation options with different tradeoffs here:

  • A: Either it's signed & submitted locally (your computer must be on at that time)
  • B: It is pre-signed and submitted by a remote service (no txs can be sent until then)
  • C: It is signed with a remote key (only give up trust for an account)
  • D: We enable a special type of contract account that supports scheduling transactions with ether alarm clock or something.

The people at Chronologic are currently working on getting Alarm Clock rebooted. I'm helping their devs with the bits of contract work necessary to get the contracts working again. If you guys are interested in this route we should talk.

Hey, I'm with ChronoLogic, after brief discussion with @danfinlay we would like to reboot this idea.

Ethereum-Alarm-Clock is operating on the mainnet since 24th of August 2018. Contracts have been audited by @bokkypoobah and report is available here.

So far the protocol is integrated with MyCrypto wallet more info here and our in-house DApp at https://app.chronologic.network. Our team provided the integration by creating PR to MyCrypto repository and activly improve the UI/UX for "Send later" functionality (https://github.com/MyCryptoHQ/MyCrypto/pull/1343, https://github.com/MyCryptoHQ/MyCrypto/pull/2225, https://github.com/MyCryptoHQ/MyCrypto/pull/2228 and other smaller ones)

At the time of writing EAC has successfully transffered over 1100ETH (current amount can be check on https://www.ethereum-alarm-clock.com)

How EAC protocol works:

TL;DR;

  • Users are locking ETH or tokens or just calldata on the smart contract deployed by EAC protocol with necessary parameters like time of execution, bounty...
  • Decentralized network of TimeNodes (relayers) coordinating and executing those transactions

Full explanation with deep dive talk recorded during EthCC here

ChronoLogic delivered whole suite of software required to run and facilitate the protocol:

  • audited smart contracts
  • js libraries for integration (https://github.com/ethereum-alarm-clock)
  • TimeNode nodes for executing transactions as

    • js library (https://github.com/ethereum-alarm-clock/timenode-core)

    • CLI (https://github.com/ethereum-alarm-clock/cli)

    • TimeNode (electron based app) (https://github.com/chronologic/eth-alarm-clock-dapp/releases)

TimeNode networks open for everyone to join and provide the service. We currently working on making it available on DappNode distro/PM.

Our team (@bagaric and @Kuzirashi) can start working on proposal for UI and implementation ASAP.

Happy to answer any questions 馃殌

so in general we never implemented this sort of thing because it blocks later nonces which can be a user experience nightmare

better to readdress when we have a contract account setup

Was this page helpful?
0 / 5 - 0 ratings

Related issues

beether picture beether  路  4Comments

aakilfernandes picture aakilfernandes  路  3Comments

whyrusleeping picture whyrusleeping  路  3Comments

johnerfx picture johnerfx  路  4Comments

estebanmino picture estebanmino  路  3Comments