Hi there,
I have a use case whereby we need to explore the possibility to stop the recording of a call in Architect. This is to answer to a specific need whereby some calls are transferred to external numbers and cannot be recorded. However, some calls transferred to another set of external numbers should be recorded.
I was looking at creating a PureCloud Data Actions that PATCHes /api/v2/conversations/calls/{conversationId} with the body { "recordingState": "paused" }.
So I did this, and obviously I can't test it from Integrations as I am not a participant of the conversation - and that is fine by me. However, when invoking the data action from PureCloud, it also fails, which surprises me since the IVR is (or should) be a participant in the conversation.
Another issue is that it is really hard to troubleshoot, since I cannot catch exceptions on these PureCloud data actions.
While you are calling the Data Action from the IVR, the credential that the Data Action uses are OAuth Client Credentials configured in the integration. Client Credentials do not have a user context, so the Data Action is never considered a party to the conversation.
Thanks Jason. So once the recording has started, it is not possible to pause it before transferring it to an external number, while retaining the possibility of recording other calls transferred externally?
I only know that you can't manipulate calls with data actions. It is possible that you could do what you are looking for with a secure flow or some other Architect feature.
Yeah I tried going through a Secure Flow before transferring externally, lo and behold, nothing is recorded while the call is in the Secure Flow, but as soon as the external transfer happens, it starts recording again.
There is a "Enable Participant Recording" in Architect, but there is no "Disable" which is a bit of a problem.