Inviting another channel to a bridge

Hello, i am building a Voip chat service, with IVR indicating the rooms, creating dynamically rooms, and listing the callers connected to each section of the IVR that are waiting for somebody to speak to.

Example:

“A” calls a number and an IVR answers, then is asked for name and introduction message and then listen a list of names and messages from another callers that active in my system (listening the same list)

After each name + message, the system tells several options, like, leave a message (that the other user can hear in another option of the IVR) , go to next user, repeat audio, and finally invite user to a conversation.

“A” wants to talk to “B” and select that option from the IVR.

i can connect the 2 channels from deferent ways, confbridge, bridge, page, channelredirect+confbridge (to make 3way conferences) and all of those work ok.

but i need a way to ask “B” if wants to connect with “A” prior making the bridge.

i need something like the “p” option in the Dial() function (privacy screening) that asks “A” to leave his name and then calls “B” and play the name, and then “B” decides if takes the call.

i cannot do that using Dial() because all users “A”, “B”, etc. are already in my system as active calls.

is there a way to use the privacy screening feature from Dial() alone or within a bridge function?

This can be done , I made something similar a time a go using local channel, origiante cmd and gotoif + channelredirect