Skip to content

AI setup ​

AI in Rangefront Waste is optional, small and checked by a person. It tidies a technician's rough notes, drafts a customer email or text from a short instruction, writes the plain-English summary on a service report, drafts quote lines, and powers the phone agent. Nothing it writes is sent without someone reading it, except the phone agent, which speaks to callers on its own.

What each helper does for staff is in AI. This page is about switching it on and controlling it.

Server setup ​

AI calls go to Anthropic's Claude API with one key for the whole installation. A developer sets these in .env:

VariableMeaningDefault
ANTHROPIC_API_KEYThe API key. Without it, every AI feature says "AI is not set up on this server yet."none
ANTHROPIC_MODEL_FASTModel for note tidy-up, message drafts and the phone agentclaude-haiku-5-5
ANTHROPIC_MODEL_SMARTModel for report summaries and quote draftsclaude-sonnet-5-5
ANTHROPIC_FALLBACKSWhether to fall back to another model if one failstrue
ANTHROPIC_TIMEOUTSeconds to wait for a reply40
AI_MONTHLY_REQUEST_CAPRequests each business may make a month3000
AI_MAX_INPUT_CHARSLongest input sent in one request6000

The text a helper works on, such as job notes or a customer's name and address in a draft, is sent to Anthropic to produce the result. Tell your staff and, if your privacy policy needs it, your customers.

Turn it on for a business ​

Open Admin > AI. You need ai.manage to change settings.

SettingWhat it does
AI switchTurns every AI helper and the phone agent on or off for this business. It's on by default
ToneFriendly (warm and plain-spoken), Professional (courteous and concise), Formal (precise, like a letter from a firm) or Casual (relaxed, short sentences)
Style notesYour own guidance, such as "Never use exclamation marks. Say 'pump-out', not 'desludge'."
Sign-offHow drafts end, for example "Cheers, the team at Smith Septic"

If the server has no API key, the page says "AI is not set up on this server yet, so nothing below will run until it is."

People need ai.use to use the helpers.

Caps and usage ​

Every AI request is logged. "This month" shows requests used out of the cap (with a percentage), the input and output tokens, and a table by feature: requests, input and output.

When a business reaches its cap, helpers say "This company has used its AI requests for the month" until the next month. The phone agent counts every turn of a call against the same cap, so a busy month of calls uses it faster than note tidying does. If calls matter, raise AI_MONTHLY_REQUEST_CAP.

If Claude can't be reached, a helper says so and the person writes it by hand. The phone agent transfers the caller to your transfer number or takes their number for a call back.

Phone agent ​

The phone agent answers calls on a Twilio number. See phone agent for what callers and staff experience.

Before you start ​

  • A Twilio account with a voice-capable number.
  • Twilio set as the SMS service for the business (Admin > Email and SMS), with its account SID and auth token. Or the server's own TWILIO_* account if the built-in SMS service is in use. Voice only works with Twilio. Texts to on-call staff go through the business's SMS service. The Phone agent page says "The phone agent needs Twilio" when it can't find one.
  • The AI switch on, an API key on the server, and ai.manage for you.

Set it up ​

  1. Open Admin > Phone agent.

  2. Set "Answers" to After hours, Business hours or Always. For hours-based modes, choose the open days and the Opens and Closes times.

  3. Write an optional Greeting. Callers are always told it's an automated assistant and that the call may be recorded, whatever you write.

  4. Fill in "Business info" (what you do, where, who to ask for) and "Services and prices". Prices are given as guidance and the office confirms the final price.

  5. Add "On-call numbers", one per line. They're texted straight away when a caller reports an emergency such as an overflowing tank.

  6. Optionally add a "Transfer number" to put callers through to a person.

  7. Tick the phone agent on and Save.

  8. Copy the two addresses shown under Twilio into the number's settings in Twilio:

    • Incoming call goes in the voice webhook, HTTP POST.
    • Call status goes in the status callback.

    The addresses look like https://your-domain/api/v1/webhooks/voice/<secret>/incoming and .../status. The secret identifies your business. If it leaks, or the number moves, choose "New addresses" and update Twilio.

  9. Ring the number from a mobile outside your set hours (or set Answers to Always for the test) and check the call appears under Admin > Calls.

Twilio's requests are checked by signature with your auth token. Requests that fail the check are refused.

Server settings for calls ​

VariableMeaningDefault
TWILIO_VOICEThe voice Twilio reads withTwilio's default
TWILIO_VOICE_WEBHOOK_BASE_URLPublic address for the voice webhooks if it differs from APP_URL, such as when you sit behind a proxyAPP_URL
PHONE_AGENT_MAX_TURNSLongest call in exchanges14
PHONE_AGENT_MAX_CALL_SECONDSLongest call in seconds480
PHONE_AGENT_MAX_TOOL_ROUNDSLook-ups it may do in one reply4
PHONE_AGENT_JOBS_PER_TECH_PER_DAYUsed to work out which days have room6

Calls cost what Twilio charges for voice minutes plus AI requests. Check both after the first week.

Limits to know about ​

  • It records a booking request or a message. It never books a visit or quotes a firm price.
  • It follows what you wrote in Business info. It can still get things wrong, so read transcripts in Admin > Calls for the first few weeks.
  • It only runs on Twilio.

A$125 a month, or A$9,450 once with the source code. Contact us.