brightdone-tickets skill, extracts intent, and executes check_tickets.sh with the API key from the environment variable BRIGHTDONE_API_KEY.check_tickets.shX-API-KEY headerBase URL: https://netpotent.com/BrightDone/truc_api.php
| File | Server | Path |
|---|---|---|
| PHP API endpoint | netpotent.com | /home/[account]/public_html/BrightDone/truc_api.php |
| HESK settings | netpotent.com | /home/[account]/public_html/BrightDone/hesk_settings.inc.php |
| OpenClaw config | Mac Server (Truc) | ~/.openclaw/openclaw.json |
| Skill definition | Mac Server (Truc) | ~/.openclaw/workspace/skills/brightdone-tickets/SKILL.md |
| Ticket check script | Mac Server (Truc) | ~/.openclaw/workspace/skills/brightdone-tickets/scripts/check_tickets.sh |
| API key (env var) | Mac Server (Truc) | BRIGHTDONE_API_KEY in gateway config |
| Agent sessions | Mac Server (Truc) | ~/.openclaw/agents/main/sessions/ |
| Agent memory | Mac Server (Truc) | ~/.openclaw/workspace/memory/ |
| Column | Type | Description |
|---|---|---|
| trackid | varchar(13) | Ticket tracking ID (e.g., 4VR-YYH-SZYZ) |
| u_name | varchar(255) | Submitter name |
| u_email | varchar(1000) | Submitter email |
| subject | varchar(255) | Ticket subject line |
| message | mediumtext | Ticket description / body |
| status | tinyint | 0=New · 1=Waiting · 2=Replied · 3=Resolved · 4=In Progress · 5=On Hold |
| priority | tinyint | 0=Critical · 1=High · 2=Medium · 3=Low |
| dt | timestamp | Date created |
| lastchange | timestamp | Last updated |
Pairing code approval — only authorized users can message the bot. DM policy set to pairing mode.
API key required via X-API-KEY header on every request. Rate limited to 30 req/min/IP.
Read-only — only SELECT queries. No INSERT, UPDATE, or DELETE. No internal notes or attachments exposed.
All traffic encrypted via HTTPS. No-cache headers prevent stale response caching at any layer.
API key stored as BRIGHTDONE_API_KEY env var — never hardcoded in the skill file. Key redacted from Truc's output.
Add $allowed_ips check in truc_api.php restricted to Truc's public IP. Get IP via curl -s ifconfig.me.
Generate a new key: openssl rand -hex 32
Update truc_api.php on the netpotent.com server
Update BRIGHTDONE_API_KEY in the OpenClaw gateway config on Mac Truc
Restart the gateway: openclaw gateway restart
No skill file edits needed — check_tickets.sh reads the env var automatically
Test directly: curl -s -H 'X-API-KEY: key' 'https://netpotent.com/BrightDone/truc_api.php'. If curl works but Truc fails, reset his session: openclaw sessions reset, then send /new in Telegram.
Server may be caching old PHP output. Rename the PHP file and update the skill to match. Verify no-cache headers are present in the curl response.
API key mismatch. Ensure truc_api.php matches BRIGHTDONE_API_KEY in gateway config. After any rotation, restart: openclaw gateway restart.
Verify MySQL credentials in truc_api.php match the DB user password. Test HESK itself at https://netpotent.com/BrightDone/ to confirm the database is up.