Bitcoin SFOX Javascript Client
This is used by My-Wallet-V3.
Install
npm install bitcoin-sfox-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._sfox);
} email()
-> String : the users email addressisEmailVerified()
-> Boolean : whether the users email is verifiedgetEmailToken()
-> 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()
commitReceiveAddress()
releaseReceiveAddress()
serializeExtraFields(obj, trade)
: e.g.obj.account_index = ...
deserializeExtraFields(obj, trade)
- SFOX API key
var object = user: 1 offline_token: 'token';var sfox = object delegate;sfoxapiapiKey = ...;sfoxdelegatesave;// "{"user":1, ...}"
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-sfox-clientln -s ../../bitcoin-sfox-client My-Wallet-V3/node_modules/bitcoin-sfox-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 --tags