Menu during Dial + Hold

Hello,

Is it possible to put a person on hold and execute the context of a specific menu?

For example, I am on a call, then I press # and that puts my call partner on hold and I am redirected to a menu, a little like conference menus but just during a DIAL.

Thank you for your answers.

You can send the holding party to a holding bridge, and the other one the context, using feature code and channel redirect this can be done

Thanks for coming back (again) but I don’t see any options in dial to do this.

Could you tell me how to do this?

Once you create th feature code you need to add one of these options to the dial command

  • h - Allow the called party to hang up by sending the DTMF sequence defined for disconnect in features.conf .
  • H - Allow the calling party to hang up by sending the DTMF sequence defined for disconnect in features.conf .

Thank you for this idea which seems to be a good solution.

What I am trying to do has to do with my previous question. As the blind transfer has an abnormal behavior I try to avoid this one.

What I’m looking to do (always during a Dial):

  1. The called party dials a feature code (*).
  2. The caller is put on hold.
  3. The called party is transferred to a context (menu) and dials the number of the person to be transferred.
  4. The number is sent to my server which stores it
  5. The called party returns to the initial conversation and ends the call or simply hangup from context to trigger the end of Dial in the context of the caller.
  6. After Dial, the caller calls a URL to find out whether or not to transfer.

But I encounter several problems:

  1. The groups feature already does not work. Only the first instruction in the group is executed. I cannot run several applications in succession on the press of a single key.

  2. If I use channel redirection on the called side, the Dial systematically ends on the calling side. I should be able to find an application that allows me to enter the extension to be transferred and then send it by CURL but without leaving the bridge in progress

In features.conf I tried this :
transfer_init => #9,self,ChannelRedirect(${CHANNEL},test-context,s,1)

This redirects me well in the context (I see a NoOp in the CLI) but I have no more audio (StartMusicOnHold for the test but does not work)

= Spawn extension (sos_v4, , 1) exited non-zero on 'SIP/20005-000000fc'
    -- SIP/20005-000000fc Internal Gosub(partner-answer,s,1(4a798dfa597f408bb830169d987bb0fc,2dd8b59d98ab4337a135b5ab8906bcaa)) complete GOSUB_RETVAL=
    -- Channel SIP/20005-000000fc joined 'simple_bridge' basic-bridge <9182ca04-282a-4374-9c56-9d7f1f47e456>
    -- Channel SIP/x.x.x.72-000000fb joined 'simple_bridge' basic-bridge <9182ca04-282a-4374-9c56-9d7f1f47e456>
       > 0x7fe658097320 -- Strict RTP switching to RTP target address x.x.x.171:40044 as source
    -- Channel SIP/20005-000000fc left 'simple_bridge' basic-bridge <9182ca04-282a-4374-9c56-9d7f1f47e456>
    -- Executing [s@test-context:1] NoOp("SIP/20005-000000fc", "s: Test-context OK") in new stack
    -- Executing [s@test-context:2] StartMusicOnHold("SIP/20005-000000fc", "") in new stack
    -- Started music on hold, class 'default', on channel 'SIP/20005-000000fc'
    -- Auto fallthrough, channel 'SIP/20005-000000fc' status is 'UNKNOWN'
    -- Stopped music on hold on SIP/20005-000000fc
    -- Channel SIP/x.x.x.72-000000fb left 'simple_bridge' basic-bridge <9182ca04-282a-4374-9c56-9d7f1f47e456>

“partner-answer” is used with U option on Dial. We can see that it ends.

It seems that whatever happens, as I am an extension called by Dial, if I quit Dial I must die.