# Switching the line off

Switching a line off does not make it silent. A call to a line that is off is answered, given the same deterministic closed-line sentence in the business's own name, and closed with outcome `line_off`. Calls already in progress are not cut. Outbound follow-ups that would have used the line are refused with a reason and stay on the record rather than disappearing.

- **Status:** Available
- **Audience:** both
- **Channels:** phone
- **In the app:** #/calls
- **Last verified:** 2026-09-10
- **Canonical:** https://connectbyjbrh.com/docs/phone/line-off/

## Off is a spoken refusal

The instinct behind an off switch is that nothing should happen. On a phone line that is the wrong behaviour, because the caller experiences "nothing" as a fault: they hear a connect and a drop, or ringing that never resolves, and they usually try again. Neither reaction is useful to the business, and neither leaves a record.

So an off line answers. The refusal brief carries `closed_line_text`, the worker plays it on a track of its own, posts `refused_line` and hangs up. The row is `ended` with outcome `line_off`. The caller has been told something true in a voice that belongs to the business, and the business can count how many people rang while it was off.

## Off, closed, and not claimed

| State | Caller hears | Row and outcome |
|---|---|---|
| Line switched off | The closed-line sentence | `ended`, outcome `line_off` |
| Outside hours | The same sentence | `ended`, outcome `after_hours` |
| Inbound permission off | The same sentence, at every hour | `ended`, outcome `line_off` |
| Number not claimed by any workspace | Whatever the carrier does with an unhandled call | No row at all — there is no workspace to write one in |
| No worker has checked in | Ringing that reaches nothing | Refused as `not_ready` before a row exists, so the drain can retry |

The first three are worth distinguishing in the record even though the caller cannot tell them apart. `line_off` says a person decided; `after_hours` says a schedule decided. Six months later that is the difference between "we were shut for the festival" and "people keep ringing at midnight".

## What keeps running while it is off

**Calls in progress** — They finish. Switching the line off changes what happens to the next call, not to the one somebody is on.
**The call record** — Refused calls are written, so the Phone screen keeps counting. An off line produces rows, not a gap.
**Follow-ups** — They stay due. A phone follow-up that cannot be placed is recorded with its refusal reason; it is not silently completed and not silently dropped.
**Line health** — The line stops being judged for conversations it was never going to have. Health findings drain themselves as their causes clear.
**Other lines** — Nothing. Off is a fact on one `channel_routes` row, so a second number in the same workspace carries on unaffected.

> **Careful** A follow-up on the `phone` channel that stays undelivered for more than 24 hours is closed as `missed:` and never rung. Turning a line off over a long weekend can therefore quietly retire call-backs rather than delay them — a very late call-back is treated as worse than none.

## Turning it back on

1. Set the line's status back to on.
   - Result: The next call is answered as a conversation. Configuration is read per call, so nothing needs restarting.
2. Look at the `line_off` rows for the period it was down.
   - Result: That is the list of people who rang and were turned away, with times and numbers where the caller was identifiable.
3. Check the follow-ups screen for anything closed as `missed:`.
   - Result: Those are commitments that expired while the line was off, and they need a human decision rather than an automatic retry.

If the line was off because something was wrong rather than because the business was shut, the Phone screen's health section is the better first stop: a line that reports itself unhealthy names which of the four causes applies, and each of those drains on its own once fixed.

## Questions

### Is switching the line off the same as setting the voice channel's autonomy to `off`?

No. Line status governs the number: whether calls on it are answered or placed. Autonomy governs what Connect may do without a person — so autonomy `off` on the voice channel stops Connect acting on the channel while the line itself may still be answered under other rules. They are set in different places and refuse different things.

### Can I switch off just outbound calling and keep answering?

Yes, and that is usually the better switch. Inbound and outbound permission are independent fields on the line, so a line can answer everyone and call nobody, which suspends call-backs without turning away enquiries.

### Does an off line still cost anything?

A refused call is short and is metered like any other call — the record is written and the cost booked from its own duration. It is far cheaper than a conversation, but it is not free, and a number being hammered while off is still worth noticing.

## Related

- [Business hours and the closed line](https://connectbyjbrh.com/docs/phone/business-hours/)
- [Configuring a phone line](https://connectbyjbrh.com/docs/phone/line-configuration/)
- [Phone line health](https://connectbyjbrh.com/docs/phone/phone-health/)
- [Calls that were never a conversation](https://connectbyjbrh.com/docs/phone/not-a-conversation/)
- [Follow-ups in Connect](https://connectbyjbrh.com/docs/follow-ups/)
- [What Connect may do](https://connectbyjbrh.com/docs/autonomy/)

## What this page is based on

- AGENTS.md §9a — refusal briefs and line status (via docs-source/sources/PHONE.md)
- AGENTS.md §7 — the phone follow-up drain and its 24-hour rule (via docs-source/sources/GENERAL.md)
- `backend/app/voice_engine.py` — `incoming` and `line_health`
- Connect capability registry (docs-source/facts.py)
