Why Music On Hold changes take a minute to apply
Edit a VICIdial Music On Hold class and the change is not instant — VICIdial rebuilds the hold-music config once per minute. Here is why, and what that means for your edits.
You edit a VICIdial Music on hold class — add a track, change a Rank, flip Active — hit submit, and call in to test it. Nothing changed. A minute later, it works. That delay is not a bug. VICIdial updates Music On Hold once per minute when there have been changes, and understanding why saves you from chasing a problem that isn't there.
Why it isn't instant
Your edits in the admin go into VICIdial's database, but Asterisk does not read hold music from the database. Asterisk reads it from a config file. So VICIdial has to translate your database changes into that file and tell Asterisk to re-read it. Doing that on every single click would mean constant config rewrites and reloads, so VICIdial batches the work: a background process checks for changes and, if it finds any, rebuilds the hold-music config and reloads it. That check runs about once a minute.
The result is a short, predictable lag between saving and hearing the change live. If there are no changes, nothing gets rebuilt — the process only does work when something actually moved.
The path from save to live
flowchart TD
A[Save MOH change in admin] --> B[Change stored in database]
B --> C[Per-minute keepalive runs]
C --> D{Changes detected}
D -- No --> E[Do nothing]
D -- Yes --> F[Regenerate hold-music conf]
F --> G[Asterisk reload conf]
G --> H[Sync hold-music folder]
H --> I[Change is live for callers]That folder-sync step at the end is easy to miss but important. When VICIdial rebuilds, it also reconciles the hold-music folder against your classes: files that belong stay, and any file in the folder not listed in a class gets removed. So the once-per-minute cycle is both how your change goes live and how stale files get cleaned up.
What this means for your edits
- Wait a full minute before testing. If you call in immediately and hear the old audio, that is expected — try again shortly.
- Batch your edits. Add several tracks and set all the Ranks before the rebuild, and one cycle carries them all live together.
- Make changes off-peak. Callers already on hold during a reload may hear playback restart as Asterisk re-reads the config.
The same once-per-minute rhythm governs every Music On Hold change — adding a track, removing one, reordering Ranks, or toggling Active. It applies no matter which Campaign or Ingroup points at the class, because the change is at the config level on Asterisk, not per-queue. Once the config is live, callers hear the result as One-way audio on their next hold.
If you suspect a file is the problem, VICIdial GSM vs WAV audio explains which formats actually play. The once-per-minute behavior is one of several quirks in VICIdial's audio system — for the full picture, including prompts, voicemail, and TTS (text to speech), read our VICIdial audio prompts, voicemail, and TTS guide.
VICIfast runs the keepalive and config rebuild for you on a fully managed dialer, so your hold-music edits just go live on schedule. See our pricing to get started.
About VICIfast LLC
VICIfast LLC operates a managed VICIdial hosting + BYOI service for outbound and inbound call centers. We run the dialers, the carriers, the recordings pipeline, and the compliance plumbing so operators don’t have to.
Citing this article
VICIfast Engineering. “Why Music On Hold changes take a minute to apply”. VICIfast LLC, June 26, 2026. Retrieved from https://vicifast.com/blog/vicidial-moh-once-per-minute-update
Have questions?
Related posts
You might be interested in
VICIfast newsletter
Liked this? Get the next one in your inbox.
We ship the kind of stuff you just read — concrete, numbers-first, no drip. One email when a new post goes live. Unsubscribe in one click.
Comments
No comments yet — be the first.