Loading tracker…
PAMS tracker
Agent Activity & Time Capture
Online Sync: idle Manager ✓ ⚙ Manager
⚠ Apps Script is out of date. Open Settings → 📋 Copy Apps Script → paste into your Apps Script editor → Save → Deploy → Manage deployments → pencil → New version → Deploy.
⚠ You're offline. Keep working — entries are saved locally and will auto-sync when the network returns.
0 queued
Agent on station
NOT CLOCKED IN Pick your name below and click Clock In
00:00:00
started —
00:00:00
clocked in —

Case details

Fill in while you're working a ticket. * fields are checked when you Clock Out — switching to Idle is always free.

Please select a client
Please select a queue
Ticket number is required
Please pick a status
🔒 Do not enter patient-identifying information (PHI/PII). Use the ticket number to reference a case.

Who's on right now

Live across all devices syncing to this sheet. Each card shows admin controls — actions take effect on the agent's next sync (~5–10 seconds).

Tickets by agent — detail

Per-agent ticket counts and time. Click an agent's name to control them (force Idle / Productive / Logout). Click "View tickets" to drill into their Ticket Log.

Agent State now Tickets Close Hold Escal. Productive time Idle time Avg / ticket
Date Day Start End Agent Type Client Queue Ticket Status Remarks Additional remarks Duration Sheet

Ticket Log

Only Productive entries — actual tickets agents worked on. Filtered the same way as the Activity Log.

Date Day Start Agent Client Queue Ticket Status Remarks Additional remarks Duration
⚙ Administration panel Every change here saves to Google Sheets through Apps Script and becomes the source of truth. All agents pick it up automatically when they open or refresh the tracker — no re-hosting needed. Config: local cache
Configuration v— Last updated by at

Agents

The roster shown in the agent dropdown.

Clients & queues

Each client can have client-specific queues / case types.

Common queues / case types

Available in the Queue dropdown for every client.

Sheet connection

All data flows to and from this Google Sheet. To replace the URL with a new deployment URL, just paste the new one over the existing value and click Save — or click Clear first if the field is misbehaving.

Status: idle.

Idle escalation thresholds

When an agent stays Idle this long, the system intervenes.

Default: warning at 25 minutes, blocking pop-up at 30 minutes. The blocking pop-up fills the screen, must be acknowledged, and the Idle entry's Remarks captures the exceed time.
Any single Idle/Productive span longer than this is treated as a data error (a forgotten/open session), flagged ⚠ in the logs and excluded from time totals so reports stay accurate. Default: 240 minutes (4 hours). Saved to the backend for all devices.

Manager PIN

4–6 digit PIN to unlock manager tabs. Stored only on this device.

Default PIN: 2580.

Other behaviour

Controls which ticket formats are accepted (e.g. 105421, INC-10451, SR-51024, HD00014). Leave blank to accept any non-empty ticket containing a letter/number. Blank, spaces-only and symbols-only tickets are always rejected.

Sessions persist across page refreshes — if an agent reloads the tab mid-shift, they resume exactly where they were. To end a session you must explicitly clock out (or a manager can force clock-out from the dashboard).

🔒 Privacy & PHI protection

Keeps patient-identifying data (PHI/PII) out of the Google Sheet by scanning the free-text Remarks fields before anything is saved.

Detects emails, phone numbers, SSNs, card numbers and dates of birth in Remarks. Ticket #, Client and Queue are operational fields and are never treated as PHI.

Additional words that must never appear in Remarks. Case-insensitive, whole-word match.

This is the in-app safeguard. Full HIPAA compliance also requires locking down the backend (domain-restricted Apps Script deployment, restricted Sheet sharing) and a Google Workspace BAA — see the deployment guide.

Sheet maintenance & recovery

Use these when the tracker is showing stale or duplicate data. Each button explains what it does before running.

Where your data lives

Data flow. Every state change writes to the Google Sheet immediately. If offline, queued locally and auto-sent when back. The Sheet is the source of truth — on every page load, the tracker pulls the latest from there. Master data and admin commands also flow through the sheet, so any change you make in the manager view propagates to every agent's tracker on the next sync (~30s).
Saved