task_number, title, status, priority, is_blocker, owner, tags, estimated_hours
task_number
title
status
priority
is_blocker
owner
tags
estimated_hours
107
Discord Server Status Embeds
Planned
P2-Medium
false
Michael
arbiter
discord
automation
4
Task #107: Discord Server Status Embeds
Overview
Auto-post and update server status embeds in each game server's Discord chat channel. Status shows online/offline, player count, and server info.
Requirements
Query Pterodactyl API for server status
Post embed to each server's -chat channel
Update embed every 5-10 minutes (edit, not new message)
Store message IDs in database to enable editing
Handle servers that are offline gracefully
Target Channels
Server
Channel ID
Stoneblock 4
1491030845106946241
Society: Sunlit Valley
1491031870383853638
ATM10: To the Sky
1491051103251599360
All the Mons
1491051785006223520
Mythcraft 5
1491052926289051839
Beyond Depth
1491480196405268643
Beyond Ascension
1491480214730047639
Otherworld
1491480234225307752
DeceasedCraft
1491480255720853697
Submerged 2
1491480274582896811
Sneak's Pirate Pack
1491480294300061886
Cottage Witch
1491480328982761592
Farm Crossing 5
1491480347572179027
Homestead
1491480370506367126
Wold's Vaults
1491481401176887356
Embed Format
Implementation Notes
New file: services/arbiter-3.0/src/services/serverStatusPoller.js
Database table: discord_status_messages (server_id, channel_id, message_id)
Cron job or setInterval in Arbiter main
Use Pterodactyl API: GET /api/client/servers/{id}/resources
Dependencies
Pterodactyl API key (already in .env)
Discord bot token (already in .env)
Server ID → Channel ID mapping (can use existing channel naming convention)
Links