@davidfuchs/mcp-uptime-kuma 0.3.3 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +209 -143
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33 -20
- package/dist/index.js.map +1 -1
- package/dist/server.d.ts +7 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +99 -28
- package/dist/server.js.map +1 -1
- package/dist/types.d.ts +44 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +64 -48
- package/dist/types.js.map +1 -1
- package/dist/uptime-kuma-client.d.ts +43 -3
- package/dist/uptime-kuma-client.d.ts.map +1 -1
- package/dist/uptime-kuma-client.js +144 -10
- package/dist/uptime-kuma-client.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -1
package/dist/server.js
CHANGED
|
@@ -2,10 +2,11 @@ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
|
2
2
|
import { McpError, ErrorCode } from '@modelcontextprotocol/sdk/types.js';
|
|
3
3
|
import { z } from 'zod';
|
|
4
4
|
import { UptimeKumaClient, filterMonitorFields } from './uptime-kuma-client.js';
|
|
5
|
-
import { HeartbeatSchema, MonitorBaseSchema, SettingsSchema } from './types.js';
|
|
5
|
+
import { HeartbeatSchema, MonitorBaseSchema, MonitorSummarySchema, SettingsSchema } from './types.js';
|
|
6
6
|
import { VERSION } from './version.js';
|
|
7
7
|
/**
|
|
8
8
|
* Creates and configures the MCP server with tools, resources, and prompts
|
|
9
|
+
* Note: Authentication must be done separately after connecting the transport
|
|
9
10
|
*/
|
|
10
11
|
export async function createServer(config) {
|
|
11
12
|
const server = new McpServer({
|
|
@@ -18,25 +19,37 @@ export async function createServer(config) {
|
|
|
18
19
|
START with 'getMonitorSummary' for status overview questions ("how is everything?", "what's down?").
|
|
19
20
|
Use 'getHeartbeats' or 'listHeartbeats' for historical data (limit to 5-10 heartbeats unless user requests more).
|
|
20
21
|
Use 'listMonitors' only when you need configuration details (URLs, intervals, notification settings).
|
|
21
|
-
|
|
22
|
+
`,
|
|
23
|
+
capabilities: {
|
|
24
|
+
logging: {}
|
|
25
|
+
}
|
|
22
26
|
});
|
|
23
|
-
// Initialize Uptime Kuma client
|
|
24
|
-
const client = new UptimeKumaClient(config.url);
|
|
27
|
+
// Initialize Uptime Kuma client (but don't authenticate yet)
|
|
28
|
+
const client = new UptimeKumaClient(config.url, server);
|
|
25
29
|
let isAuthenticated = false;
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
30
|
+
// Function to authenticate the client (to be called after transport is connected)
|
|
31
|
+
const authenticateClient = async () => {
|
|
32
|
+
try {
|
|
33
|
+
await client.connect();
|
|
34
|
+
await client.login(config.username, config.password, config.token, config.jwtToken);
|
|
35
|
+
// Logging in anonymously gives no indication that authentication failed.
|
|
36
|
+
// So instead, we issue a getSettings call after login, to prove the connection is working.
|
|
37
|
+
await client.getSettings();
|
|
38
|
+
isAuthenticated = true;
|
|
39
|
+
await server.sendLoggingMessage({
|
|
40
|
+
level: 'info',
|
|
41
|
+
data: 'Successfully authenticated with Uptime Kuma'
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown error';
|
|
46
|
+
await server.sendLoggingMessage({
|
|
47
|
+
level: 'error',
|
|
48
|
+
data: `Failed to authenticate with Uptime Kuma: ${errorMessage}`
|
|
49
|
+
});
|
|
50
|
+
throw new McpError(ErrorCode.InternalError, `Failed to authenticate with Uptime Kuma: ${errorMessage}`);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
40
53
|
// Register getMonitor tool
|
|
41
54
|
server.registerTool('getMonitor', {
|
|
42
55
|
title: 'Get Monitor',
|
|
@@ -110,15 +123,7 @@ export async function createServer(config) {
|
|
|
110
123
|
keywords: z.string().optional().describe('Space-separated keywords to filter monitors by pathName (case-insensitive). All keywords must match for a monitor to be included.')
|
|
111
124
|
},
|
|
112
125
|
outputSchema: {
|
|
113
|
-
summaries: z.array(
|
|
114
|
-
id: z.number(),
|
|
115
|
-
name: z.string(),
|
|
116
|
-
pathName: z.string(),
|
|
117
|
-
active: z.boolean(),
|
|
118
|
-
maintenance: z.boolean(),
|
|
119
|
-
status: z.number().optional().describe('0=DOWN, 1=UP, 2=PENDING, 3=MAINTENANCE'),
|
|
120
|
-
msg: z.string().optional().describe('Status message from the most recent heartbeat'),
|
|
121
|
-
})).describe('Array of monitor summaries'),
|
|
126
|
+
summaries: z.array(MonitorSummarySchema).describe('Array of monitor summaries'),
|
|
122
127
|
count: z.number()
|
|
123
128
|
},
|
|
124
129
|
}, async ({ keywords }) => {
|
|
@@ -245,6 +250,72 @@ export async function createServer(config) {
|
|
|
245
250
|
throw new McpError(ErrorCode.InternalError, `Failed to list heartbeats: ${errorMessage}`);
|
|
246
251
|
}
|
|
247
252
|
});
|
|
253
|
+
// Register pauseMonitor tool
|
|
254
|
+
server.registerTool('pauseMonitor', {
|
|
255
|
+
title: 'Pause Monitor',
|
|
256
|
+
description: 'Pauses a monitor, stopping it from performing checks. The monitor will remain in the system but will not send notifications or collect data until resumed.',
|
|
257
|
+
inputSchema: {
|
|
258
|
+
monitorID: z.number().int().positive().describe('The ID of the monitor to pause')
|
|
259
|
+
},
|
|
260
|
+
outputSchema: {
|
|
261
|
+
ok: z.boolean(),
|
|
262
|
+
msg: z.string().optional()
|
|
263
|
+
},
|
|
264
|
+
}, async ({ monitorID }) => {
|
|
265
|
+
if (!isAuthenticated) {
|
|
266
|
+
throw new McpError(ErrorCode.InternalError, 'Not authenticated with Uptime Kuma');
|
|
267
|
+
}
|
|
268
|
+
try {
|
|
269
|
+
const response = await client.pauseMonitor(monitorID);
|
|
270
|
+
return {
|
|
271
|
+
content: [{
|
|
272
|
+
type: 'text',
|
|
273
|
+
text: response.msg || `Monitor ${monitorID} paused successfully`
|
|
274
|
+
}],
|
|
275
|
+
structuredContent: {
|
|
276
|
+
ok: response.ok,
|
|
277
|
+
msg: response.msg
|
|
278
|
+
},
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
catch (error) {
|
|
282
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown error';
|
|
283
|
+
throw new McpError(ErrorCode.InternalError, `Failed to pause monitor: ${errorMessage}`);
|
|
284
|
+
}
|
|
285
|
+
});
|
|
286
|
+
// Register resumeMonitor tool
|
|
287
|
+
server.registerTool('resumeMonitor', {
|
|
288
|
+
title: 'Resume Monitor',
|
|
289
|
+
description: 'Resumes a paused monitor, restarting its checks and notifications.',
|
|
290
|
+
inputSchema: {
|
|
291
|
+
monitorID: z.number().int().positive().describe('The ID of the monitor to resume')
|
|
292
|
+
},
|
|
293
|
+
outputSchema: {
|
|
294
|
+
ok: z.boolean(),
|
|
295
|
+
msg: z.string().optional()
|
|
296
|
+
},
|
|
297
|
+
}, async ({ monitorID }) => {
|
|
298
|
+
if (!isAuthenticated) {
|
|
299
|
+
throw new McpError(ErrorCode.InternalError, 'Not authenticated with Uptime Kuma');
|
|
300
|
+
}
|
|
301
|
+
try {
|
|
302
|
+
const response = await client.resumeMonitor(monitorID);
|
|
303
|
+
return {
|
|
304
|
+
content: [{
|
|
305
|
+
type: 'text',
|
|
306
|
+
text: response.msg || `Monitor ${monitorID} resumed successfully`
|
|
307
|
+
}],
|
|
308
|
+
structuredContent: {
|
|
309
|
+
ok: response.ok,
|
|
310
|
+
msg: response.msg
|
|
311
|
+
},
|
|
312
|
+
};
|
|
313
|
+
}
|
|
314
|
+
catch (error) {
|
|
315
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown error';
|
|
316
|
+
throw new McpError(ErrorCode.InternalError, `Failed to resume monitor: ${errorMessage}`);
|
|
317
|
+
}
|
|
318
|
+
});
|
|
248
319
|
// Clean up on server shutdown
|
|
249
320
|
process.on('SIGINT', () => {
|
|
250
321
|
client.disconnect();
|
|
@@ -254,6 +325,6 @@ export async function createServer(config) {
|
|
|
254
325
|
client.disconnect();
|
|
255
326
|
process.exit(0);
|
|
256
327
|
});
|
|
257
|
-
return server;
|
|
328
|
+
return { server, client, authenticateClient };
|
|
258
329
|
}
|
|
259
330
|
//# sourceMappingURL=server.js.map
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEhF,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAwB;IACzD,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,OAAO;KACjB,EACD;QACE,YAAY,EAAE;;;;;;OAMb;KACF,CACF,CAAC;IAGF,0CAA0C;IAC1C,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChD,IAAI,eAAe,GAAG,KAAK,CAAC;IAE5B,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEpF,yEAAyE;QACzE,2FAA2F;QAC3F,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;QAC3B,eAAe,GAAG,IAAI,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QAC9E,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAC;QACjE,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,4CAA4C,YAAY,EAAE,CAC3D,CAAC;IACJ,CAAC;IAED,2BAA2B;IAC3B,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,iVAAiV;QAC9V,WAAW,EAAE;YACX,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YACpF,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;SAC5H;QACD,YAAY,EAAE;YACZ,OAAO,EAAE,iBAAiB,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,wGAAwG,CAAC;SAC5J;KACF,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,EAAE,EAAE;QAC/C,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,oCAAoC,CACrC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAE7C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,SAAS,YAAY,CAAC,CAAC;YAC5D,CAAC;YAED,MAAM,MAAM,GAAG,CAAC,uBAAuB,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAE3F,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAClE,iBAAiB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;aACvC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,0BAA0B,YAAY,EAAE,CACzC,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,6BAA6B;IAC7B,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,qWAAqW;QAClX,WAAW,EAAE;YACX,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;SAC5H;QACD,YAAY,EAAE;YACZ,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,kHAAkH,CAAC;YAC/K,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;SAClB;KACF,EACD,KAAK,EAAE,EAAE,uBAAuB,EAAE,EAAE,EAAE;QACpC,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,oCAAoC,CACrC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACxD,CAAC,uBAAuB,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAC5E,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;qBACxC,CAAC;gBACF,iBAAiB,EAAE;oBACjB,QAAQ;oBACR,KAAK,EAAE,QAAQ,CAAC,MAAM;iBACvB;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,4BAA4B,YAAY,EAAE,CAC3C,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,kCAAkC;IAClC,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,ibAAib;QAC9b,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mIAAmI,CAAC;SAC9K;QACD,YAAY,EAAE;YACZ,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC1B,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;gBACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;gBACpB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;gBACnB,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;gBACxB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;gBAChF,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;aACrF,CAAC,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;YAC1C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;SAClB;KACF,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;QACrB,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,oCAAoC,CACrC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAErD,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;qBACzC,CAAC;gBACF,iBAAiB,EAAE;oBACjB,SAAS;oBACT,KAAK,EAAE,SAAS,CAAC,MAAM;iBACxB;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,kCAAkC,YAAY,EAAE,CACjD,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8BAA8B;IAC9B,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,gUAAgU;QAC7U,WAAW,EAAE;YACX,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;YAC9F,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yHAAyH,CAAC;SACnM;QACD,YAAY,EAAE;YACZ,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;YACrB,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;YACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;SAClB;KACF,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,EAAE;QACrC,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,oCAAoC,CACrC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,aAAa,IAAI,CAAC,CAAC;YACjC,MAAM,eAAe,GAAG,MAAM,CAAC,uBAAuB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAEzE,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC/C,CAAC;gBACF,iBAAiB,EAAE;oBACjB,SAAS;oBACT,UAAU,EAAE,eAAe;oBAC3B,KAAK,EAAE,eAAe,CAAC,MAAM;iBAC9B;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,6BAA6B,YAAY,EAAE,CAC5C,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,4BAA4B;IAC5B,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,iJAAiJ;QAC9J,WAAW,EAAE,EAAE;QACf,YAAY,EAAE;YACZ,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,qCAAqC,CAAC;SACzE;KACF,EACD,KAAK,IAAI,EAAE;QACT,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,oCAAoC,CACrC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;YAE5C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/C,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBACzE,iBAAiB,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE;aAC/C,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,2BAA2B,YAAY,EAAE,CAC1C,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,kCAAkC;IAClC,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,yVAAyV;QACtW,WAAW,EAAE;YACX,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iJAAiJ,CAAC;SAC3N;QACD,YAAY,EAAE;YACZ,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YACnH,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;YACxB,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE;SAChC;KACF,EACD,KAAK,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;QAC1B,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,oCAAoC,CACrC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,aAAa,IAAI,CAAC,CAAC;YACjC,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAErD,kCAAkC;YAClC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CACpD,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,EAC5C,CAAC,CACF,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC7C,CAAC;gBACF,iBAAiB,EAAE;oBACjB,UAAU,EAAE,aAAa;oBACzB,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM;oBAC/C,mBAAmB,EAAE,UAAU;iBAChC;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,8BAA8B,YAAY,EAAE,CAC7C,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8BAA8B;IAC9B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,MAAM,CAAC,UAAU,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,MAAM,CAAC,UAAU,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -8,7 +8,6 @@ export interface UptimeKumaConfig {
|
|
|
8
8
|
password: string | undefined;
|
|
9
9
|
token: string | undefined;
|
|
10
10
|
jwtToken: string | undefined;
|
|
11
|
-
readWriteEnabled: boolean;
|
|
12
11
|
}
|
|
13
12
|
/**
|
|
14
13
|
* Zod schema for Base Monitor Object structure from Uptime Kuma (defined fields only)
|
|
@@ -50,6 +49,8 @@ export declare const MonitorBaseSchema: z.ZodObject<{
|
|
|
50
49
|
conditions: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
|
|
51
50
|
pathName: z.ZodString;
|
|
52
51
|
maintenance: z.ZodBoolean;
|
|
52
|
+
uptime: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
|
|
53
|
+
avgPing: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
53
54
|
}, "strip", z.ZodTypeAny, {
|
|
54
55
|
name: string;
|
|
55
56
|
type: string;
|
|
@@ -75,6 +76,8 @@ export declare const MonitorBaseSchema: z.ZodObject<{
|
|
|
75
76
|
notificationIDList?: Record<string, boolean> | undefined;
|
|
76
77
|
accepted_statuscodes_json?: string | undefined;
|
|
77
78
|
conditions?: any[] | undefined;
|
|
79
|
+
uptime?: Record<string, number> | undefined;
|
|
80
|
+
avgPing?: number | null | undefined;
|
|
78
81
|
}, {
|
|
79
82
|
name: string;
|
|
80
83
|
type: string;
|
|
@@ -100,6 +103,8 @@ export declare const MonitorBaseSchema: z.ZodObject<{
|
|
|
100
103
|
notificationIDList?: Record<string, boolean> | undefined;
|
|
101
104
|
accepted_statuscodes_json?: string | undefined;
|
|
102
105
|
conditions?: any[] | undefined;
|
|
106
|
+
uptime?: Record<string, number> | undefined;
|
|
107
|
+
avgPing?: number | null | undefined;
|
|
103
108
|
}>;
|
|
104
109
|
/**
|
|
105
110
|
* Base Monitor type inferred from the Zod schema
|
|
@@ -252,4 +257,42 @@ export type HeartbeatList<T extends boolean = true> = T extends true ? {
|
|
|
252
257
|
} : {
|
|
253
258
|
[monitorID: string]: Heartbeat | undefined;
|
|
254
259
|
};
|
|
260
|
+
/**
|
|
261
|
+
* Zod schema for Monitor Summary object
|
|
262
|
+
*/
|
|
263
|
+
export declare const MonitorSummarySchema: z.ZodObject<{
|
|
264
|
+
id: z.ZodNumber;
|
|
265
|
+
name: z.ZodString;
|
|
266
|
+
pathName: z.ZodString;
|
|
267
|
+
active: z.ZodBoolean;
|
|
268
|
+
maintenance: z.ZodBoolean;
|
|
269
|
+
status: z.ZodOptional<z.ZodNumber>;
|
|
270
|
+
msg: z.ZodOptional<z.ZodString>;
|
|
271
|
+
uptime: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
|
|
272
|
+
avgPing: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
273
|
+
}, "strip", z.ZodTypeAny, {
|
|
274
|
+
name: string;
|
|
275
|
+
id: number;
|
|
276
|
+
active: boolean;
|
|
277
|
+
pathName: string;
|
|
278
|
+
maintenance: boolean;
|
|
279
|
+
status?: number | undefined;
|
|
280
|
+
uptime?: Record<string, number> | undefined;
|
|
281
|
+
avgPing?: number | null | undefined;
|
|
282
|
+
msg?: string | undefined;
|
|
283
|
+
}, {
|
|
284
|
+
name: string;
|
|
285
|
+
id: number;
|
|
286
|
+
active: boolean;
|
|
287
|
+
pathName: string;
|
|
288
|
+
maintenance: boolean;
|
|
289
|
+
status?: number | undefined;
|
|
290
|
+
uptime?: Record<string, number> | undefined;
|
|
291
|
+
avgPing?: number | null | undefined;
|
|
292
|
+
msg?: string | undefined;
|
|
293
|
+
}>;
|
|
294
|
+
/**
|
|
295
|
+
* Monitor Summary type inferred from the Zod schema
|
|
296
|
+
*/
|
|
297
|
+
export type MonitorSummary = z.infer<typeof MonitorSummarySchema>;
|
|
255
298
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAaD;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqB5B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,2BAA4B,SAAQ,WAAW;IAC9D,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,OAAO,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAC1D,2BAA2B,GAC3B,WAAW,CAAC;AAEhB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYzB,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAKtD,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,OAAO,GAAG,IAAI,CAAE,SAAQ,WAAW;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,OAAO,GAAG,IAAI;IACnD,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB1B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;;;GAIG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,OAAO,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAChE;IAAE,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,CAAA;CAAE,GACpC;IAAE,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;CAAE,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU/B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
|
package/dist/types.js
CHANGED
|
@@ -3,70 +3,86 @@ import { z } from 'zod';
|
|
|
3
3
|
* Zod schema for Monitor tag object
|
|
4
4
|
*/
|
|
5
5
|
const MonitorTagSchema = z.object({
|
|
6
|
-
tag_id: z.number(),
|
|
7
|
-
monitor_id: z.number(),
|
|
8
|
-
value: z.string().nullable(),
|
|
9
|
-
name: z.string(),
|
|
10
|
-
color: z.string(),
|
|
6
|
+
tag_id: z.number().describe('Tag ID'),
|
|
7
|
+
monitor_id: z.number().describe('Monitor ID'),
|
|
8
|
+
value: z.string().nullable().describe('Tag value'),
|
|
9
|
+
name: z.string().describe('Tag name'),
|
|
10
|
+
color: z.string().describe('Tag color'),
|
|
11
11
|
});
|
|
12
12
|
/**
|
|
13
13
|
* Zod schema for Base Monitor Object structure from Uptime Kuma (defined fields only)
|
|
14
14
|
*/
|
|
15
15
|
export const MonitorBaseSchema = z.object({
|
|
16
|
-
id: z.number(),
|
|
17
|
-
name: z.string(),
|
|
18
|
-
type: z.string(),
|
|
19
|
-
url: z.string().optional(),
|
|
20
|
-
method: z.string().optional(),
|
|
21
|
-
interval: z.number(),
|
|
22
|
-
retryInterval: z.number(),
|
|
23
|
-
resendInterval: z.number(),
|
|
24
|
-
maxretries: z.number(),
|
|
25
|
-
hostname: z.string().nullable().optional(),
|
|
26
|
-
port: z.number().nullable().optional(),
|
|
27
|
-
active: z.boolean(),
|
|
28
|
-
tags: z.array(MonitorTagSchema).optional(),
|
|
29
|
-
notificationIDList: z.record(z.string(), z.boolean()).optional(),
|
|
30
|
-
accepted_statuscodes_json: z.string().optional(),
|
|
31
|
-
conditions: z.array(z.any()).optional(),
|
|
32
|
-
pathName: z.string(),
|
|
33
|
-
maintenance: z.boolean(),
|
|
16
|
+
id: z.number().describe('Monitor ID'),
|
|
17
|
+
name: z.string().describe('Monitor name (e.g., "nginx")'),
|
|
18
|
+
type: z.string().describe('Type: http, ping, dns, etc.'),
|
|
19
|
+
url: z.string().optional().describe('URL to monitor'),
|
|
20
|
+
method: z.string().optional().describe('HTTP method'),
|
|
21
|
+
interval: z.number().describe('Check interval (seconds)'),
|
|
22
|
+
retryInterval: z.number().describe('Retry interval (seconds)'),
|
|
23
|
+
resendInterval: z.number().describe('Notification resend interval (seconds)'),
|
|
24
|
+
maxretries: z.number().describe('Max retries before down'),
|
|
25
|
+
hostname: z.string().nullable().optional().describe('Hostname for port/ping'),
|
|
26
|
+
port: z.number().nullable().optional().describe('Port number'),
|
|
27
|
+
active: z.boolean().describe('Active/enabled'),
|
|
28
|
+
tags: z.array(MonitorTagSchema).optional().describe('Associated tags'),
|
|
29
|
+
notificationIDList: z.record(z.string(), z.boolean()).optional().describe('Notification ID to enabled map'),
|
|
30
|
+
accepted_statuscodes_json: z.string().optional().describe('Accepted HTTP status codes (JSON)'),
|
|
31
|
+
conditions: z.array(z.any()).optional().describe('Monitor conditions'),
|
|
32
|
+
pathName: z.string().describe('Full hierarchical path (e.g., "Homelab / Web / nginx")'),
|
|
33
|
+
maintenance: z.boolean().describe('In maintenance mode'),
|
|
34
|
+
uptime: z.record(z.string(), z.number()).optional().describe('Uptime % by period (24/720/1y)'),
|
|
35
|
+
avgPing: z.number().nullable().optional().describe('24h avg ping (ms)'),
|
|
34
36
|
});
|
|
35
37
|
/**
|
|
36
38
|
* Zod schema for Uptime Kuma settings
|
|
37
39
|
*/
|
|
38
40
|
export const SettingsSchema = z.object({
|
|
39
|
-
serverTimezone: z.string(),
|
|
40
|
-
checkUpdate: z.boolean(),
|
|
41
|
-
searchEngineIndex: z.boolean(),
|
|
42
|
-
entryPage: z.string(),
|
|
43
|
-
dnsCache: z.boolean(),
|
|
44
|
-
keepDataPeriodDays: z.number(),
|
|
45
|
-
tlsExpiryNotifyDays: z.array(z.number()),
|
|
46
|
-
trustProxy: z.boolean(),
|
|
47
|
-
nscd: z.boolean(),
|
|
48
|
-
disableAuth: z.boolean(),
|
|
49
|
-
primaryBaseURL: z.string().optional(),
|
|
41
|
+
serverTimezone: z.string().describe('Server timezone'),
|
|
42
|
+
checkUpdate: z.boolean().describe('Check for updates'),
|
|
43
|
+
searchEngineIndex: z.boolean().describe('Allow search engine indexing'),
|
|
44
|
+
entryPage: z.string().describe('Entry page (dashboard/statuspage)'),
|
|
45
|
+
dnsCache: z.boolean().describe('DNS cache enabled'),
|
|
46
|
+
keepDataPeriodDays: z.number().describe('Data retention period (days)'),
|
|
47
|
+
tlsExpiryNotifyDays: z.array(z.number()).describe('TLS expiry notification days'),
|
|
48
|
+
trustProxy: z.boolean().describe('Trust proxy headers'),
|
|
49
|
+
nscd: z.boolean().describe('NSCD enabled'),
|
|
50
|
+
disableAuth: z.boolean().describe('Authentication disabled'),
|
|
51
|
+
primaryBaseURL: z.string().optional().describe('Primary base URL'),
|
|
50
52
|
});
|
|
51
53
|
/**
|
|
52
54
|
* Zod schema for Heartbeat object structure from Uptime Kuma
|
|
53
55
|
*/
|
|
54
56
|
export const HeartbeatSchema = z.object({
|
|
55
57
|
// Required fields
|
|
56
|
-
status: z.number().describe('0=DOWN
|
|
57
|
-
time: z.string().describe('Timestamp
|
|
58
|
-
msg: z.string().describe('Status message
|
|
59
|
-
important: z.union([z.boolean(), z.number()]).transform(val => Boolean(val)).describe('
|
|
58
|
+
status: z.number().describe('0=DOWN 1=UP 2=PENDING 3=MAINT'),
|
|
59
|
+
time: z.string().describe('Timestamp'),
|
|
60
|
+
msg: z.string().describe('Status message'),
|
|
61
|
+
important: z.union([z.boolean(), z.number()]).transform(val => Boolean(val)).describe('Status change flag'),
|
|
60
62
|
// Optional fields
|
|
61
|
-
id: z.number().optional().describe('
|
|
62
|
-
monitor_id: z.number().optional().describe('
|
|
63
|
-
ping: z.number().nullable().optional().describe('Response time
|
|
64
|
-
duration: z.number().optional().describe('Seconds since
|
|
65
|
-
down_count: z.number().optional().describe('Consecutive down count
|
|
66
|
-
retries: z.number().optional().describe('
|
|
67
|
-
end_time: z.string().optional().describe('
|
|
68
|
-
monitorID: z.number().optional().describe('
|
|
69
|
-
localDateTime: z.string().optional().describe('
|
|
70
|
-
timezone: z.string().optional().describe('Server
|
|
63
|
+
id: z.number().optional().describe('Heartbeat ID'),
|
|
64
|
+
monitor_id: z.number().optional().describe('Monitor ID'),
|
|
65
|
+
ping: z.number().nullable().optional().describe('Response time (ms)'),
|
|
66
|
+
duration: z.number().optional().describe('Seconds since last check'),
|
|
67
|
+
down_count: z.number().optional().describe('Consecutive down count'),
|
|
68
|
+
retries: z.number().optional().describe('Retry attempts'),
|
|
69
|
+
end_time: z.string().optional().describe('Check end time'),
|
|
70
|
+
monitorID: z.number().optional().describe('Monitor ID (camelCase)'),
|
|
71
|
+
localDateTime: z.string().optional().describe('Local formatted time'),
|
|
72
|
+
timezone: z.string().optional().describe('Server timezone'),
|
|
73
|
+
});
|
|
74
|
+
/**
|
|
75
|
+
* Zod schema for Monitor Summary object
|
|
76
|
+
*/
|
|
77
|
+
export const MonitorSummarySchema = z.object({
|
|
78
|
+
id: z.number().describe('Monitor ID'),
|
|
79
|
+
name: z.string().describe('Monitor name (e.g., "mx2")'),
|
|
80
|
+
pathName: z.string().describe('Full hierarchical path (e.g., "Homelab / App / E-Mail / mx2") where intermediate segments are groups/folders, not monitors'),
|
|
81
|
+
active: z.boolean().describe('Active/enabled'),
|
|
82
|
+
maintenance: z.boolean().describe('In maintenance mode'),
|
|
83
|
+
status: z.number().optional().describe('0=DOWN 1=UP 2=PENDING 3=MAINT'),
|
|
84
|
+
msg: z.string().optional().describe('Latest status message'),
|
|
85
|
+
uptime: z.record(z.string(), z.number()).optional().describe('Uptime % by period (24/720/1y)'),
|
|
86
|
+
avgPing: z.number().nullable().optional().describe('24h avg ping (ms)'),
|
|
71
87
|
});
|
|
72
88
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Socket } from 'socket.io-client';
|
|
2
|
-
import type { MonitorBase, MonitorWithAdditionalFields, LoginResponse, MonitorList, Heartbeat, GetSettingsResponse } from './types.js';
|
|
2
|
+
import type { MonitorBase, MonitorWithAdditionalFields, ApiResponse, LoginResponse, MonitorList, Heartbeat, GetSettingsResponse } from './types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Uptime Kuma Socket.io API Client
|
|
5
5
|
*/
|
|
@@ -8,7 +8,19 @@ export declare class UptimeKumaClient {
|
|
|
8
8
|
private url;
|
|
9
9
|
private monitorListCache;
|
|
10
10
|
private heartbeatListCache;
|
|
11
|
-
|
|
11
|
+
private uptimeCache;
|
|
12
|
+
private avgPingCache;
|
|
13
|
+
private server?;
|
|
14
|
+
constructor(url: string, server?: {
|
|
15
|
+
sendLoggingMessage: (params: {
|
|
16
|
+
level: 'debug' | 'info' | 'notice' | 'warning' | 'error' | 'critical' | 'alert' | 'emergency';
|
|
17
|
+
data: unknown;
|
|
18
|
+
}) => Promise<void>;
|
|
19
|
+
});
|
|
20
|
+
/**
|
|
21
|
+
* Helper to safely log messages - only logs if server is available and connected
|
|
22
|
+
*/
|
|
23
|
+
private safeLog;
|
|
12
24
|
/**
|
|
13
25
|
* Connect to the Uptime Kuma server
|
|
14
26
|
*/
|
|
@@ -28,6 +40,20 @@ export declare class UptimeKumaClient {
|
|
|
28
40
|
*/
|
|
29
41
|
login(username: string | undefined, password: string | undefined, token?: string, jwtToken?: string): Promise<LoginResponse>;
|
|
30
42
|
getSettings(): Promise<GetSettingsResponse>;
|
|
43
|
+
/**
|
|
44
|
+
* Pause a monitor
|
|
45
|
+
*
|
|
46
|
+
* @param monitorID - The ID of the monitor to pause
|
|
47
|
+
* @returns Promise resolving to the API response
|
|
48
|
+
*/
|
|
49
|
+
pauseMonitor(monitorID: number): Promise<ApiResponse>;
|
|
50
|
+
/**
|
|
51
|
+
* Resume a monitor
|
|
52
|
+
*
|
|
53
|
+
* @param monitorID - The ID of the monitor to resume
|
|
54
|
+
* @returns Promise resolving to the API response
|
|
55
|
+
*/
|
|
56
|
+
resumeMonitor(monitorID: number): Promise<ApiResponse>;
|
|
31
57
|
/**
|
|
32
58
|
* Set up event listeners for monitor list updates
|
|
33
59
|
* These listeners keep the cached monitor list in sync with the server
|
|
@@ -38,6 +64,16 @@ export declare class UptimeKumaClient {
|
|
|
38
64
|
* These listeners keep the cached heartbeat list in sync with the server
|
|
39
65
|
*/
|
|
40
66
|
private setupHeartbeatListeners;
|
|
67
|
+
/**
|
|
68
|
+
* Set up event listeners for uptime updates
|
|
69
|
+
* These listeners keep the cached uptime data in sync with the server
|
|
70
|
+
*/
|
|
71
|
+
private setupUptimeListeners;
|
|
72
|
+
/**
|
|
73
|
+
* Set up event listeners for average ping updates
|
|
74
|
+
* These listeners keep the cached average ping data in sync with the server
|
|
75
|
+
*/
|
|
76
|
+
private setupAvgPingListeners;
|
|
41
77
|
/**
|
|
42
78
|
* Get a specific monitor by ID from the cache
|
|
43
79
|
*
|
|
@@ -49,7 +85,7 @@ export declare class UptimeKumaClient {
|
|
|
49
85
|
* Get the cached full list of monitors the user has access to
|
|
50
86
|
* The list is populated after login and kept up-to-date via server events
|
|
51
87
|
*
|
|
52
|
-
* @returns The cached monitor list with all fields
|
|
88
|
+
* @returns The cached monitor list with all fields including uptime data
|
|
53
89
|
*/
|
|
54
90
|
getMonitorList(): MonitorList<true>;
|
|
55
91
|
/**
|
|
@@ -84,6 +120,10 @@ export declare class UptimeKumaClient {
|
|
|
84
120
|
maintenance: boolean;
|
|
85
121
|
status?: number;
|
|
86
122
|
msg?: string;
|
|
123
|
+
uptime?: {
|
|
124
|
+
[periodKey: string]: number;
|
|
125
|
+
};
|
|
126
|
+
avgPing?: number | null;
|
|
87
127
|
}>;
|
|
88
128
|
/**
|
|
89
129
|
* Get the socket instance (for advanced usage)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uptime-kuma-client.d.ts","sourceRoot":"","sources":["../src/uptime-kuma-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,KAAK,EACV,WAAW,EACX,2BAA2B,
|
|
1
|
+
{"version":3,"file":"uptime-kuma-client.d.ts","sourceRoot":"","sources":["../src/uptime-kuma-client.ts"],"names":[],"mappings":"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"}
|