Context:
I am running a performance test for an inbound voice campaign using Genesys Cloud version 2024-1. My environment has a max concurrent call capacity of 500. I use JMeter 5.6.2 with the WebSocket sampler plugin to simulate agent softphone connections. The goal is to stress test the connection stability under high load.
When I increase the thread group to 200 simultaneous users, the test starts failing. The error log shows WebSocket connection closed abnormally [code=1006]. This happens after about 10 seconds of connection. I checked the server logs and see no 429 errors, so it is not an API rate limit issue. It seems like the WebSocket handshake is dropping. I have verified that my OAuth token has the correct scope for webchat:connect and voice:agent. The payload is minimal, just the session ID and agent ID.
Question:
Is it possible to configure the JMeter WebSocket sampler to handle the reconnection logic automatically, or is there a specific header I am missing in the handshake request? I want to know if this is a limitation of the Genesys Cloud platform for external load generators or if my JMeter configuration is incorrect. I have tried adding a Connection: keep-alive header but it did not help.