Bitcoin Coinify Javascript Client
This is used by My-Wallet-V3.
Install
npm install bitcoin-coinify-client --save
Usage
Three things are needed:
delegate
object (see example) with functions that provide the following:
- save() -> e.g.
function () { return JSON.stringify(this._coinify);
} email()
-> String : the users email addressisEmailVerified()
-> Boolean : whether the users email is verifiedgetToken()
-> stringify : JSON web token {email: 'me@example.com'}monitorAddress(address, callback)
:callback(amount)
if btc receivedcheckAddress(address)
: look for existing transaction at addressgetReceiveAddress(trade)
: return the trades receive addressreserveReceiveAddress()
releaseReceiveAddress()
serializeExtraFields(obj, trade)
: e.g.obj.account_index = ...
deserializeExtraFields(obj, trade)
- Coinify partner identifier
var object = user: 1 offline_token: 'token';var coinify = object delegate;coinifypartnerId = ...;coinifydelegatesave;delegatetrades = coinifytrades// "{"user":1,"offline_token":"token"}"
To see a demo switch to Node 7.2 or higher and run:
nvm use 7.2node demo.js
Development
Modifying bitcoin-exchange-client
To use a local version of bitcoin-exchange-client, create a symlink:
cd ..rm -rf bitcoin-coinify-client/node_modules/bitcoin-exchange-clientln -s ../../bitcoin-exchange-client bitcoin-coinify-client/node_modules/bitcoin-exchange-client
Testing inside my-wallet-v3
To use a local version of this repo inside my-wallet-v3, create a symlink:
cd ..rm -rf My-Wallet-V3/node_modules/bitcoin-coinify-clientln -s ../../bitcoin-coinify-client My-Wallet-V3/node_modules/bitcoin-coinify-client
Note that Grunt won't detect these changes.
Release
Change version in package.json
.
git commit -a -m "v0.1.0"git pushgit tag -s v0.1.0git push --tagsmake changelog
Add the relevant sections of Changelog.md to the tag on Github and mark it as pre-release.
npm publish