-
Notifications
You must be signed in to change notification settings - Fork 0
/
node_helper.js
41 lines (34 loc) · 1.11 KB
/
node_helper.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/* Copyright (C) 2024 jcktwd */
"use strict"
const fs = require("node:fs/promises");
const NodeHelper = require("node_helper");
const Log = require("logger");
module.exports = NodeHelper.create({
socketNotificationReceived: async function(notification, payload) {
switch (notification) {
case "UPDATE_CACHE":
Log.log("Updating cache files")
await this.updateCache();
break
case "ERR":
Log.log(payload.msg);
break
}
},
updateCache: async function() {
await fs.writeFile(
`${this.path}/public/cache/stations.json`,
(await fetch(
"https://metro-rti.nexus.org.uk/api/stations")
).body
);
await fs.writeFile(
`${this.path}/public/cache/platforms.json`,
(await fetch(
"https://metro-rti.nexus.org.uk/api/stations/platforms")
).body
);
Log.log(this.name + " updated cached stations and platforms");
this.sendSocketNotification("UPDATED_CACHE");
},
});