Hi Mostafa,
We have implemented similar functionality about 3 years ago and it works great.
We use our CRM (not linked to Genesys) to schedule customer callbacks. The process uses Genesys API's (POST /api/v2/conversations/callbacks) to create the scheduled callback, where you can specify customer phone number, callback datetime, queue, skills, any additional comments. The callbacks once created using this API will then be visible in the "Scheduled Callback" view.
How we achieved the callback delivery to same agent.
- Create a "special" skill for every user that is on Genesys, e.g. SKILL_FirstName_LastName and assign the skill to the individual user
- Execute the above API and apart from other important parameters, assign the "special" skill to the callback
- Genesys will create the callback with all the provided parameters
- When the time for callback reaches, Genesys tries to send the callback to all agents with the skill, and in this case the skill we have added is for just 1 agent, and if they are available, the callback will go to them
- Apart from the above API, we also used a few others to retrieve skill information, queue information etc.
- You will need to consider if agent is busy or not available, then what process you need to follow
Reason we used skills is to ensure that the callback always goes to the specific agent and then if the agent is not available, then all the callbacks scheduled for that agent can be picked-up by someone else if we add (temporarly) the skill to that person. This option was preferred over the "preferred agents" option in the API.
Hope this helps.
Regards
------------------------------
Vineet Kakroo
Senior Technical Consultant
------------------------------