Topic by Phillip Moon
Content
Hi,
I'm creating a chat addin in the RightNow desktop application. I'm wanting to create an addin to hook into the events for when a new chat is assigned and unassigned from an agent.
There are profile settings for the users that sets the default chat status of the agent. This can be found under Staff Management > Profiles (the profile of the users affected) > Permissions (in the ribbon) > Service (tab) > Chat Agent Statuses (right at the bottom). Image 1 here.
This setting works for the default chat addin toolbar that comes with the desktop application but it seems the rules don't apply for any custom chat addin created for the desktop addin.
I found a method that is on the IChatSession interface, SetAgentStatus. It takes two parameters, an ENUM for the type of status, and a statusId. I found the status' in the desktop app through Application Appearance > Customisable Menus > System Menus > Chat Agent Statuses. When you hover over the label for the available status it will show the statusId. You can see it here.
When I call the method it comes back with an error saying "statusId is invalid". You can see the code that calls it here (image 2) and the error (image 4). I only call the method if the chat agent in logged in and I have made changes since the screenshot was taken to only call the SetAgentStatus once. You can see the log file where it shows the SetAgentStatus is being called here (image 3).
Another unusual thing I have discovered is that the default chat status setting works in RightNow Feb '13 version but on the LIVE site I am using May '14 and it isn't working.
Question is, if the profile setting doesn't work and this method call doesn't work, how am I supposed to set the availability of an agent?
I'd rather not go down the path of using the 3PQ API as I have tried to use that before and is not exactly what I want.
Any help would be much appreciated.
Cheers
Phillip