Automated multisignature initiator for XEM Cryptocurrency
- Password encrypted configuration (aes-128-ecb)
- Batch transactions with limiter
- Multisig account balance watcher
- Timer
- Max amount per tx, program stops if amount exceeded (meaning something goes wrong)
- Max dayli amount
- Transaction details
- MySQL support
You must have a local NCC running connected to a local or remote NIS.
If you want it to be as light as possible, you can use a local NCC to sign the multisig transactions and a remote NIS to propagate them. The cosignatory account needs to be in a wallet that belongs to your local NCC.
To connect your NCC to a remote NIS:
-Run the NCC only
-In settings choose Remote Server and enter the Host (you can choose an host here)
-Save. Now you can close your browser and let the NCC run in background.
You need NodeJs.
Be sure you have NEM.js from nodejs2nem inside your folder.
XEMpay is the transaction initiator. It's the first cosignatory who ask for XEMsign signatures. XEMpay pull addresses meeting requirements from MySQL database and initiate batch signatures requests.
You need to insert correct informations inside SENDaccess.json:
All addresses must be in the "NAMOAVHFVPJ6FP32YP2GCM64WSRMKXA5KKYWWHPY" format. NO "-".
- Database connection parameters
- Wallet & transaction parameters (Warning, for "amount", "fee" and "multisigFee" only, values are in the smallest possible NEM fraction, that means that 1000000 means 1.000000 NEM).
- timer: Number of minutes between each pull, set by default to 5.
- dayliTimer: Timer before dayliAmount reset to 0 in minutes
- maxAmount: Maximal XEM amount per tx, in case of a bigger transaction, the program stop.
- maxDayliAmount: Maximal amount per days.
Inside XEMpay.js, on line 142 & 223, you need to set db query accordignly to your table name and column name.
Query on line 142 select all balances with the amount set in SENDaccess.
Query on line 223 update all balances & reset them to 0 after transaction process.
Next, Run XEMpay.js using:
nodejs pathTo/XEMpay.js
Then follow instructions.
Normally it should work out of the box. If not, you need to check:
- If NEM.js is present in your folder
- If you have deleted SENDaccess.json after encryption.
If still not working, you need to install Express, Secure-conf and MySQL:
- Express: npm install express
- Secure-conf: npm install secure-conf
- Mysql: npm install mysql
As the wallet is exposed you shouldn't store any funds on it !
- Fill SENDaccess.json with random datas and auto delete.
- Remove useless code.
- Add some hard coded rules in SENDaccess.json
BTC: 1BRuxYZ3ohDJkfEWKVMWAiYrAYjwNSaPJs
XEM: NAMOAV-HFVPJ6-FP32YP-2GCM64-WSRMKX-A5KKYW-WHPY