Page 1 of 1

Music on Hold

PostPosted: Mon Dec 28, 2020 6:22 pm
by streetboy
VERSION: 2.14-738a | BUILD: 200210-1628 | StandAlone | Vicibox Installation | Asterisk 13.29.2-vici

I have 2 questions on music on hold.

1) I want to know if we can select different Music on Hold (already added to audio store)when parking calls from agent screen or through dial plan? Is there any way to do it?
2) Can I set 2 different music on hold for 2 outbound calls. For example agent makes an outbound call to customer 1. then he parks that call(customer 1 starts hearing MOH(default) ). Agent than makes another Outbound call to customer2 and than parks that call too (customer 2 will also starts to hear MOH (default)). Can I have different Music on Hold for these 2 parked calls? Is there any way if we dial customer2 with some prefix we can have different MOH Screenshot given below
https://prnt.sc/wbv08i

Asterisk CLI After Call Park:

Code: Select all
[Dec 28 18:40:36]   == Manager 'sendcron' logged on from 127.0.0.1
[Dec 28 18:40:36]     -- Channel SIP/ISP-OB-00000145 left 'simple_bridge' basic-bridge <e1552d46-45b6-4062-981b-5ca34908ac6f>
[Dec 28 18:40:36]     -- Executing [8301@default:1] Answer("SIP/ISP-OB-00000145", "") in new stack
[Dec 28 18:40:36]     -- Executing [8301@default:2] AGI("SIP/ISP-OB-00000145", "park_CID.agi") in new stack
[Dec 28 18:40:36]     -- Launched AGI Script /usr/share/asterisk/agi-bin/park_CID.agi
[Dec 28 18:40:36]     -- Channel Local/8600052@default-00000240;1 left 'simple_bridge' basic-bridge <e1552d46-45b6-4062-981b-5ca34908ac6f>
[Dec 28 18:40:36]   == Spawn extension (default, 913109614257, 3) exited non-zero on 'Local/8600052@default-00000240;1'
[Dec 28 18:40:36]     -- Executing [h@default:1] AGI("Local/8600052@default-00000240;1", "agi://127.0.0.1:4577/call_log--HVcauses--PRI-----NODEBUG-----16-----ANSWER-----15-----15-----SIP 200 OK)") in new stack
[Dec 28 18:40:37]     -- <SIP/ISP-OB-00000145> Playing 'sip-silence.gsm' (escape_digits=) (sample_offset 0) (language 'en')
[Dec 28 18:40:37]     -- <SIP/ISP-OB-00000145> Playing 'sip-silence.gsm' (escape_digits=) (sample_offset 0) (language 'en')
[Dec 28 18:40:37]     -- <SIP/ISP-OB-00000145> Playing 'sip-silence.gsm' (escape_digits=) (sample_offset 0) (language 'en')
[Dec 28 18:40:37]     -- <SIP/ISP-OB-00000145> Playing 'sip-silence.gsm' (escape_digits=) (sample_offset 0) (language 'en')
[Dec 28 18:40:37]     -- Started music on hold, class 'default', on channel 'SIP/Novatel-OB-00000145'
[Dec 28 18:40:37]   == Manager 'sendcron' logged off from 127.0.0.1
[Dec 28 18:40:37]     -- <Local/8600052@default-00000240;1>AGI Script agi://127.0.0.1:4577/call_log--HVcauses--PRI-----NODEBUG-----16-----ANSWER-----15-----15-----SIP 200 OK) completed, returning 0


Thank you.

Re: Music on Hold

PostPosted: Tue Dec 29, 2020 9:29 am
by carpenox
you can do so through the inbound groups but for something like playing two different hold music, you would need a custom dialplan i believe, but if you have the ingroup with one MOH and the default for the other, you should be able to reach your end goal

Image

Re: Music on Hold

PostPosted: Fri Jan 22, 2021 11:45 am
by williamconley
What I'm missing is WHY you want two different MOH options. I bet that would be rather enlightening.

If the agent phone has a hold button, you could try using that for the 2nd call.

Park Call IVR -This option will allow an agent to park a call with a separate IVR PARK CALL button on their agent interface if this is ENABLED or ENABLED_PARK_ONLY. The ENABLED_PARK_ONLY option will allow the agent to send the call to park but not click to retrieve the call like the ENABLED option. The ENABLED_BUTTON_HIDDEN option allows the function through the API only. Default is DISABLED. This feature requires Asterisk 1.8 or higher to work.

Of course the IVR could merely play MOH instead of offering any options.

Purely customized version, in case the previous method does not work for you:

Since the only discernable difference between these two calls appears to be "there's already one parked" vs "there's NOT already one parked", you could alter the dialplan to identify these calls to MOH as a "group". Once that's been done, each time a MOH call is initiated and it's added to a group, that means you can count the group members before deciding which MOH to initiate. Then instead of Default, you could create Park1, Park2, Park3, etc.. Then at the onset of the call to MOH, count the group members and add the number to the end of the Park MOH name.

This is the same method many use to limit calls to specific carriers, or balance between carriers.