feat(PVQ Panel): add activity#11030
Conversation
Shows current activity in PVQ Panel (pv-q.de) on Discord — server name, server status, and current action (console, files, backups, etc.) based on the visited sub-page. Configurable via settings (show server name, show status, show elapsed time).
🖼️ Activity asset previewBehold, the gallery! Admission is free, but I do accept tips in the form of approvals. PVQ Panel (
|
| Preview | Source | URL |
|---|---|---|
| logo | https://pv-q.de/favicons/pvq-icon-maskable-512x512.png |
Beep boop — I refresh this comment on every push, so no need to scroll. 🤖
| }, | ||
| "url": "pv-q.de", | ||
| "regExp": "^https://(?:[a-z0-9-]+\\.)?pv-q\\.de(/.*)?$", | ||
| "version": "1.0.1", |
| "icon": "fas fa-server", | ||
| "value": true, | ||
| "multiLanguage": true, | ||
| "title": { |
| "en": "Show Server Name", | ||
| "de": "Servername anzeigen" | ||
| }, | ||
| "description": { |
| "icon": "fas fa-signal", | ||
| "value": true, | ||
| "multiLanguage": true, | ||
| "title": { |
| "en": "Show Server Status", | ||
| "de": "Server-Status anzeigen" | ||
| }, | ||
| "description": { |
| "icon": "fas fa-clock", | ||
| "value": true, | ||
| "multiLanguage": true, | ||
| "title": { |
| "en": "Show Elapsed Time", | ||
| "de": "Vergangene Zeit anzeigen" | ||
| }, | ||
| "description": { |
|
|
||
| const { pathname } = document.location | ||
|
|
||
| const serverMatch = pathname.match(/^\/server\/([a-f0-9-]+)(\/.*)?$/i) |
| @@ -0,0 +1,65 @@ | |||
| { | |||
| "$schema": "https://schemas.premid.app/metadata/1.10", | |||
| "apiVersion": 1, | |||
- Status label from the panel already reads "Server läuft" etc. — strip the "Server " prefix so it doesn't repeat after "Server: <name>". - Fallback details text changed from "Server verwalten" to "Server" to match the Node Manager / Discord Bot fallbacks and avoid echoing the "Verwaltet ..." wording used in state. - Long server/node names (e.g. auto-generated egg names) are truncated to 40 chars for a cleaner compact status line.
skullysmods
left a comment
There was a problem hiding this comment.
Fix this + fix the errors reported by the GitHub bot + upload proof of working it
| @@ -0,0 +1,65 @@ | |||
| { | |||
| "$schema": "https://schemas.premid.app/metadata/1.10", | |||
There was a problem hiding this comment.
| "$schema": "https://schemas.premid.app/metadata/1.10", | |
| "$schema": "https://schemas.premid.app/metadata/1.17", |
| "de": "Zeigt deine aktuelle Aktivität im PVQ Panel auf Discord.", | ||
| "en": "Shows what you are doing in PVQ Panel on Discord." |
There was a problem hiding this comment.
should be the description of the site, not the activity
| "en": "Shows what you are doing in PVQ Panel on Discord." | ||
| }, | ||
| "url": "pv-q.de", | ||
| "regExp": "^https://(?:[a-z0-9-]+\\.)?pv-q\\.de(/.*)?$", |
There was a problem hiding this comment.
| "regExp": "^https://(?:[a-z0-9-]+\\.)?pv-q\\.de(/.*)?$", | |
| "regExp": "^https?[:][/][/]([a-z0-9-]+[.])*pv-q[.]de[/]", |
| "regExp": "^https://(?:[a-z0-9-]+\\.)?pv-q\\.de(/.*)?$", | ||
| "version": "1.0.1", | ||
| "logo": "https://pv-q.de/favicons/pvq-icon-maskable-512x512.png", | ||
| "thumbnail": "https://pv-q.de/favicons/pvq-icon-maskable-512x512.png", |
There was a problem hiding this comment.
Thumbnail should be a landscape promotional image or screenshot, not the logo
| "thumbnail": "https://pv-q.de/favicons/pvq-icon-maskable-512x512.png", | ||
| "color": "#3b82f6", | ||
| "category": "other", | ||
| "tags": ["pvq", "panel", "gameserver", "pterodactyl"], |
There was a problem hiding this comment.
Remove the Website name from the tags
| "title": { | ||
| "en": "Show Server Name", | ||
| "de": "Servername anzeigen" | ||
| }, | ||
| "description": { | ||
| "en": "Show the current server name on Discord.", | ||
| "de": "Zeigt den aktuellen Servernamen auf Discord an." | ||
| } |
There was a problem hiding this comment.
There are currently no multi-language title/descriptions for the settings.
| const showServerName = await presence.getSetting<boolean>('showServerName') | ||
| const showStatus = await presence.getSetting<boolean>('showStatus') | ||
| const showElapsedTime = await presence.getSetting<boolean>('showElapsedTime') |
Description
Adds a Discord Rich Presence activity for PVQ Panel, a Pterodactyl-based game server management panel.
Contributor: Pavl21
Shows:
Settings
Test plan
pmd dev "PVQ Panel", 0 TypeScript errors)npm run lintpasses with 0 errors