Hi all,
We are using the Genesys WebRTC SDK library in our Angular project to allow the agent to make calls. This library creates a websocket connection to genesys to subscribe to the v2.users.${yourUserId}.conversations topic. It then uses the data received from the webmessages in the "conversationUpdate" function.
We also need more data from the v2.users.${yourUserId}.conversations topic and have created a second Websocket ourselves to receive conversation updates (participant data changes, transfers, callstate, ...)
In 99% of the calls the webmessages from both websockets arrive at exactly the same time. However, we have noticed that in 1% of the calls there is a significant delay between the events (>5 seconds), which causes for example that agents receive a call, but won't have the information about the customer for more than 20 seconds later in extreme cases. Or misses the call because of this issue.
We have not found the root cause of these delays, but have identified that having two websockets that query the same endpoint brings a lot of extra complexity and instability.
Would it be possible for us to re-use the data from the websocket created by the WebRTC library?
Right now only conversationUpdates are exposed with the
this.webRTCSdk?.on('conversationUpdate', this.onConversationUpdate);
function. However, the data retrieved from this event is very limited. We would need the full data received from the received webmessage. Could you expose this raw data? Something like:
this.webRTCSdk?.on('conversationUpdateRaw', this.onConversationUpdateRaw);
That way we do not have to subscribe to the same topic as the WebRTC library.
Thank you!
Kind regards,
Nils Mak
#WebMessaging
------------------------------
Nils Mak
------------------------------