You would need to create data table first, then create a data action for the platform api to write back into that table based on an event in the call flow... in this case it'd be an n+1 equation that would take the current value in the row and add one to it. You could also have a logic block there that would check and set the value back to 0 every time it reaches 10 (or 100, or 1,000, etc....).
Refer to the api explorer in developer tools:
/api/v2/flows/datatables/{datatableId}/rows
Will add the passed in row entry to the datatable with the given datatableId after verifying it against the schema. The DataTableRow should be a json-ized' stream of key -> value pairs { "Field1": "XYZZY", "Field2": false, "KEY": "27272" }
------------------------------
Dean Thames
Koch Business Solutions
------------------------------
Original Message:
Sent: 01-29-2021 01:13
From: Reginald Sheraton
Subject: Route a call percentage ?
Good Day,
just need some clarity on the below as i don't see any option to write data back into Data Table, only to get Data, do i use a Data Action?
If your dispersion needs to be more exact, you could create a count function that updated a value in a data table to increment up by one from 0 to 10 on each inbound call. Then you can routing decisions on that value, re-setting it to 0 it after it gets to 10.
------------------------------
Reginald Sheraton
Original Message:
Sent: 01-25-2021 07:00
From: Dean Thames
Subject: Route a call percentage ?
This is a bit of a do it yourself thing as there's no built in function to accommodate it (far as I know)
Lately I've been using the GetCurrentDateTimeUtc expression to parse out the miliseconds value and use that as a random integer to make decisions on. Technically it's not random, but it's close.
For example, considering a utc date time value of 2020-11-05T13:15:30Z,
Task.RandInt == ToInt(Left(Right(ToString(GetCurrentDateTimeUtc()),3),2)) will give you an integer of 30 stored in the variable "Task.RandInt"
You can then make a decision boolean task like so: Task.RandInt > 20
True = go to Queue A
False = Go to Queue B
Using that, the volume will even out to an 80/20 split over time.
If your dispersion needs to be more exact, you could create a count function that updated a value in a data table to increment up by one from 0 to 10 on each inbound call. Then you can routing decisions on that value, re-setting it to 0 it after it gets to 10.
------------------------------
Dean Thames
Koch Business Solutions
Original Message:
Sent: 01-25-2021 06:30
From: Reginald Sheraton
Subject: Route a call percentage ?
Good day,
just a follow up if you managed to get this working as i need to distribute calls between 2 queue's at 80\20 % of incoming calls
------------------------------
Reginald Sheraton
Original Message:
Sent: 04-03-2020 04:58
From: Alexandre Brenne
Subject: Route a call percentage ?
Hi,
I was wondering if it was possible on Genesys to route a call percentage?
To give an example:I have 3 separate call centers (which we will name A, B and C) which are connected to the same queue.How to route 20% on the A, 55% on the B and 25 on the C queue?I had thought of making from Architect a call of a random number between 1 and 100 to route the call according to this number.
But I was wondering if there were not other more reliable and rather easy means to realize.
Thanks in advance,
Alexandre
#Routing(ACD/IVR)
------------------------------
Alexandre Brenne
Niji SA
------------------------------