Why does this config cause the WebRTC softphone to fail initialization for agents who are scheduled for early morning shifts in the America/Chicago timezone?
We recently updated our WFM publishing logic to handle complex shift swaps and agent preferences. While the schedule publishes successfully via the /api/v2/wfm/schedule/agent/swap endpoint without 409 conflicts, a subset of agents cannot launch their softphones. This issue is isolated to agents whose schedules were modified within the last 24 hours and who have specific time-off requests pending. The error occurs immediately upon login, before any media is streamed.
The browser console shows a WebSocket connection failed error with status code 403, but the token appears valid. I have verified that the tenant’s WebRTC configuration is enabled and that the agents have the correct webRTC:enable permission. The issue does not persist if I revert the schedule to the previous week’s version, suggesting a data sync lag or a conflict between the WFM state and the user profile’s active status.
Here is the payload we are sending to update the agent’s schedule, which seems to trigger the issue:
{
"userId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"scheduleId": "sch-987654321",
"shifts": [
{
"startTime": "2023-10-27T06:00:00-05:00",
"endTime": "2023-10-27T14:00:00-05:00",
"skillIds": ["skill-voice-support"],
"isSwap": true,
"swapReason": "Agent Preference"
}
],
"timeOffRequests": [
{
"startTime": "2023-10-28T08:00:00-05:00",
"endTime": "2023-10-28T16:00:00-05:00",
"status": "PENDING",
"type": "PAID_TIME_OFF"
}
]
}
The agents affected are all using the latest version of the Genesys Cloud desktop application. We are seeing this behavior consistently on Fridays when the weekly schedule is published. Is there a known latency issue with the WFM service propagating active status changes to the WebRTC signaling server? Or could the pending time-off request be inadvertently flagging the user as inactive in the presence service?
Any insights into the interaction between WFM schedule constraints and WebRTC authentication would be appreciated. We need to ensure agents can log in smoothly without manual intervention from the admin team.