feat(api, web): добавить поддержку уведомлений и журнал уведомлений
Docker / build (push) Has been cancelled
Docker / build (push) Has been cancelled
Добавлены новые функции для отправки уведомлений через Telegram и webhook, включая настройки для интервалов уведомлений и проверки uptime. Реализован журнал уведомлений для отслеживания статуса отправленных сообщений. Обновлены схемы и интерфейсы для поддержки новых полей и функционала. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
1 parent
2c66d0c0ee
commit
7f91bc3624
28 files changed
+1046
-437
No files matched your search
@@ -126,6 +126,26 @@ export const settings = sqliteTable('settings', {
|
||||
notifyVpsDownEnabled: integer('notifyVpsDownEnabled'),
|
||||
webhookUrl: text('webhookUrl'),
|
||||
webhookEnabled: integer('webhookEnabled'),
|
||||
notifyIntervalMinutes: integer('notifyIntervalMinutes'),
|
||||
uptimeCheckIntervalMinutes: integer('uptimeCheckIntervalMinutes'),
|
||||
})
|
||||
|
||||
export const notificationLog = sqliteTable('notification_log', {
|
||||
id: text('id').primaryKey(),
|
||||
event: text('event').notNull(),
|
||||
channel: text('channel').notNull(),
|
||||
status: text('status').notNull(),
|
||||
fingerprint: text('fingerprint'),
|
||||
message: text('message'),
|
||||
payload: text('payload'),
|
||||
createdAt: text('createdAt').notNull(),
|
||||
})
|
||||
|
||||
export const notificationState = sqliteTable('notification_state', {
|
||||
key: text('key').primaryKey(),
|
||||
lastFingerprint: text('lastFingerprint'),
|
||||
lastSentAt: text('lastSentAt'),
|
||||
lastStatus: text('lastStatus'),
|
||||
})
|
||||
|
||||
export const vpsHealthChecks = sqliteTable('vps_health_checks', {
|
||||
|
||||
Reference in new issue
Block a user