Outbound MOH selection at a station level

Good evening. Question about MusicOnHold. We have a customer that wants a group of phones in a call center to have dedicated MOH. On the inbound, that’s easy - I can do it by the DID or the queue (Queues can “inherit” the MOH from the DID used to reach them). However, I found no way to control the MOH heard when a user calls OUT from their phone. I can assign an MOH class to an external route, but if that’s a shared trunking resource, that doesn’t help me. Outbound Route-based MOH also doesn’t help if the user is calling out to another station users.

I really expected to see an “MOH Class” field on the station setting. Does anyone have any thoughts on how to achieve this under the current FPBX13 structure?



Maybe custom code in one of the macro-dialout-*-predial-hook macros?

where * can be trunk, one, hunt, dundi, ringall… (see extensions.conf for more information).

If the calling extension is not one of the ones for which you want special treatment you return immediately otherwise you set a different music on hold class…

As for using an external route, you can create one which is only used by a few extensions (fill in the CallerID field in the Dial Patterns) with the extension number and still use the same trunk as the other extensions (which will be handled by another outbound route placed after the one which handles specific extensions…

Of course, that will only handle external traffic otherwise I have a feeling it would create a loop of somekind if you tried to route it back to your PBX…

Not the nicest of solutions but I don’t see any other way…

Good luck and have a nice day!


1 Like

Ouch - that seems very painful. I can’t believe there isn’t a native way to apply MOH on a per-station level. Just about every system I know of out there does it (sigh).