Genesys CTI User Forum

Genesys CTI User Forum => Genesys CTI Technical Discussion => Topic started by: dmonast on April 07, 2008, 03:32:23 PM

Title: Preload Table data into Memory...
Post by: dmonast on April 07, 2008, 03:32:23 PM
Does anyone know if Genesys can load table data into memory for Interactive Routing usage?

I would like to preload the table data so that my dependencies are not at every Interaction.  Hopefully the table data can be stored into memory.

Why would I do this?

Our business wants more control of the call flow so their preferred method is a database instead of the options within the __ROUTER__ section of the Route Point.
Title: Re: Preload Table data into Memory...
Post by: Mike Kamlet on April 07, 2008, 03:41:55 PM
Try list objects
Title: Re: Preload Table data into Memory...
Post by: René on April 07, 2008, 04:02:50 PM
Hi,

You can mark selected "Table Access" in CME as "cacheable" so table data will be mirrored in application memory. Unfortunately there is no control over that behaviour.

René
Title: Re: Preload Table data into Memory...
Post by: dmonast on April 07, 2008, 07:47:38 PM
Table Access...

I checked on this feature and found out you only can use ListLookup function and that will only return a 1 (yes) or 0 (no).  Plus this Table Access can only have 1 field.

My data structure looks similar to the following:
[table]
[tr][td][u]DNIS[/u][/td][td][/td][td][u]MSG[/u][/td][td][/td][td][u]MENUOP[/u][/td][/tr]
[tr][td]3000[/td][td]|[/td][td]500[/td][td]|[/td][td]1.2.3.0[/td][/tr]
[tr][td]3001[/td][td]|[/td][td]500[/td][td]|[/td][td]1.2.0[/td][/tr]
[/table]

Normally I would use a SQL statement:
Select MSG, MENUOP From STRATEGYINFO Where DNIS = '30001'

But the above SQL Statement has a dependency on the database to be there for every call.  I am trying to eliminate the risk of relying on a database.  Possibly, Genesys preloads this table into memory at startup and refreshes every 60-300 seconds.

Table Access cacheable option is nice except the ListLookup function only returns 1s or 0s.

Any help would be appreciated.
Title: Re: Preload Table data into Memory...
Post by: René on April 07, 2008, 08:40:14 PM
Ok. Let's think about different solution ;)

What about using the suggested IRD list object? It gives you possibility to replace database call and it's very quick as URS loads the IRD list to its memory. These are benefits... On the opposite site, it's possible to modify IRD list with IRD only. And IRD list object doesn't allow you to define multiple columns - just key and its value. But you can use a workaround - value will have a form of structured string (see below). It's possible to parse the value using IRD function "GetStringKey" or "ListGetString".

    key: "3000"
    value: "msg:500|menuop:1.2.3.0"

Do you think that way could be acceptable for you?

René