Discussions
Xumm KYC
Is there a way to add the KYC status to the ripple account?
Is there a way to call an outside api though a hook?
I've got a hook that can only accept a specific issuer/token but I also want this to be pinned to the KYC that is done through Xumm..
Any thoughts?
Posted by Denis Angell over 2 years ago
Can I use AssemblyScript?
Hi team,
Do you see any issue with using https://www.assemblyscript.org/ ?
I tried to compile your simple `accept` hook with AssemblyScript but when I submit the transaction with ripple-lib I get an error message:
```
data: {
resultCode: 'temMALFORMED',
resultMessage: 'Malformed transaction.',
engine_result: 'temMALFORMED',
engine_result_code: -299,
engine_result_message: 'Malformed transaction.',
tx_blob: '12001622800000002400441FC5201B004565333010000000000000000068400000000000000C7321031707DDB63EB8B5447371F1EA5B83009475AE0981388BB7352403393F82230E1B74473045022100E4F443EE595F93F4F604117D215A21CE5AC81974364155AA45BE6286E3A3978002203487A9EA95C297CD82281089DBC0B09A87384C99866B2BC1EDAD00AA1BE1698D7BA50061736D0100000001130360017E017E60037F7F7E017E60027F7F017F021D0207636F6E74726F6C066163636570740001057574696C73025F67000203030200000503010000071803046362616B000204686F6F6B0003066D656D6F727902000A1B02040042000B140041004100420010001A4101410110011A42000B002610736F757263654D617070696E6755524C142E2F6F7074696D697A65642E7761736D2E6D61708114A9E75BEA9E40D24E411DC9E5B1E209C5F015BA10',
tx_json: {
Account: 'rGV4MXcjPTkdhVZLFrddVQPHz1WdXkvK6g',
CreateCode: '0061736D0100000001130360017E017E60037F7F7E017E60027F7F017F021D0207636F6E74726F6C066163636570740001057574696C73025F67000203030200000503010000071803046362616B000204686F6F6B0003066D656D6F727902000A1B02040042000B140041004100420010001A4101410110011A42000B002610736F757263654D617070696E6755524C142E2F6F7074696D697A65642E7761736D2E6D6170',
Fee: '12',
Flags: 2147483648,
HookOn: '0000000000000000',
LastLedgerSequence: 4547891,
Sequence: 4464581,
SigningPubKey: '031707DDB63EB8B5447371F1EA5B83009475AE0981388BB7352403393F82230E1B',
TransactionType: 'SetHook',
TxnSignature: '3045022100E4F443EE595F93F4F604117D215A21CE5AC81974364155AA45BE6286E3A3978002203487A9EA95C297CD82281089DBC0B09A87384C99866B2BC1EDAD00AA1BE1698D',
hash: 'BA20CC222EE7A87D8C969B732041C3E92FDA7D6E66B9550294C65B3ADB7EAA29'
}
}
```
Also in the rippled logs are showing:
```
2021-Sep-27 10:55:29.827798400 UTC OpenLedger:TRC HookSet[rGV4MXcjPTkdhVZLFrddVQPHz1WdXkvK6g-BA20CC222EE7A87D8C969B732041C3E92FDA7D6E66B9550294C65B3ADB7EAA29]: Malformed transaction. Hook attempted to specify import module other than 'env'
```
Thank you
Posted by Florent Uzio over 2 years ago
[accept Hook] - Cannot read property 'toBytesSink' of undefined
Hi, I am learning about Hooks and I wanted to try first with something simple and the "accept" hook.
I am using your code in accept.js and when I run it with "node accept.js ssXUB..." I get the following error:
TypeError: Cannot read property 'toBytesSink' of undefined
at BinarySerializer.writeFieldAndValue (/Users/fuzio/Documents/Ripple/Github/webassembly-typescript/node_modules/ripple-binary-codec/dist/serdes/binary-serializer.js:125:32)
at /Users/fuzio/Documents/Ripple/Github/webassembly-typescript/node_modules/ripple-binary-codec/dist/types/st-object.js:130:19
at Array.forEach (<anonymous>)
at Function.STObject.from (/Users/fuzio/Documents/Ripple/Github/webassembly-typescript/node_modules/ripple-binary-codec/dist/types/st-object.js:128:16)
at serializeObject (/Users/fuzio/Documents/Ripple/Github/webassembly-typescript/node_modules/ripple-binary-codec/dist/binary.js:59:32)
at signingData (/Users/fuzio/Documents/Ripple/Github/webassembly-typescript/node_modules/ripple-binary-codec/dist/binary.js:75:12)
at Object.encodeForSigning (/Users/fuzio/Documents/Ripple/Github/webassembly-typescript/node_modules/ripple-binary-codec/dist/index.js:37:12)
at computeSignature (/Users/fuzio/Documents/Ripple/Github/webassembly-typescript/node_modules/ripple-lib/dist/npm/transaction/sign.js:36:41)
at signWithKeypair (/Users/fuzio/Documents/Ripple/Github/webassembly-typescript/node_modules/ripple-lib/dist/npm/transaction/sign.js:59:42)
at RippleAPI.sign (/Users/fuzio/Documents/Ripple/Github/webassembly-typescript/node_modules/ripple-lib/dist/npm/transaction/sign.js:163:16)
Have you already faced this issue?
Thank you
Posted by Florent Uzio over 2 years ago
Removing Hooks
Whats the plan here?
Are hooks overwritten?
Posted by Denis Angell over 2 years ago
How to store private information on a Hook?
I'm still new to Hooks and C in general but how can a Hooks developer store personal and confidential information on a Hook (e.x: Full Name, Age, ID) without it being publicly available.
I'm planning to code a Hook that only accepts KYC/AML enabled accounts' transactions to avoid unwanted transactions to the receiving account.
Any centralized or decentralized structures are accepted. Thank you.
Posted by wojak over 2 years ago
Can someone help with a simple EVM smart contract to Hook example?
Its difficult for me to understand the hooks because I have so little experience in C++.
I think it would be great if we did a cross EVM / Hook example?
Also, I noticed there ins't a lot of tutorials. Its just straight documentation.
When I started with solidity and EVM, the medium articles really helped me.
I could write one for more exposure maybe showing the example of a very simple smart contract?
Also, I wanted to say thank you to those who already put in work. The C files really include good notes and it has helped me a lot in the beginning. Docker was a breeze.
Now I'm just trying to understand state/slot and STO.
YOU GUYS ROCK!!!
Posted by Denis Angell over 2 years ago
Create a youtube tutorial for Hooks.
It would be great if you could post tutorials about Hooks
(programming, settings, logic), this will help the developers learn the basics of Hooks and implement their own smart contracts in the testnet.
Posted by Josh Smith over 2 years ago
Welcome to XRPL Hooks documentation
If you have (technical) questions, please post them here. Try to help each other, and we (the XRPL Labs team, working on Hooks) will actively monitor discussions as well.
If something is unclear (how to, why, design decisions, how would X work, etc.), please let us know as well: we may be able to update the documentation, examples, etc. based on your input.
Posted by Wietse Wind about 3 years ago