I’m currently building template in Genesys Pulse in preparation for migrating from CCPulse.
Not having a great knowledge of how formulas work in Genesys Pulse, I’m hoping for some pointers on the following formulas
Agent Status - In CCPulse I’m displaying this using stat type CurrentAgentState with notification mode set to Changes Based and Format set to StatusName (Hours:Min:Sec). Example of how this displays is CallInbound (00:01:15)
From what I’ve read, I think I can display the time in status in Pulse via formula Result = G.GetStatusDuration(Data.Current_Status.Value); but I’m unsure as to whether this will display only the time or whether it will also show the status (and if the status doesn’t show, how do I make it show).
Can anyone help?
Reason Code - I’m looking to show the Reason Code selected by the Agent. Currently in CCPulse we have the following formula
if (ccpulse.group(“Not Ready Code”).statistic(“Admin”) > 0) {“Admin”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Additional Duties”) > 0) {“Additional Duties”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Break”) > 0) {“Break”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Coaching”) > 0) {“Coaching”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Complaints”) > 0) {“Complaints”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Demand Analysis”) > 0) {“Demand Analysis”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Email”) > 0) {“Email”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Escalation”) > 0) {“Escalation”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Lunch”) > 0) {“Lunch”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Meetings”) > 0) {“Meetings”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Outbound Call”) > 0) {“Outbound Call”}
else if (ccpulse.group(“Not Ready Code”).statistic(“System Issues”) > 0) {“System Issues”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Training”) > 0) {“Training”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Walk Away”) > 0) {“Walk Away”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Wrap Up”) > 0) {“Wrap Up”}
else if (ccpulse.group(“Not Ready Code”).statistic(“Not Ready”) > 0) {“Not Ready”}
else {" "}
Again, I’m unsure how this will carry across to Genesys Pulse but it seems to have a standard formula to show Reason Code as follows
Result =
G.GetReasonCodes(Data.Current_Status.Value);
This feels too simple so I’m hoping someone has some ideas on the way forward for this one
Get reason codes corresponding to the current status of the agent from all media types. Reason codes can be obtained only for the following agent statuses: LoggedIn, AfterCallWork, NotReadyForNextCall, WaitForNextCall.
With formulas:
Result = G.GetAgentNonVoiceStatus(Data.Current_Status_Email.Value, ‘email’);
Result = G.GetAgentVoiceStatus(Data.Current_Status_Voice.Value, ‘voice’);
If you use this stat it will also show your own custom reasons: (no formula needed)
To show agent status reason we need to create the following:
Statistic in Stat Server: [ExtendedCurrentStatus] and [ExtendedCurrentStatusReasons]
Statistic in Pulse that refers to [ExtendedCurrentStatus] and [ExtendedCurrentStatusReasons]
Formula that refers to created Pulse statistic [ExtendedCurrentStatus] → must refer to Alias name and must be present in that template. (Check the box for Hide Statistic on this one)
Two different formula’s and Alias’ are required to differentiate Voice (calls) and Non-Voice (email)
The filters EMAIL_MEDIA and VoiceCall need to be applied to the Statistic in Pulse.
Which are:
Result = G.GetAgentNonVoiceStatus(Data.Current_Status_Email.Value, ‘email’);
Result = G.GetAgentVoiceStatus(Data.Current_Status_Voice.Value, ‘voice’);
I’m currently trying to configure the above and have a few questions…
Statistic in Stat Server: [ExtendedCurrentStatus] and [ExtendedCurrentStatusReasons] - this has been done and added to stat server
Statistic in Pulse that refers to [ExtendedCurrentStatus] and [ExtendedCurrentStatusReasons] - are these two new statistics on my Pulse Widget?
Formula that refers to created Pulse statistic [ExtendedCurrentStatus] → must refer to Alias name and must be present in that template. (Check the box for Hide Statistic on this one) - my formula would look something like this?
Result = G.GetAgentNonVoiceStatus(Data.ExtendedCurrentStatus.Value, ‘email’);
Result = G.GetAgentVoiceStatus(Data.ExtendedCurrentStatus.Value, ‘voice’);
Nope. I have tried many times and failed all of those times.
Edit: perhaps I should give it another try as the 9.0 release notes state:
Display format Status. This new display format is applicable only for statistics using Statistical Type ExtendedCurrentStatus. It allows to specify values displayed for the status (icon, name, media, duration) and to select current status statistics on any chart.
I checked logs and saw a bunch of errors because statistic type is case sensitive. I corrected that issue but still seeing No Objects message. I tried running with a bunch of agents and with single agent, but no luck. Permissions seem to be okay. I tried publishing the widget to the config server and load the widget, but no luck there as well.
Maybe you haven’t selected the statistics you want to display? This is one thing I hate the most about pulse - even though you’ve defined all the stats in the template, when you create a widget you have to select each stat you want to display. This is done on the last tab.. underneath where you select the report type. It’s near the “update frequency” setting.