We have just a third party recording server to their CUCM and UCCX environment. Every agent call is recorded with this server. The server is call Zoom CallRec. Basically when an agent places or receives a call, it sends a copy of the sending and receiving stream to the Zoom server in two separate streams. So thats four streams going from the agent PC/Phone at that point.
Now if you dial into the remote monitoring script and select to monitor that agent, instead of the CAD sending just the original call's sending and receiving stream, it sends those four streams to the UCCX server and then those are merged into the current stream to the remote monitoring phone. This sounds stuttery and robotic to the phone doing the remote monitoring.
My understanding of whats happening is you have two streams for the call between the agent and the calling party. That call is recorded so two more streams are sent from the agent phone to the Zoom call recording server. When a user selects that agent in the remote monitoring script, UCCX sends a message to the CAD client to capture all RTP streams going in and out of the phone. At that point, 4 streams are going in and out of that phone. So CAD copies those four streams and sends them to UCCX when only really two of the streams are needed since they are duplicates.
I have done a capture on the agent PC, the UCCX server and the PC attached to the remote monitoring phone. All of the streams sound fine on the agent. The incoming streams to the UCCX server coming from the agent sound fine. After the UCCX server merges the received streams into the stream to the remote monitoring phone, that stream sounds bad.
If I turn off Zoom recording, it sounds fine. Zoom integrates into CUCM through a SIP trunk. You also have to create a Recording Profile on CUCM and go to each agen'ts line and turn on Automatic Call Recording Enabled and select the created Recording Profile.
I have attached a diagram of the flow.