Created
March 24, 2014 07:45
-
-
Save ZucchiniZe/9735802 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| var Firebase = require('firebase'); | |
| var request = require('request'); | |
| var moment = require('moment'); | |
| var later = require('later'); | |
| console.log('Worker started'); | |
| // create firebase ref | |
| var markets = new Firebase('https://pubdata-dogecoin.firebaseio.com'); | |
| //Log in | |
| markets.auth('wUgprcpKymshbE9g4Z1S13C0233QuDHoYHEwQjeo', function(error, result) { | |
| if(error) { | |
| console.log("Login Failed!", error); | |
| } else { | |
| console.log('Authenticated successfully with payload:'); | |
| console.log('Auth expires at:', new Date(result.expires * 1000)); | |
| } | |
| }); | |
| // will fire every 5 minutes | |
| var bter_schedule = later.parse.text('every 10 s'); | |
| // execute logTime for each successive occurrence of the text schedule | |
| var timer_bter = later.setInterval(function(){update_bter(markets)}, bter_schedule); | |
| function update_bter(markets){ | |
| var now = moment.utc().format(); | |
| console.log('Update bter: '+now); | |
| var b1,b2,b3; | |
| // get bter market firebase location | |
| var bter = markets.child('bter'); | |
| // get bter doge value | |
| request('http://data.bter.com/api/1/ticker/doge_btc', function (error, response, body) { | |
| if (!error && response.statusCode == 200) { | |
| var bter = JSON.parse(response.body); | |
| var bterDOGE = bter['last']; | |
| var bterAVG = bter['avg']; | |
| console.log('DOGE value on bter: '+bterDOGE); // Print the google web page. | |
| bter.child('last').set(bterDOGE, function(error) { | |
| if (error) { | |
| console.log('Data could not be saved.' + error); | |
| } else { | |
| console.log('Last saved successfully.'); | |
| } | |
| b1 = true; | |
| if(b1 && b2 && b3){ console.log('All values updated'); }; | |
| }); | |
| bter.child('avg').set(bterAVG, function(error) { | |
| if (error) { | |
| console.log('Data could not be saved.' + error); | |
| } else { | |
| console.log('Avg saved successfully.'); | |
| } | |
| b2 = true; | |
| if(b1 && b2 && b3){ console.log('done') }; | |
| }); | |
| bter.child('lastupdate').set(now, function(error) { | |
| if (error) { | |
| console.log('Data could not be saved.' + error); | |
| } else { | |
| console.log('Data saved successfully.'); | |
| } | |
| b3 = true; | |
| if(b1 && b2 && b3){ | |
| //process.exit() | |
| console.log('All values updated'); | |
| }; | |
| }); | |
| } | |
| }); | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment