Go to file
Jae Kwon 201bf2374b Update README; Remove GetEvents() from Application 2015-11-16 15:50:26 -08:00
cmd Conform to go-wire 1.0 2015-11-10 12:49:07 -08:00
example Update README; Remove GetEvents() from Application 2015-11-16 15:50:26 -08:00
server Update README; Remove GetEvents() from Application 2015-11-16 15:50:26 -08:00
types Update README; Remove GetEvents() from Application 2015-11-16 15:50:26 -08:00
README.md Update README; Remove GetEvents() from Application 2015-11-16 15:50:26 -08:00

README.md

Tendermint Streaming Protocol (TMSP)

TMSP is a socket protocol, which means applications can be written in any programming language. TMSP is an asynchronous streaming protocol: message responses are written back asynchronously to the platform.

Applications must be deterministic.

Message types

AppendTx

  • Arguments:
    • TxBytes ([]byte)
  • Returns:
    • RetCode (int8)
  • Usage:
    Append and run a transaction. The transaction may or may not be final.

GetHash

  • Returns:
    • RetCode (int8)
    • Hash ([]byte)
  • Usage:
    Return a Merkle root hash of the application state

Commit

  • Returns:
    • RetCode (int8)
  • Usage:
    Finalize all appended transactions

Rollback

  • Returns:
    • RetCode (int8)
  • Usage:
    Roll back to the last commit

SetEventsMode

  • Arguments:
    • EventsMode (int8):
      • EventsModeOff (0): Events are not reported. Used for mempool.
      • EventsModeOn (1): Report events that are listened on.
  • Returns:
    • RetCode (int8)
  • Usage:
    Set event reporting mode for future transactions

AddListener

  • Arguments:
    • EventKey (string)
  • Returns:
    • RetCode (int8)
  • Usage:
    Add event listener callback for events with given key.

RemoveListener

  • Arguments:
    • EventKey (string)
  • Returns:
    • RetCode (int8)
  • Usage:
    Remove event listener callback for events with given key.

Flush

  • Usage:
    Flush the response queue. Applications that implement types.Application need not implement this message -- it's handled by the project.

Info

  • Returns:
    • Data ([]string)
  • Usage:
    Return an array of strings about the application state. Application specific.