I agree with Brian that this is how it works.  I also agree with Brian that
if you're leveraging the Agent desktop properly, you would technically not
even need a prompt, the data on the screen could say "This is a CallBack
Call, Please Press 1 on Your Phone Now"  or something like that.

If you want to get really fancy with it, you can achieve what you're
looking for with the use of just one Enterprise Variable and a semi-tight
loop.  Below I'm delaying 3 seconds between polling intervals.  You'll want
to balance this with: max executed steps param, call volume, load,
performance, user experience, etc.  I find that between 3 and 7 is
acceptable most of the time.

Pseudo code below

*Calling Script*
...you already placed the callback call into the queue...
Wait for Agent:
agent_answered = Get Enterprise Call Info (callback_contact, agent_answered)
If (agent_answered == false)
    True
        Delay 3 Sec
        Goto Wait for Agent
    False
Menu (callback_contact, P[callback_choices.wav])
    Option 1 - Listen to CallBack Message
        Play Prompt (callback_contact, callback_message)
...the rest of your callback routine here...

*Queuing Script*
...answer the call and get ready to queue it...
Select Resource (--Triggering Contact-- from callback_csq)
    Connected
        Set Enterprise Call Info (--Triggering Contact--) Variable Used:
agent_answered = true
        End
    Queued
...the rest of your queue logic and end of your script...

Note that the callback_contact object in the Calling script refers to the
Triggering Contact in the queuing script.  I don't know how this works
under the hood, but it does, and I like it.  Otherwise, you'd have to
resort to some other mechanism, such as Sessions or Doc repository.

On Wed, Aug 9, 2017 at 9:58 AM Brian Meade <bmead...@vt.edu> wrote:

> I haven't seen a way around this before.  There's not really a way the
> first script knows when an agent answers the call that I'm aware of.
>
> I've just tried to make the prompts relatively short without much delay
> but then you can start using a lot of steps.
>
> One thing you could do is just make sure Finesse is displaying that this
> is a callback call so the agent knows to handle these differently.
>
> I've also seen people do callback by adding the call to an outbound dialer
> but I don't think there's any way to have the agent hear a pre-recorded
> message from the caller in that scenario.
>
> On Wed, Aug 9, 2017 at 10:42 AM, Ray Maslanka <ray.masla...@gmail.com>
> wrote:
>
>> Gentlemen,
>>
>> Much like the BaseLineAdvQueueing.aef script in the script repository, I
>> have scripts in production that allow callers the ability to leave a
>> message if they choose and receive a call back.  UCCX records the callers
>> message, terminates the call, calls a trigger, waits for an agent to answer
>> and prompts them to press a digit to confirm they want to hear the recorded
>> message.  The agent is then free to do what they want with that information.
>>
>> It seems what really happens after the message is recorded and the call
>> is made to the trigger to deliver it to an agent is that the script starts
>> playing the prompt "Press a digit to hear a message", regardless of whether
>> an agent has actually answered.  That prompt plays and waits a given amount
>> of seconds for the agent's digit input, and then loops, courtesy of the
>> timeout function related to the initial digit timer.  If no agents are
>> available, the script will continue to play the prompt and wait for digits
>> while listening to hold music, delay prompts or whatever may be presented
>> while waiting for an agent.  There is no real harm done here though.
>>
>> The issue is when an agent does answer, depending on when they answer
>> during the looping process, they may hear "Press a digit to hear a message"
>> or "to hear a message" or silence as long as the initial timeout value in
>> the Get Digit String step before "Press a digit to hear a message".  In
>> higher volume environments, that timer and the possible related silence
>> after answering may be unacceptable.  Three seconds of nothing may be
>> enough to trigger an agent to assume it is an abandoned call and hang up.
>>
>> I am hoping someone has a technique to have UCCX only start playing the
>> "Press a digit to hear a message" when the agent actually answers the call
>> that UCCX made into their queue.  If what I am experiencing is expected,
>> confirming that would be great too and I'll try to find an acceptable timer
>> or different recordings, etc.  If you believe what I am experiencing is not
>> correct behavior, any suggestions on what is wrong with that sample would
>> be appreciated.
>>
>> Running into this on fully patched UCCX 11, CUCM 11 and 8800 series
>> endpoints.
>>
>> Thanks in advance for any feedback.
>>
>> Ray Maslanka
>>
>>
>>
>> _______________________________________________
>> cisco-voip mailing list
>> cisco-voip@puck.nether.net
>> https://puck.nether.net/mailman/listinfo/cisco-voip
>>
>>
> _______________________________________________
> cisco-voip mailing list
> cisco-voip@puck.nether.net
> https://puck.nether.net/mailman/listinfo/cisco-voip
>
_______________________________________________
cisco-voip mailing list
cisco-voip@puck.nether.net
https://puck.nether.net/mailman/listinfo/cisco-voip

Reply via email to