From 9c640db98ac68bae9b77b5b36240957fb86f05f8 Mon Sep 17 00:00:00 2001 From: schneefux Date: Mon, 10 Apr 2017 19:25:52 +0200 Subject: add cruncher API --- index.html | 26 +++++--------------------- server.js | 14 ++++++++++++++ 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/index.html b/index.html index dd1bf7d..6325eb1 100644 --- a/index.html +++ b/index.html @@ -24,19 +24,8 @@

-
- - -
-
- - -
-
- - -
- + +

@@ -113,14 +102,9 @@ $("#crunch-form").submit((e) => { e.preventDefault(); - let dimension_on = $("#crunch-on").val(), - data = {}; - data[$("#crunch-filter").val()] = $("#crunch-value").val(); - $.ajax("/api/stats/" + dimension_on + "/update", { - data: JSON.stringify(data), - contentType: "application/json", - type: "POST" - }); + let ign = $("#crunch-name").val(); + subscribe(ign); + $.post("/api/player/" + ign + "/crunch"); }); diff --git a/server.js b/server.js index 3dddb38..235723d 100644 --- a/server.js +++ b/server.js @@ -28,6 +28,7 @@ var rabbit, ch, seq, ch = await rabbit.createChannel(); await ch.assertQueue("grab", {durable: true}); await ch.assertQueue("process", {durable: true}); + await ch.assertQueue("crunch", {durable: true}); break; } catch (err) { console.error(err); @@ -158,6 +159,19 @@ app.post("/api/player/:name/update", async (req, res) => { await updatePlayer(player); res.sendStatus(204); }); +// crunch a known user +app.post("/api/player/:name/crunch", async (req, res) => { + let player = await model.Player.findOne({ where: { name: req.params.name } }); + if (player == undefined) { + console.log("player not found in db, won't crunch", req.params.name); + res.sendStatus(404); + return; + } + console.log("player in db, crunching", req.params.name); + await ch.sendToQueue("crunch", new Buffer(player.api_id), + { persistent: true, type: "player" }); + res.sendStatus(204); +}); // update a random user app.post("/api/player", async (req, res) => { let player = await model.Player.findOne({ order: [ Seq.fn("RAND") ] }); -- cgit v1.3.1