Queues and presence

Discussion in '3CX Phone System - General' started by Marc Mohring, Dec 12, 2017.

Thread Status:
Not open for further replies.
  1. Marc Mohring

    Joined:
    May 11, 2017
    Messages:
    8
    Likes Received:
    0
    Hi all,
    I have a tricky callflow problem, and I'm hoping someone can help.

    My client has 60 retail stores, and 1 head office location.

    To improve customer service, they have started a call centre trial in head office that can take the calls for the retail stores, if the store staff don't answer the call.
    So, a customer will ring the store DDI, call does not get answered in-store, then the call goes to the call centre.

    There is currently only 1 person manning the call centre. I have created a queue for the call centre, and all works beautifully.

    The customer now wants to make some changes:
    - if the call centre person is away (sick, lunch, other duties), the calls need to keep ringing at the store.
    - if she is 'on duty' the call needs to ring at the store for 20secs, then go to the call centre queue and stay there until answered by the call centre person

    I've been going round in circles trying to design the callflow for this, and am hopelessly stuck.
    Any suggestions would be very welcome.

    Thanks,
    Marc
     
  2. pact

    pact New Member

    Joined:
    Dec 16, 2009
    Messages:
    163
    Likes Received:
    30
    Hi Marc,

    Quick thought would be;

    DDI -> Ring Group 1 (Which only has the store)
    Exit Strategy for RG1 -> Call Queue (call center)
    Call Queue (Call Center) will only work if an agent is logged in
    Exit Strategy for Call Queue (Call Center) -> Ring Group 2 (Store again).

    This way if there is an agent logged into the Queue the caller will sit in that queue to be collected, if the agent is logged out, then the Queue will be skipped and the call will go back to the store.

    So the Agent would need to be responsible for logging in and out of the queue when they are on break / end of day to ensure the caller isn't stuck on hold for 2 minutes (or whatever the maximum wait time is of the queue).

    This is all on the assumption that you do not want the caller to go to Voicemail, which could be put in place of any exit strategy if you wanted this to happen.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  3. Marc Mohring

    Joined:
    May 11, 2017
    Messages:
    8
    Likes Received:
    0
    Thanks pact,

    Looked at something similar, and I'm not sure it will work.

    Once it goes from RG1 to the Call Queue and on to RG2 if no-one's logged in, how do I know which store to send it back to?

    Unless I set up a queue for each store.

    And, I was kind of hoping to avoid that, since I also have to do 2 Digital Receptionist per store.

    Tx,
    Marc
     
  4. dan_tx

    Joined:
    Nov 3, 2016
    Messages:
    84
    Likes Received:
    22
    Would this work?

    DDI -> Ring Group 1a (Which only has the store extensions)
    Exit Strategy for RG1a -> RG1b(Which is RG1a extensions and a new call center user ext)
    Exit Strategy for RG1b -> RG1a

    Set the new call center user ext for status Available to if call is not answered in 1 second forward to Call Center Queue and accept calls from RG. So if that ext is available, all calls that ring RG1b go to the call queue.
    Set the Call Center user ext away status to not accept calls from RG.

    You will have to create another ring group for each store, and make/set an ext to be in those groups with all the other ext for that store. But this way if that user is available status, they will forward all calls to the queue. If they are away, it just rings the store. The added benefit is when the call center user ext is switched back to available, anyone that is ringing the stores will eventually hit the queue.

    Then just give your actual call center person access to change the ext available status for this new call center ext.
     
  5. NickD_3CX

    NickD_3CX Support Team
    Staff Member 3CX Support

    Joined:
    Jun 2, 2014
    Messages:
    1,246
    Likes Received:
    61
    You could use the 3CX Call Flow Designer to create this kind of custom logic you are looking for, there are a few great example of what you can do here.

    I must admit personally I haven't used it that much, but I think you still wouldn't avoid creating a custom CFD project per store, only to change the RG numbers that it would transfer back to. This means that as far as entries in the Management Console go, it would be the same as adding a Queue per store. It is worth checking out though.
    A notice about this though, as you will need to make a few Call Control API calls to get the status of Queue Agents (logged in/out), it would be good if you are somewhat familiar with .NET programming (not too much).

    Then you could create a logical flow of:
    - Ring Store A RG for 20s
    - No Answer --> CFD project
    - CFD Project: Is Agent logged in?
    ---- If yes --> transfer to Queue
    ---- else --> Send back to Store A RG
    - Repeat all
     
Thread Status:
Not open for further replies.