New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add payload creation to the RPC interface #358

Merged
merged 1 commit into from Apr 9, 2016

Conversation

Projects
None yet
2 participants
@zathras-crypto
Copy link

zathras-crypto commented Apr 9, 2016

This PR adds support for payload creation via the RPC interface. The calls are similar to the send transactions, without the requirement for an address or any of the balance checks.

This allows an integrator building transactions via the raw transactions interface to generate the payload via Omni Core.

The internal CreatePayload_function calls are used and the parameters are largely taken from the equivalent calls to send each type of transaction.

Note: this is to compliment calls such as omni_createraw_opreturn where a payload needs to be supplied.

Add payload creation to the RPC interface
Note: this is to compliment the raw Omni transaction calls such as omni_createraw_opreturn where a payload needs to be supplied.
@zathras-crypto

This comment has been minimized.

Copy link

zathras-crypto commented Apr 9, 2016

Also, I left in some sanity checks (eg whether a property being used exists etc) - I'm of split minds on whether we should make the payload creation API completely free of state based checks.

@zathras-crypto

This comment has been minimized.

Copy link

zathras-crypto commented Apr 9, 2016

Oh, and sorry - completely missed the requirement for this in the PR description...

In a nutshell we need to provide payloads when using the raw transactions interface. The initial requirement was raised by Tomas & Adam for OmniWallet, where they would like to delegate payload generation to Omni Core as they're using the raw transactions interface. Additionally this is also useful for the new OmniChest transaction builder - I'm doing payloads in my own library right now but it seems wasteful to duplicate and keep a separate library updated when Omni Core already has payload generation capabilities (they just weren't exposed over RPC until now).

Regarding 0.12, I figure that's not quite there yet and this is something we'd like to run in production ASAP hence the basing on 0.0.10 where we can feel pretty comfortable with the build.

Thanks
Z

@dexX7

This comment has been minimized.

Copy link
Member

dexX7 commented Apr 9, 2016

Wow, this is awesome!

Will test it throughout the day.

@dexX7

This comment has been minimized.

Copy link
Member

dexX7 commented Apr 9, 2016

Also, I left in some sanity checks (eg whether a property being used exists etc) - I'm of split minds on whether we should make the payload creation API completely free of state based checks.

I'd prefer having no checks here, given that the raw transaction API is pretty low level and "for advanced users".

@dexX7 dexX7 merged commit 6fde93b into OmniLayer:omnicore-0.0.10 Apr 9, 2016

dexX7 added a commit that referenced this pull request Apr 9, 2016

Merge pull request #358
6fde93b Add payload creation to the RPC interface (zathras-crypto)

@dexX7 dexX7 modified the milestone: 0.0.10.1 Apr 12, 2016

@zathras-crypto zathras-crypto deleted the zathras-crypto:0.0.10-Z-PayloadRPC branch Jul 4, 2017

@zathras-crypto zathras-crypto restored the zathras-crypto:0.0.10-Z-PayloadRPC branch Jul 4, 2017

@zathras-crypto zathras-crypto deleted the zathras-crypto:0.0.10-Z-PayloadRPC branch Jul 4, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment