We have a server based XMPP Listener connecting to a Finesse server and we use Smack 4.1.8 libraries to connect to Finesse XMPP Notification Service. We migrated from 11.5 to 11.6 Finesse.
We are seeing that after a long period of inactivity where a user/session is in not ready or ready for about 1 hour and we try to change agent states, we are not receiving any notifications from the Finesse XMPP service. Is there some kind of inactivity timer on the Notification Server. We don't have any kind of heartbeat or keepalive from our server going into the XMPP Notification Server for that session. The 11.6 Developer guide doesn't have much info about it.
Can you please advice on what might be causing this or anything changed from 11.5 to 11.6 that it is more sensitive to inactivity.
Thank you for your help
I don't recall any changes to the Finesse Notification Service between 11.5 and 11.6. You shouldn't need to use heartbeats or keepalive if you are using XMPP/Smack. I double checked the Smack Notification Sample code (https://github.com/CiscoDevNet/finesse-sample-code/tree/master/NotificationServiceClientSample) and didn't see any heartbeats either. This is using an older version of Smack.
I haven't heard of anyone else having issues with their notification service connection after the upgrade.
Thanks Denise for your quick response. I reviewed the sample code provided by you. I have it slightly different in our app, I have a XMPPTCPConnection to the finesse server for a user and I created a Stanza Type filter and a created a packet collector on that connection and looping for messages. It has been working well but with 11.6 upgrade with about 60 mins of no messages between the client and XMPP Notification server, i don't see any responses on my packet collector/listener. Is anything in 11.6 possibly causing this? Once again, I appreciate your quick response
Sorry, it seems like my response about nothing changed in 11.6 is incorrect. I had checked with the team and it appears that OpenFire (Finesse Notification Service) was upgraded to a newer version 4.03 in 11.6.
You stated that "We are seeing that after a long period of inactivity where a user/session is in not ready or ready for about 1 hour and we try to change agent states, we are not receiving any notifications from the Finesse XMPP service.", could it be that the user's presence logout is being triggered and therefore being logged out?
Hi Denise, thanks again for your response. We have seen examples in which the presence driven logout has not happened but after a period of inactivity and we tried to change agent state for example, Finesse does receive the new state from CTI after which it generates a Presence Unavailable and the new state never gets sent to the XMPP Client. I am wondering why this is happening given that the connection is still open or at least logs don't show that it was severed and a heartbeat is also not required.
Another question, is there a limit on how long an agent can be in not ready or ready in Finesse/CTI after which it makes their presence unavailable?
Thanks again for your help
You stated in your previous response "Finesse does receive the new state from CTI". A few questions on that:
1. Do you see the client request to Finesse to change the state?
2. If so, do you see Finesse's request to the CTI to change the state?
3. Again, if #2 is yes, do you mean in your statement that Finesse sends the request and CTI doesn't send anything back to Finesse?
If it is true that CTI isn't sending anything back to Finesse, then the issue is in UCCE/UCCX. If the CTI is sending back an agent state change,
1. Is Finesse publishing a notification?
2. Do you have wireshark capture to see if the notification server is sending the notification?
Hi Denise, please find responses
1. Do you see the client request to Finesse to change the state? (Yes requests always make it without any problem. Finesse receives them and CTI server also receives them)
2. If so, do you see Finesse's request to the CTI to change the state? (Yes)
3. Again, if #2 is yes, do you mean in your statement that Finesse sends the request and CTI doesn't send anything back to Finesse? (We saw that the CTI Server did send the response with the right agent state to Finesse but Finesse doesn't send it and says Presence Unknown/Unavailable)
The Finesse Notification Server which sends the message to the client is where it is getting stopped and new agent state is not being sent. Would you please let us know if there is any inactivity timer on Finesse Notification Service around 45 - 60 mins after which it stops sending notifications and makes the session Unavailable?