cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
3672
Views
5
Helpful
8
Replies

UCCE User Variables Set to Persistent Not Working After ICM Router Reboot

gercedeno
Level 1
Level 1

Good Morning All,

We have a particular customer that two days ago lost its two ROGGERS (site A and B). We have provisioned for this customer multiple department call centers. Some of them have the ability to override their main scripts via an ad-hoc routing script passing global variables (set to persistent) values to the main script.

We noticed the following error on the logs:

00:06:40:944 ra-rtr Trace: Global UserVariable request returned 0 records.

00:06:40:944 ra-rtr Trace: Request for all global variables failed. Retrying individual requests.

00:06:40:944 ra-rtr Trace: Global UserVariable request returned 0 records.

00:06:40:944 ra-rtr Trace: Request for all global variables failed. Retrying individual requests.

After losing the two ROGGERS the values of the global variables were lost thus causing one of the production main scritps to redirect callers to one of the close options instead of routing calls as normal.

Is there a way to force the values to remain regardless of the loss of the two ICM routers.

Thank you,

Gerson

8 Replies 8

Gergely Szabo
VIP Alumni
VIP Alumni

Hi,

yes, by using scheduled administrative scripts.

For instance, an administrative script would look up a value in a database table or application gateway and set the value of a global variable.

G.

Thanks Gergely for the note,

For this particular customer we are using admin scripts to set the holiday and time of day schedules. In addition to that we also provisioned routing scripts with global variables that supervisors can call in and override their respective main script. What happened was when the two ROGGERS failed and recovered some of the global variables lost their values, specially the ones associated with overriding routing scripts.

I was advised to change the value of the following scritpt to "1" to prevent that. By default, it's set to "0". Have you ever heard of making this change before?

HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems,

Inc.\ICM\[Instancename]\LoggerA\Logger\CurrentVersion\HistoricalData\Persis​tent\​

Hi Gerson,

just saw this old "unanswered" question because I searched for the registry - path.

This registry key allows the logger to write the values of persistant variables into the table "t_persistant_variables" on the logger database. Without this change, the logger doesn't write down the values of the persistant variables and the router can't remember the values after restart.

For the persistant ECC - varables it's diffrent. There the persistant flag say's, that the rogger writes down the ECC - values into the TCD_Variables and RCD_Variables - Tables

regards, Matthias

PATRICK WILD
Level 4
Level 4

Typically an ECC variable is set for holidays and you can enable the "persistent" flag for the ECC variable versus making all variables persistent in the registry.

Sent from Cisco Technical Support iPhone App

Patrick,

Basically using ECC variables instead of the User Variables should force the value to remain regardless the loss of the central controllers, correct?

Correct, both ECC and User Variables can be set to persisent.

       

jpsweeney77
Level 4
Level 4

ECC persistence only means the values are written on a per call basis to RCV and TCV. This was introduced simply to provide an option to minimize what is written those tables since it was persistent by default previously. Nothing to do with maintaining the value for a lookup or global decision of any kind. That's what User Vars are for since they are global.

Sent from Cisco Technical Support iPhone App

Yeah, I was actually thinking hard to find the least sarcastic way to say ECC variables are tied to the call, but jpsweeney77 acted quicker.

About that registry key: I don't know anything about it, but go ahead, try it. IMHO if a user variable is set as persistent in the config manager, it should be persistent, unless there's a bug of some kind.

I would definitely explore other ways of setting the value of a global, for instance, a database table. This would enable your supervisors modifying opening times not only by a phone user interface, but with a simple web app, too - this is what I set up for one of my customers, too.

G.