Looking for some advice on troubleshooting this persistent issue with WebRTC softphone connections dropping during our stress testing phase. We are using Genesys Cloud US1 environment and testing with JMeter 5.6. The goal is to validate the system’s capacity for concurrent softphone users before our next major deployment.
The setup involves simulating 500 concurrent users using the Genesys Cloud Java SDK version 8.4.2. Each virtual user attempts to register a softphone client via the WebSocket endpoint wss://websockets.us1.genesyscloud.com. The initial connection succeeds for most users, returning a 101 Switching Protocols status. However, after approximately 5 minutes of holding idle connections, we start seeing a significant number of WebSocket closures.
The error log from the JMeter listener shows the following pattern:
WebSocket connection failed: Connection reset by peer
Error Code: 1006
Timestamp: 2023-10-27T14:32:15Z
User ID: VU_042
This happens roughly 15% of the time after the idle period. We have verified that our Architect flows are correctly configured to handle the inbound calls and that the softphone permissions are set correctly for the test users. The issue seems to be related to the WebSocket keep-alive mechanism or server-side connection timeouts under load.
Has anyone encountered similar issues with the Java SDK and WebRTC softphones? We are trying to determine if this is a client-side configuration issue or a limitation of the Genesys Cloud platform under high concurrency. We have tried adjusting the JMeter thread group settings and the SDK’s reconnection logic, but the problem persists. Any insights or best practices for maintaining stable WebSocket connections during load tests would be greatly appreciated.