Hi, I’ve been playing with the call recording and understanding how Call Flow works as my organization records all inbound calls. I was notified that there are specific extensions that should not be recorded at all. While reading this post Call Recording walkthrough I am still having issues stopping the recording for the specified extension.
Here is my Company’s Call Flow:
Call comes in via an inbound route that has call recording set to yes
The inbound call then goes to a “Bridge Queue”**. The call recording is set as Don’t Care
** The Bridge Queue is used for us to play a unique moh only when the user is within the queue. After the call has been answered, and the user puts the call on hold, then another moh should be played. (Reference Change moh class after queue when putting a call on hold - #4 by abcym15)
The “Bridge Queue” then sends the call to the “Actual Queue”, where the call recording is set to Yes
The “Actual Queue” is then answered by an operator who has their “Inbound External Calls” set as Never
From my understanding, the call should stop when the operator answers as the extension setting has the call recording for inbound calls as Never.
When I checked the CDR report, I can see that the call recording did not stop when the operator answered the phone. We are trying to prevent that specific operator from not having their calls recorded but apparently, this is being overwritten somehow and ignoring the “Never” option setup on the extension itself. Does anyone know why this happens?
Queues override everything from what I recall as the logic is handled inside app queue. When it calls the agent it determines the recording logic and always wins. As it’s not calling the extension but a agent. It’s always been this way and use to be documented somewhere about this.
I had a matrix we used to QA all the call recoding policies. It had over 200 test case for all the different things that could be set.
Wow, that explains it. I just couldn’t find that queues override everything. So in this scenario, if I want to block a specific extension from being recorded, then I would need to set up the “Never” option on an extension basis and allow recording for another extension by changing the extension settings as well. Seems like tedious work if you have plus 100+ extensions.
It’s important to understand the logic and the wording.
look at the trunk.
look at in inbound
look at the extension.
e.g. don’t care means, the inbound dont’ care for the trunk settings. They take it as they are. Or
the extension don’t care for the settings of the inbound. They take it as they are.
If the inbound is set to yes, the extension may change it to no. Next setup in the extension may be to allow the connected phone to use recording on advance.
In my case, I enabled the “Inbound Route” recording set to yes
everything else is set to Don’t Care
So I’m guessing this “Don’t Care” its basically taking the previous setting as it is without changing anything.
Do you know if there is any alternative so that when the call is picked up by the agent then if the agent cannot have their phone recorded, the recording stops? Changing the extension’s recording setting set to “Never” did nothing. I’m not sure if there are other ways to accomplish this.
Quite right. It depends what you want to have.
I have all inbound routes set to “No” and all extensions set to don’t care. In addition all extension have “on demand recording” set to enable. In this config nothing is forced to be recorded. But everyone can if he wants to. With yealinks you may set one blf-key to start/stop the recording.
If you change the inbound to yes, you may need to stop the recording by pushing the blf-key. I never tried this opposite way.
I think you’re right, turn off recording on the route/queue and on for all extensions, then off for those applicable. You can use bulk handler on extensions now, and maybe in the future, the graphql app will have this as an option.
That approach is better than the custom/user solutions I can think of.