summaryrefslogtreecommitdiff
path: root/index.js
diff options
context:
space:
mode:
authorschneefux <schneefux+commit@schneefux.xyz>2018-04-28 17:37:39 +0200
committerschneefux <schneefux+commit@schneefux.xyz>2018-05-05 12:11:38 +0200
commitc8dc06971c6dab447250bb81cca20836ed5b2772 (patch)
tree0a1fc039c29fd4052afd7ff828d9ae3e76fd7bbc /index.js
downloadbrokentalents-c8dc06971c6dab447250bb81cca20836ed5b2772.tar.gz
brokentalents-c8dc06971c6dab447250bb81cca20836ed5b2772.zip
first working version
Diffstat (limited to 'index.js')
-rw-r--r--index.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/index.js b/index.js
new file mode 100644
index 0000000..12decf2
--- /dev/null
+++ b/index.js
@@ -0,0 +1,30 @@
+#!/usr/bin/node
+
+const R = require('ramda'),
+ etl = require('./etl'),
+ reduce = require('./reduce'),
+ config = require('./config');
+
+function main() {
+ const loadFPayloads = etl.loadFPayloads(config.etl);
+ const aggregatePayloads = reduce.aggregatePayloads(config.reduce);
+ const deriveStatistics = reduce.deriveStatistics(config.reduce);
+
+ let pages = [0, 5, 10, 15, 20, 25];
+ let regions = ['sg', 'eu', 'na'];
+
+ const params = R.xprod(regions, pages);
+ const requests = R.map(
+ R.apply((region, page) => loadFPayloads(
+ `/shards/${region}/matches`,
+ { 'sort': '-createdAt', 'filter[gameMode]': 'blitz_pvp_ranked', 'page[limit]': '5', 'page[offset]': page },
+ )),
+ params);
+
+ /* main */
+ Future.parallel(1, requests)
+ .map(R.compose(deriveStatistics, aggregatePayloads, R.unnest))
+ .value(R.compose(console.log, (a) => JSON.stringify(a, null, 2)));
+}
+
+main();