Struggling to figure out why the WebRTC handshake consistently fails when triggering a screen pop via a custom Data Action in our Genesys Cloud Architect flow. The integration works fine for standard CTI, but as soon as we inject the ServiceNow REST API call to fetch the incident payload, the softphone client throws a 408 Request Timeout followed by a WebRTC connection failed error in the browser console.
We are using the latest Genesys Cloud SDK (v2.14.0) and the ServiceNow integration is configured with a dedicated service account. The Architect flow uses a ‘Set Variable’ block to capture the conversation UUID, then triggers a Data Action to POST to https://instance.service-now.com/api/now/table/incident. The response time is under 200ms, so latency shouldn’t be the issue. However, the SDP offer seems to be dropped or malformed immediately after the Data Action completes.
Here is the JSON payload we are sending to ServiceNow:
{
"number": "INC${GENESYS_CONVERSATION_ID}",
"caller_id": {
"link": "/api/now/table/sys_user/${CALLER_ID}"
},
"short_description": "Voice interaction from Genesys Cloud",
"state": 1
}
The error logs show ICE candidate gathering failed. Is there a known conflict between the WebRTC signaling thread and synchronous Data Action execution in Architect? We have tried adding a delay block, but the issue persists. Any insights on how to decouple these processes would be appreciated.