Your scheduled HCP appointments for today (Denver time). Tap any job to add notes.
Your performance
Loading…
Loading…
Existing Notes & Line Items (read-only — from HCP)
Loading…
📋 Inspection Checklist (autosaved; saved as its own Inspection Checklist line item on Save)
Loading inspection…
Findings (customer-facing — what you observed/diagnosed/repaired. Appears as a "Findings" line item on the invoice.)
Recommendations (customer-facing — grouped by urgency. Appears as a "Recommendations" line item on the invoice.)
💰 Estimate Builder (generates 3 editable tiers from the inspection — review/edit, then push to HCP)
To find the age, read the date code in the serial number on the manufacturer's label (the first digits usually encode the year). The average tank water heater lasts 8–12 years, so at 10 years or older it is at or past its expected life. Entering 10 or more adds a New Water Heater option to the estimate and a replacement note to the customer recommendations.
Check this if you see rust, scale, or hard-water buildup. Adds a separate Whole-Home Water Treatment estimate (or, at 10+ years, a Water Heater Replacement + Water Treatment estimate) alongside the system repair options.
Reads your saved inspection & ages. Nothing is sent to HCP until you push.
Add a catalog item
Internal / Office Note (private — only office and other techs see this in HCP)
Saves a new line item + private note. Existing data is not changed.
💰
—
Estimated lifetime savings vs. live human answering service
—
Lifetime (all-time, from database — survives deploys)
—
Total Contacts
—
—
Total Booked
—
—
Conversion Rate
—
Avg Call Duration
—
—
Rescheduled
customer self-serve
Today
0
Contacts
0
Booked
0%
Conversion
0
Office Follow-up Needed
—
💰Saved today: —
Service Mix
No bookings yet today
Channel Mix
This Week
0
Contacts
0
Booked
0%
Conversion
💰Saved this week: —
Email Today
0
Sent
0
Failed
Why Didn't It Book? (today)
Outcome Funnel
No data yet
Reason Breakdown
No incomplete contacts today
Booking Calendar Heatmap (since last restart)
Bookings by day & hour — darker = more bookings
No booking data yet
Booking Log
Time
Channel
Customer
Service
Tech Tag
Job #
No bookings yet
⚠️ Abandoned Lead Recovery
Contacts who didn't book. Track follow-up status as your office calls them back.
How status affects analytics: Lead statuses are for your office's tracking only. “Converted” means your team called back and booked them — this is tracked separately from AI bookings and does not change the AI conversion rate. Use it to measure how many AI-missed calls the office recovered.
0 new
0 called
No abandoned leads — great job converting!
Today's Customer Contacts
All channels — voice, chat, and booking. Resets at midnight Denver time.
⭐ Club Members
0
No PCC members yet today
↩ Returning Customers
0
No returning customers yet today
✨ New Customers
0
No new customers yet today
⭐ Club Member Maintenance Bookings
PCC member maintenance appointments across all channels. From the database — survives deploys.
⭐
—
Estimated lifetime club booking value vs. live human answering service
—
0
Total Club Bookings
0
Voice
0
Chat (pending PCC detection)
0
Booking Widget
Cooling Maintenance
0
Bookings in range
Heating Maintenance
0
Bookings in range
General / Unknown
0
Bookings in range
All Club Bookings in Range
Time
Customer
Phone
Channel
Type
Tech
Job #
View
Loading…
Note: Voice and Booking Widget PCC bookings are fully tracked. Chat column stays at 0 until the chat flow adds PCC membership detection (the database + Club tab wiring are already in place — that column will auto-populate once chat sends isPccMember: true on its booking events).
📅 Customer Self-Serve Reschedules
Customers who tapped the SMS link and moved their appointment without calling the office. From the database — survives deploys.
Recent Reschedules (most recent 20)
When
Customer
Phone
From
To
Tech
Job #
Loading…
🌤️ Cold-Weather AC Maintenance Schedule
16-day forecast joined with scheduled AC maintenance jobs from HCP.
Cold flag fires when forecast high is below the active sub-tab's threshold:
75°F for Sales Tech (older / more sensitive systems),
70°F for Service Techs (newer / more tolerant systems).
Those jobs likely need to be rescheduled because cooling readings come
out inaccurate below those temperatures. Office-only view.
❄️0 day(s) below threshold with AC maintenance jobs in this bucket. Highlighted red below.
Date
Day
High
Low
Status
AC Maintenance Jobs
Click Refresh or open this tab to load…
Last updated: —
· Forecast cached 1hr; jobs cached 5min.
· Click any day's View → button for customer details + HCP links.
📰 Call & System Logs
Searchable history from PostgreSQL. All channels. Up to 6 months.
Search
Outcome
Service
0 selected
Time
Customer
Phone
Duration
Service
Outcome
Job #
Loading...
Level
Category
Search
Time
Level
Category
Message
Load app events above
Call Detail
AI Summary
Transcript
Transcript not available for this call.
Day Detail
Live Monitoring (real-time dependency health + alert history)
Loading…
—
Dependencies
Loading…
Alert Dispatcher
Loading…
Recent Alerts (last 20, newest first)
No alerts fired yet — that's good!
Legacy Provider Health
Email Providers
Email Stats
Total Sent
—
Total Failed
—
Last Provider
—
Last Sent At
—
Server
Status
Running
Version
—
Uptime
—
Memory
—
Started At
—
HCP Integration
API Calls
—
Failures
—
Last Call
—
Pricing & Tech Routing
Service Call Fees
Changes take effect on the next call. Weekend Service Call is wired through to voice and applies to Saturday and Sunday repair calls. Other fields are display-only references for the office — broader wiring is a future ship.
Repair Call (USD)
Maintenance (USD)
PCC Annual (USD)
Estimate (USD)
10+ Yr Diagnostic (USD)
Age Threshold (yrs)
Weekend Service Call (USD)
Tech Routing Tags
0–2 yr → service tech
3–10 yr → service tech 3-10
10+ yr → sales tech
Estimates → sales
Maintenance → maintenance tech
Weekend → saturday tech
Daily Digest
Morning summary of yesterday's calls, bookings, and conversion rate.
Posts to Slack (shared webhook with alerts) and emails everyone subscribed to the
“Daily Digest” category in the Notification Recipients table below.
Changes save immediately and reschedule the next fire.
Send Time (24h local)
Timezone
Cost Savings (estimated dollars saved vs. live answering service)
Current model: a flat rate multiplied by the number of AI-driven bookings. Shows on the Analytics tab (Lifetime, Today, This Week).
A future version will factor in real per-call Vapi + Railway costs for a true net-savings number.
Cost Per Booking (USD)
—
Cold-Day Alert (v2.20.0 — 2-day-advance email)
Each morning, scans AC maintenance jobs scheduled exactly 2 days from today and, if the forecast for that day is below the cold cutoff for either tech bucket (75°F sales tech, 70°F service techs), emails the office a list so customers can be called and rescheduled before the tech arrives. Same thresholds as the Weather tab — the alert can never disagree with what the dispatcher sees in the UI.
Email goes to everyone subscribed to the “Cold-Day Alerts” category in the Notification Recipients table below (env-var fallback used if nobody is subscribed).
Send Time (24h local)
Timezone
Sales-Tech Overflow Protection (v2.23.0 — separate Maintenance + Service switches)
Controls whether the sales tag (Chris, dedicated estimator) can be booked for maintenance and/or service calls — each has its own switch below. The sales tech tag (Raphael and other reps in the opportunity-call rotation) is never affected by these switches. Estimates are always allowed regardless of either setting. Turn a switch OFF to keep Chris's calendar clear of that booking type across voice, chat, the booking widget, and the club booking widget.
Last changed: —
AI Model for Tech Notes (used by techs to polish field notes)
Which Claude model the tech dashboard uses when a tech clicks “Enhance with AI” on a job.
Higher tiers produce smoother customer-facing writing on complex jobs but cost more per polish.
Changes take effect on the next Enhance click — no redeploy needed.
Model
—
Booking Horizons (how many days each booking widget shows ahead)
Each booking widget can show a different number of days into the future. Smaller numbers feel more immediate; larger
numbers let customers plan further out. Hard ceiling: 60 days (infrastructure cap on weather climatology). Changes
take effect on the next customer session — no redeploy needed.
Booking Widget (days)
Club Booking Widget (days)
Reschedule Widget (days)
—
Club Campaign Cutoffs (latest date customers can book through the club widget)
Optional per-service end-date for the club booking calendar. When set,
the widget hides any date after the cutoff for that service.
Leave blank to use the booking horizon (configured above) as the only window.
The active campaign is highlighted with a green dot. Cutoff applies only to NEW
club bookings — customers being moved by the office (e.g. cold-day reschedule)
always see the full horizon.
—
Sales Tech Eligible (system age at which a sales tech can take a club booking)
Sets the system age at or above which a sales tech becomes eligible for a Comfort Club member's
booking. Keep it at 10+ to reserve sales techs for older systems (the default). Lower it during slow stretches so
sales techs can fill empty calendar days on newer systems. Changes take effect on the next club booking — no redeploy needed.
Sales tech services systems aged
—
Business Hours
Per-day office hours that drive the voice AI's after-hours greetings and callback wording.
Open/Close define the business window; Evening Cutoff splits “we'll call you back tonight”
(between Close and Cutoff) from “we'll call you back in the morning” (after Cutoff).
Mark a day Closed for full-day closure. Changes save immediately and apply to the next call.
—
Sales Tech Schedule
Which weekdays the sales tech (Raphael) can be booked — across every channel (voice, chat, booking & club).
Uncheck a day to stop offering it. Default is Mon–Thu (no Friday). Saturday is handled separately by the “saturday tech” setup and Sunday is never a work day, so neither is listed here.
Changes save immediately and apply to the next booking.
—
Notification Recipients
Add one or more email addresses and choose which notifications each should receive.
Check or uncheck any box to toggle a subscription — changes save automatically.
If no one is subscribed to a category, notifications fall back to the default office email.
Email
Label
Loading…
Loading…
Add a new recipient
Team Accounts
Username
Email
Role
Status
Actions
Loading…
Change My Password
Current Password
New Password
Confirm New Password
📋 Team Jobs · Performance
Per-technician performance across today, the last 7 days, the last 30 days, and all time. Read-only.
KPI tracking start date:Sets where “All time” begins; clears tool-usage% skew from older data.
Technician
Jobs done
Tool generated
Tool-pushed
Total estimates
Open
Tool usage
Close rate
Close rank
Sales rank
Open this tab or click Refresh to load…
Tool usage = eligible completed jobs that used the Tech Connect AI tool; shows — until the recorder has a full window of data.
· Close rate is coming soon.
· Jobs cached 5min.
Jobs
Read-only view of this technician's jobs scheduled for today (Denver time).
Loading…
⚙️ Dashboard Access —
Check which sections this user can see. The Activity feed is always visible to everyone.
⚑ Feature Flags —
Enable experimental Tech Connect AI features for this user. Each flag is per-user and defaults OFF — turning one on affects only this user, not the rest of the team.