This commit is contained in:
traveler 2026-04-12 16:06:16 -05:00
parent bb997e2fa7
commit 0f82f39fdd
25 changed files with 577 additions and 123 deletions

View file

@ -1,6 +1,6 @@
---
title: IT Overview
description: PNC Fish & More IT infrastructure
description: PNC Fish & More IT infrastructure — web server, digital signage, networking
published: true
date: 2026-04-12T00:00:00.000Z
tags: pncfish, it
@ -10,19 +10,61 @@ dateCreated: 2026-04-12T00:00:00.000Z
# IT Overview
## Website
## Infrastructure
Hosted on `pncfishandmore.com`. Static/PHP stack via the Netgrimoire `web.yaml` Apache/PHP service.
| Resource | Details |
|----------|---------|
| Domain | `pncfishandmore.com` — managed via ISPConfig |
| Web server | Apache on NetGrimoire (self-hosted Docker, `web.yaml`) |
| Email | MailCow + MXRoute relay |
| DNS | ISPConfig + internal Technitium |
| Accounting | Bigcapital (Docker on docker5, `accounts.netgrimoire.com`) |
## Email
---
Handled via MailCow + MXRoute. Domain configured as part of the 8-domain mail setup.
See [MailCow Domain Setup](/Keystone-Grimoire/Mail/Domain-Setup).
## Digital Signage System
## POS System
Three FireTV devices display live price board slides on in-store TVs. Each TV runs ScreenLite kiosk app loading an Apache HTML page, which fetches a Google Slides PNG export and refreshes it every 5 minutes via JavaScript.
*Document POS system here.*
### TV Pages on Apache
## Network
| File | Slide Deck | Purpose |
|------|-----------|---------|
| `left.html` | Saltwater fish | Main fish price board |
| `right.html` | Secondary | Freshwater or secondary display |
| `inverts.html` | Invertebrates | Inverts price board |
*Document store network here — router, AP, any on-site devices.*
### Google Slides Deck IDs
| Deck | Slide ID |
|------|---------|
| Left (saltwater fish) | `1S3j0K1QlWAtkjq73E73At3gz9vWp9vVr_yZswUHiyN8` |
| Right (secondary) | `1mWzgisxMQAFAhME9HXY_PEK0v_hIuQ4Md0PQS10ES8Q` |
| Inverts | `1nzunM4pQxqmW82_Ab0rrOsV4QuO8G5TVUDodplI_4tY` |
PNG export URL format: `https://docs.google.com/presentation/d/<ID>/export/png?sz=s1920`
Use `sz=s1920` for sharper text. If display looks soft, increase canvas size in Google Slides settings.
### Critical: ScreenLite Does Not Respond to Meta-Refresh
ScreenLite ignores `<meta http-equiv="refresh">`. All TV page refreshes use JavaScript `setInterval` image src swap only:
```javascript
setInterval(function() {
var img = document.getElementById('slide');
img.src = SLIDE_URL + '?t=' + Date.now();
}, 300000); // 300,000ms = 5 minutes
```
### Force Immediate Refresh
Force-stop ScreenLite on the FireTV and relaunch. It reloads the Apache URL and picks up the latest PNG immediately.
---
## Pending
- [ ] Square webhook → Apps Script → Google Sheets automation (designed, not deployed)
- [ ] "Push to Square" Apps Script button in Google Sheets
- [ ] Store network documentation (router, AP, FireTV connections)