Recorded greeting, dial-by-extension, 1/2 to operator

FeatureKlusterServices
Shipped
August 27, 2026 at 1:33 AM UTC
Author
Kamo
Commit
9b06ab3

Replaces the music-on-hold hold pattern with the recorded intro: - **************** plays the greeting AND listens at the same time, so a caller can dial over it from the first second. Playback() would ignore keypresses until the file ended — 70 seconds of being ignored. - 1 and 2 both go to the operator extension. - Nothing dialled by the end of the greeting goes to the operator, after a 4-second grace window so a caller who starts dialling on the last word can finish; without it the second digit arrives after we have moved on. - Direct dial matches _[3-9]XXX, not _XXXX. With _XXXX a single "1" is also a partial match for a 4-digit extension, so Asterisk must sit through TIMEOUT(digit) before it can rule that out and the caller hears four seconds of silence. The cost is that 1 and 2 are reserved, so no extension may begin with them — which the menu already required. Extensions renumbered 2523 -> 8912 (Briana) and 2000 -> 8000 (Erik). The WebRTC endpoint block is keyed by extension NUMBER, so renumbering silently strands an extension there: it still registers over WS, but with no DTLS/ICE the media never establishes and the caller gets a connected call with no audio. 8000 had no block at all as 2000 — and it is now the destination for every caller who dials 1, dials 2, or says nothing, so it had to gain one. Greeting audio is not in this ConfigMap: at 1.1 MB it would blow the etcd object limit. It lives on the asterisk-lib hostPath and the conversion command is documented next to the global that names it. Verified live end to end: greeting plays (BackGround custom/kamocrm-main-intro); 1 -> from-did-direct 8000; 8912 -> its voicemail with all 3 messages intact; an unknown extension plays pbx-invalid then falls to 8000.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing