GoEvaCom / eosjs_python

http://eva.coop/
MIT License
43 stars 9 forks source link

Issue when trying to send NFTS via transfer #21

Open ChrisHoffmann96 opened 2 years ago

ChrisHoffmann96 commented 2 years ago

Hey, first of all thx for that repo, helps me out quite a bit and i love it!

My problem is that i cant transfer nfts, for example like: push_transaction('atomicassets', "transfer", "accountname_here", 'active', {"from": "accountname_here", "asset_ids": ['1234', '5678'], "to": "recipient_here", "memo": "memo here" })

cause i keep getting this error:

b'Error: [\n "Unrecognized type or struct ATOMIC_ATTRIBUTE.variant_int8_int16_int32_int64_uint8_uint16_uint32_uint64_float32_float64_string_INT8_VEC_INT16_VEC_INT32_VEC_INT64_VEC_UINT8_VEC_UINT16_VEC_UINT32_VEC_UINT64_VEC_FLOAT_VEC_DOUBLE_VEC_STRING_VEC",\n "Missing ATOMIC_ATTRIBUTE in pair_string_ATOMIC_ATTRIBUTE.fields.value"\n]\n at module.exports (/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/eosjs_python/js/node_modules/eosjs/lib/structs.js:141:11)\n at abi (/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/eosjs_python/js/node_modules/eosjs/lib/abi-cache.js:63:21)\n at /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/eosjs_python/js/node_modules/eosjs/lib/abi-cache.js:46:14\n at processTicksAndRejections (internal/process/task_queues.js:93:5)\n at async Promise.all (index 0)\n'

Sadly i dont have any clue how to handle this, any help would be really appreciated @jeanrobatto ! (Sending token or interacting with other contract works fine, its really just the asset sending thats not working for me)

jeanrobatto commented 2 years ago

Hey!

Have you tried to push the same transaction with only eosjs?

This is really just a wrapper for that lib, so you might have more luck posting directly on https://github.com/EOSIO/eosjs

ChrisHoffmann96 commented 2 years ago

Hey, thanks for your reply!

Yes the very same transaction works on eosjs, tried it before posting it here, but would love for it to work on python aswell.

Did you try transfering one or multiple nfts with eosjs_python and did it work for you, if yes could u send me a sample code? Maybe the eosjs version needs to be updated if it doesn't work for you aswell

Thanks again for your help!

Edit: Just checked whether there are any similar problems in eosjs, and they say that it could be an older version of eosjs

jeanrobatto commented 2 years ago

Oh I see, interesting!

I don't have an answer for the issue, and no, we do not work with NFTS.

As much as I'm genuinely curious to figure out the problem, I can't commit to it right now because of other work priorities.

My advice would be to fork/clone the repo and investigate yourself, it's simple code!

Or, as soon as I have time I can look into it for you, but it could take a while before then.

Indeed, you could also try to fork/clone and update the eosjs version in js/package.json!

I can't update it here because I would need to run tests to make sure nothing is broken for us since we use this internally.

If you find an answer before me, please let me know!:)

ChrisHoffmann96 commented 2 years ago

Will try that, but I think I'm not experienced enough with this specific matter to find such an error!

Thank you for your time, I will notify you if I find something, pls notify me as well If you found something once you find some time for it!

Cheers Chris