team-exor / eiquidus

Feature-rich open-source altcoin block explorer. Regular Updates ~ Platform Independent ~ Mobile Friendly ~ Supports Themes, Markets, Charts, Claiming Addresses, Public API's, Custom RPC Cmds, Bitcoin, Heavycoin, zk-SNARKs ~ List Masternodes, Network Peers, Top 100 Wallets ~ Built-in Update Script ~ Highly Customizable
https://explorer.exor.io
BSD 3-Clause "New" or "Revised" License
89 stars 186 forks source link

sync-masternodes error #17

Closed deadthings closed 1 year ago

deadthings commented 2 years ago

Is the eIquidus masternode functionality compatible with older (i.e., pre-Evo) Dash codebases that use calls such as masternode count instead of getmasternodecount and masternode list instead of getmasternodelist? These changes have been made in the api_cmds section of settings.json, but I imagine it is looking for different array outputs than the older commands are generating, perhaps? This is the result, for instance, of running sync.js masternodes:


Syncing masternodes.. Please wait..
Masternode update error: Tx Hash is missing
Error: Cannot save masternode [address redacted].```
deadthings commented 2 years ago

Seems to be a similar issue to that in https://github.com/team-exor/eiquidus/issues/6, but a different error output, so I will leave my Issue open for now, thanks!

joeuhren commented 2 years ago

Can you post a sample or snippet of the masternode list output from your coin? Most likely it isn't supported currently or it would "just work", but I would be interested to see how different the output is vs what is already supported. Also, do you happen to know what version of Dash your coin is based on?

deadthings commented 2 years ago

Thanks for the quick response! Here's a snippet of the output for masternode list (with a few chars replaced with ^ here and there)...

"^^2974574ce3e53985cb32fa3c076d429555bedc4b9d12bd99195b0fbca825fd-1": { "address": "51.^^.102.212:^^^^", "payee": "^FUCqFR1AdQYbnWrUBF5Nxsq2gkPnhtMDs", "status": "ENABLED", "protocol": 70211, "daemonversion": "0.12.3.7", "sentinelversion": "1.2.0", "sentinelstate": "current", "lastseen": 1664575702, "activeseconds": 14924, "lastpaidtime": 1664537083, "lastpaidblock": 831654 },

And as you can see from the above output, the equivalent Dash version is 0.12.3.7.

joeuhren commented 2 years ago

Thanks for the snippet. I can already see where the differences are and I don't think it would be difficult to add support for that format, although I probably wouldn't have time for it anytime soon unless you are interested in a paying for the custom development.

If you want to try adding support for that format yourself, I believe the database.js save_masternode and add_update_masternode functions are where you would need to make all or most of the changes.

I'm curious, are you also using the masternode count panel to show the total MNs online and unreachable? Just wondering if that is also broken or if that is working OK?

deadthings commented 2 years ago

Thanks for the tip about where to look! It was a pretty easy fix, I just had to point to some different things to get it working... image

Any tips for how to populate the ipv4/ipv6 column and remove the pay rank column?

Oh and yes - the masternode count panel worked well without any modifications.

joeuhren commented 2 years ago

To remove the pay rank column you would need to make some adjustments to the views/masternodes.pug file and remove that column. Based on the snippet from your masternode list that you provided earlier, there is no data in there about ip4/ip6 so you would either have to modify your wallet code to return that data first or else remove that column as well or map some other data there for example.

joeuhren commented 1 year ago

Closing this ticket due to inactivity. Feel free to reopen if you require further help on this issue.