Work sample 07 / 14AI agent integration

After-hours AI call agent into ServiceM8 or Jobber

How I'd approach an after-hours phone line for a multi-branch service group: an AI call agent qualifies the caller, books routine work into ServiceM8 or Jobber, sends emergencies to the on-call technician and hands anything unusual to a person.

Worked example on representative data.

Area
AI agent integration
Tools
ServiceM8 · Jobber · AI voice agent
Typical scope
US$2,500–4,500
Timeline
About 5 weeks · 4 fixed milestones

01Context

A service group with several branches and an on-call roster. After hours, calls go to voicemail, and the office retypes them in the morning. Jobs are run in ServiceM8 or Jobber.

The systems in play

In the example the group has three branches, each with its own on-call technician and a manager as the second contact.

Table 1Who uses what
SystemWhat it does for the business
Phone lineThe business number, forwarded to the agent outside opening hours, per branch.
Voice agentAnswers the call, asks set questions, reads the address back and follows the call rules. It does not make decisions the rules do not allow.
ServiceM8 or JobberReceives the booking or request, with the caller’s details and the transcript attached.
On-call rosterWho answers emergencies for each branch, and who is second in line.

02Problem

What the owner sees

  1. Callers who leave no message and ring the next company
  2. Emergencies that wait until the morning
  3. On-call phones that ring for things that can wait
  4. An office that retypes voicemails before it can start work

Most after-hours calls are routine. A few are emergencies. The cost of getting that split wrong is either a missed emergency or a technician woken for a quote request.

Table 2Where after-hours calls go wrong
Everyday situationWhat goes wrong
VoicemailLeft unheard until the office opens, and often left blank
Wrong urgencyA burst pipe and a quote request are treated the same
Booking without checking the addressThe job is created for a place the business does not serve, or the address is mistyped
Duplicate clientsThe same caller from a different phone number becomes a second client record
On-call does not answerThe emergency stops at one phone
Price questionsThe caller is given a price or an arrival time nobody agreed to
Upset callersA complaint is handled like a booking

03Approach

Four steps, in this order. A person stays in the loop for anything the rules do not cover.

  1. RulesWhat counts as an emergency, which areas are served, who is on call, what the agent may say and when it must hand over. Written down and signed off.
  2. BuildThe call flow and prompts are written, the agent is connected to the job system, and every answer is saved with the call.
  3. TestA script of test calls covers each rule, including the awkward ones. Every script must pass before the line goes live.
  4. Shadow, then liveOne branch runs for a week with every call reviewed the next morning. After sign-off the other branches follow.
Table 3Call rules agreed in writing (example)
RuleExample setting
EmergencyActive water leak, gas smell, burning smell, or no heating in cold weather. Each is listed with examples.
RoutineAnything else: quotes, repairs that can wait, general questions. Booked as a request for the office.
Service areaA list of ZIP codes per branch. Outside the list the agent says so and takes no booking.
What the agent may sayThat it is an automated assistant and the call is recorded. That a person will call back. No prices and no arrival times except the on-call callback window.
Emergency escalationTransfer to on-call. If no answer after the set time, a text to the second on-call, then to the manager.
Hand over to a personComplaints, legal or insurance talk, abusive calls, repeated misunderstanding, or any caller who asks for a person.

04What the setup includes

What the setup includes, and why each piece is there. The detail of how it is configured is agreed in the scoping call.

Show the setup, layer by layer
Table 4The setup, layer by layer
LayerWhat is set up and why
Phone lineAfter-hours forwarding by branch. If the voice platform fails, the call falls back to voicemail and a text alert goes to the manager.
Voice agentOpens by saying it is an automated assistant and that the call is recorded. Collects name, number, address, the problem and access notes, and reads the address back before ending.
Emergency pathTransfers to the on-call technician. If there is no answer, texts the second contact and then the manager. The caller is told what is happening, and the record is flagged urgent.
Job systemIn ServiceM8 a job is created in the queue for scheduling. In Jobber a request is created. Either way the client is matched by phone number, or created, and the transcript is attached as a note.
RecordsRecording and transcript saved against the client and linked from the job.
Morning listEvery call from the night with a flag: handed over, partial booking, unknown address, unanswered emergency, no response.
Audit trailFor each call, which rule fired and what the agent did, so a decision can be explained afterwards.

ServiceM8 and Jobber both sell their own phone answering tools. Where one covers the need, I would say so at the Health Check. A custom setup is for rules across branches, on-call escalation and logging into your own records.

How the call moves

  1. Call forwarded after hours
  2. Agent answers and qualifies
  3. Emergency or routine
  4. On-call transfer or booking created
  5. Transcript saved
  6. Morning list reviewed

05Edge cases

These are written as test calls before the line goes live.

Table 5Edge cases and how each is handled
SituationHow it is handled
Emergency, on-call answersTransfer completes. The job is created urgent.
Emergency, nobody answersSecond on-call is texted, then the manager. The caller is told what is happening. The call tops the morning list.
Address unclear or repeated twiceThe agent reads back what it heard and asks again. If still unclear, it flags the call instead of guessing.
Caller outside the service areaTold politely. No booking. Logged for the morning.
Existing client on a different numberMatched on address and name. If the match is uncertain, a possible duplicate is flagged and nothing is merged.
Caller hangs up mid-bookingA partial record is saved and flagged.
Price or arrival-time questionNo price given. The agent explains that the office will confirm in the morning.
Upset caller or complaintMessage taken, call handed to a person at the first opportunity, manager flagged.
Voice platform is downFalls back to voicemail with a text alert. The outage is visible on the morning list.
Spam or silenceHung up after a set time and logged with no data kept beyond the call record

06Worked example

The log below uses representative data. It shows the shape of the morning list, not a client result.

Table 6After-hours call log (sample data)
TimeCallerRule that firedOutcome
22:41Existing client, water leakEmergencyTransferred to on-call, answered. Urgent job created.
23:15New caller, quote for a replacementRoutineRequest created for office follow-up the next day
01:20Existing client, no heatingEmergencyOn-call did not answer. Second contact answered after a text. Escalation noted on the job.
03:05Unknown number, silenceNo responseHung up after the set time. Logged only.
05:50Caller outside the service areaOut of areaTold politely. No booking. On the morning list.
06:30Caller upset about an earlier visitHand overMessage taken. Manager flagged.
Table 7Test calls that must pass before go-live
Test callPass condition
Routine booking, known addressOne request or job, correct client, nothing duplicated
Emergency, on-call answersTransfer completes and the record is urgent
Emergency, no answer from anyoneTexts sent, caller informed, call tops the morning list
Unclear addressRead back and re-asked, then flagged if still unclear
Out of areaNo booking, polite close
Existing client, different numberNo duplicate, or a flag if uncertain
Price questionNo price given
Platform switched offVoicemail fallback and a text alert

07How the result is checked

The line is not live until every test call passes, and it is reviewed by a person for a week before it runs unattended.

Table 8Checks
CheckHow
Test callsAll scripts pass before go-live, and again after any change to the rules
Shadow weekOne branch runs. Every transcript is read the next morning by the office manager and me.
RecordsEach call that ends in a booking has exactly one job or request, with the right client
Escalation timingThe log shows how long each emergency took to reach a person
Ongoing reviewEvery flagged call, plus a weekly sample of the rest

08Scope and milestones

A fixed scope agreed in writing before anything starts. Each milestone is paid when you sign off its deliverable.

Table 9Scope: what a project like this covers
AreaIncluded
Health CheckReview of the current after-hours process and job system, a 45-minute call, written findings and a fixed quote
Call rulesThe rules in writing, signed off by the owner and branch managers
Voice agent and flowCall flow, prompts, escalation path and the connection to ServiceM8 or Jobber
Records and morning listTranscript and recording saved to the client, and a morning exception list
TestingThe test-call script, run to a pass before go-live
Shadow weekOne branch reviewed daily, then handover
HandoverWritten SOPs, a recorded walkthrough and files you own, plus 14 days of fixes after go-live
Not includedTax filing or payroll.
Also outside the scopePhone and voice platform fees, billed to you by the vendors. Legal wording for call recording, which your own advisor should approve. Daytime call handling.
Table 10Fixed milestones
MilestoneDeliverableTimingShare
M1 Rules and call flowRules signed off and the call flow writtenWeek 125%
M2 Agent builtConnected to the job system, all test calls passWeeks 2 to 335%
M3 Shadow weekOne branch reviewed every morningWeek 425%
M4 HandoverSOPs, walkthrough, 14 days of fixesWeek 515%

Typical scope for this kind of project: US$2,500–4,500

About 5 weeks across 4 fixed milestones. The Systems Health Check (US$300, fixed) comes first and confirms the scope.

Describe the process you want handled, and I'll say where I'd start.

Send a short note through the form on the home page. I will reply with where I would start, and whether the US$300 Systems Health Check is the right first step.