feat: add Planka service provider with full notification and command support
Webhook-based provider for Planka (self-hosted Kanban board) with: - 15 event types (cards, boards, lists, comments, tasks, attachments, labels) - Bearer token webhook authentication - Async API client for boards/cards/lists - 30 notification templates (en/ru) + 26 command templates (en/ru) - Bot commands: /status, /boards, /cards, /lists - Default tracking config, template config, command config seeded on startup - DB migration for 15 new tracking_config columns - Frontend: provider config UI with auto-name, Planka-specific hints - Frontend: tracking config event toggles for all 15 Planka events
This commit is contained in:
@@ -107,6 +107,7 @@
|
||||
"checking": "Checking...",
|
||||
"typeImmich": "Immich",
|
||||
"typeGitea": "Gitea",
|
||||
"typePlanka": "Planka",
|
||||
"typeScheduler": "Scheduler",
|
||||
"loadError": "Failed to load providers.",
|
||||
"externalDomain": "External Domain",
|
||||
@@ -116,6 +117,9 @@
|
||||
"webhookSecret": "Webhook Secret",
|
||||
"webhookSecretKeep": "Webhook Secret (leave empty to keep current)",
|
||||
"webhookSecretHint": "Shared secret for HMAC-SHA256 signature verification. Set the same secret in Gitea webhook settings.",
|
||||
"plankaWebhookSecretHint": "Bearer token for webhook authentication. Set the same token as WEBHOOK_ACCESS_TOKEN in Planka.",
|
||||
"plankaApiKeyHint": "Optional. Needed for connection testing and board listing.",
|
||||
"plankaWebhookUrlHint": "Set this as the Webhook URL in Planka environment config (relative to your bridge host).",
|
||||
"webhookSecretRequired": "Webhook secret is required",
|
||||
"apiToken": "API Token",
|
||||
"apiTokenHint": "Optional. Needed for connection testing and repository listing.",
|
||||
@@ -378,6 +382,21 @@
|
||||
"prMerged": "PR merged",
|
||||
"prCommented": "PR commented",
|
||||
"releasePublished": "Release published",
|
||||
"cardCreated": "Card created",
|
||||
"cardUpdated": "Card updated",
|
||||
"cardMoved": "Card moved",
|
||||
"cardDeleted": "Card deleted",
|
||||
"cardCommented": "Card commented",
|
||||
"commentUpdated": "Comment updated",
|
||||
"boardCreated": "Board created",
|
||||
"boardUpdated": "Board updated",
|
||||
"boardDeleted": "Board deleted",
|
||||
"listCreated": "List created",
|
||||
"listUpdated": "List updated",
|
||||
"listDeleted": "List deleted",
|
||||
"attachmentCreated": "Attachment added",
|
||||
"cardLabelAdded": "Label added",
|
||||
"taskCompleted": "Task completed",
|
||||
"scheduledMessage": "Scheduled message",
|
||||
"trackImages": "Track images",
|
||||
"trackVideos": "Track videos",
|
||||
@@ -795,6 +814,7 @@
|
||||
"previewWebhook": "Preview as plain text",
|
||||
"providerImmich": "Self-hosted photo server",
|
||||
"providerGitea": "Self-hosted Git service",
|
||||
"providerPlanka": "Self-hosted Kanban board",
|
||||
"providerScheduler": "Time-based scheduled messages"
|
||||
},
|
||||
"error": {
|
||||
|
||||
Reference in New Issue
Block a user