diff options
| author | schneefux <schneefux+commit@schneefux.xyz> | 2017-03-25 14:43:14 +0100 |
|---|---|---|
| committer | schneefux <schneefux+commit@schneefux.xyz> | 2017-03-25 14:43:14 +0100 |
| commit | 20e23c314658b35ab7358cb29746a764f5146e7a (patch) | |
| tree | b629f1d05212354d0471bf778b0d989c1c47123d /api.js | |
| parent | 0a1518defe0df10b7568c15871846075142b32d4 (diff) | |
| download | bridge-20e23c314658b35ab7358cb29746a764f5146e7a.tar.gz bridge-20e23c314658b35ab7358cb29746a764f5146e7a.zip | |
do not send duplicate notifications
Diffstat (limited to 'api.js')
| -rw-r--r-- | api.js | 31 |
1 files changed, 20 insertions, 11 deletions
@@ -280,25 +280,34 @@ async function listen() { // find all interesting jobs, delete them & forward their notification if (msg.channel == "grab_failed") { jobs = await raw.query(` - DELETE FROM jobs WHERE - type='grab' AND status='failed' AND payload->'error'->>'title'='Not Found' - RETURNING - payload->'params'->>'filter[playerIds]' AS player_id, - payload->'params'->>'filter[playerNames]' AS player_name + WITH grab_failed AS ( + DELETE FROM jobs WHERE + type='grab' AND status='failed' AND payload->'error'->>'title'='Not Found' + RETURNING + payload->'params'->>'filter[playerIds]' AS player_id, + payload->'params'->>'filter[playerNames]' AS player_name + ) + SELECT DISTINCT * FROM grab_failed `); } if (msg.channel == "process_finished") { jobs = await raw.query(` - DELETE FROM jobs WHERE - type='process' AND status='finished' - RETURNING payload->>'playername' AS player_name + WITH process_finished AS ( + DELETE FROM jobs WHERE + type='process' AND status='finished' + RETURNING payload->>'playername' AS player_name + ) + SELECT DISTINCT * FROM process_finished `); } if (msg.channel == "compile_finished") { jobs = await raw.query(` - DELETE FROM jobs WHERE - type='compile' AND payload->>'type'='player' AND status='finished' - RETURNING payload->>'id' AS player_id + WITH compile_finished AS ( + DELETE FROM jobs WHERE + type='compile' AND payload->>'type'='player' AND status='finished' + RETURNING payload->>'id' AS player_id + ) + SELECT DISTINCT * FROM compile_finished `); } |
