Skip to content

Commit a0ef705

Browse files
committed
Records: Extract and store time-to-move stats for later processing
1 parent 09dfab1 commit a0ef705

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

utils/records.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,7 @@ export const handler: Handler = async (event: any, context?: any) => {
168168
const metaRecs = new Map<string, APGameRecord[]>();
169169
const userRecs = new Map<string, APGameRecord[]>();
170170
const eventRecs = new Map<string, APGameRecord[]>();
171+
const ttm = new Map<string, number[]>();
171172
for (const gdata of justGames) {
172173
const g = GameFactory(gdata.metaGame, gdata.state);
173174
if (g === undefined) {
@@ -222,6 +223,14 @@ export const handler: Handler = async (event: any, context?: any) => {
222223
pushToMap(eventRecs, id, rec);
223224
}
224225
}
226+
// calculate response rates
227+
const times: number[] = [];
228+
for (let i = 0; i < g.stack.length - 1; i++) {
229+
const t1 = new Date(g.stack[i]._timestamp).getTime();
230+
const t2 = new Date(g.stack[i+1]._timestamp).getTime();
231+
times.push(t2 - t1);
232+
}
233+
times.forEach((t, i) => pushToMap(ttm, gdata.players[i % g.numplayers].id, t));
225234
}
226235
console.log(`allRecs: ${allRecs.length}, metaRecs: ${[...metaRecs.keys()].length}, userRecs: ${[...userRecs.keys()].length}, eventRecs: ${[...eventRecs.keys()].length}`);
227236

@@ -263,6 +272,19 @@ export const handler: Handler = async (event: any, context?: any) => {
263272
}
264273
}
265274
console.log("Player recs done");
275+
// response times
276+
for (const [player, lst] of ttm.entries()) {
277+
cmd = new PutObjectCommand({
278+
Bucket: REC_BUCKET,
279+
Key: `ttm/${player}.json`,
280+
Body: JSON.stringify(lst),
281+
});
282+
response = await s3.send(cmd);
283+
if (response["$metadata"].httpStatusCode !== 200) {
284+
console.log(response);
285+
}
286+
}
287+
console.log("Response times done");
266288
// events
267289
for (const [eventid, recs] of eventRecs.entries()) {
268290
cmd = new PutObjectCommand({

0 commit comments

Comments
 (0)