uptime-kuma/server/model/heartbeat.js

50 lines
1.1 KiB
JavaScript
Raw Normal View History

2021-06-29 11:06:20 +03:00
const dayjs = require("dayjs");
const utc = require("dayjs/plugin/utc");
let timezone = require("dayjs/plugin/timezone");
dayjs.extend(utc);
dayjs.extend(timezone);
2021-07-27 20:47:13 +03:00
const { BeanModel } = require("redbean-node/dist/bean-model");
2021-06-29 11:06:20 +03:00
/**
* status:
* 0 = DOWN
* 1 = UP
2021-07-27 20:53:59 +03:00
* 2 = PENDING
* 3 = MAINTENANCE
2021-06-29 11:06:20 +03:00
*/
class Heartbeat extends BeanModel {
/**
* Return an object that ready to parse to JSON for public
* Only show necessary data to public
* @returns {Object}
*/
toPublicJSON() {
return {
status: this.status,
time: this.time,
msg: "", // Hide for public
ping: this.ping,
};
}
/**
* Return an object that ready to parse to JSON
* @returns {Object}
*/
2021-06-29 11:06:20 +03:00
toJSON() {
return {
monitorID: this.monitor_id,
status: this.status,
time: this.time,
msg: this.msg,
ping: this.ping,
important: this.important,
duration: this.duration,
2021-06-29 11:06:20 +03:00
};
}
}
module.exports = Heartbeat;