I’m using the Zoom RTMS SDK (@zoom/rtms
) in a Node.js app following the rtms-quickstart-js
repo. My app receives the meeting.rtms_started
webhook, but it segfaults
immediately after calling client.join(payload)
, even if all event listeners are removed.
Output when I start the meeting:
npm start
> rtms-quickstart@1.0.0 start
> node index.js
webhook | 2025-08-01T15:07:24.251Z | INFO | Creating standard HTTP webhook server
webhook | 2025-08-01T15:07:24.255Z | INFO | Listening for webhook events at http://localhost:8080/
webhook | 2025-08-01T15:07:37.381Z | DEBUG | Received webhook request: /
webhook | 2025-08-01T15:07:37.383Z | INFO | Received event: meeting.rtms_started
Received event: meeting.rtms_started
{
"meeting_uuid": "IC72ewmGRbm9jmPmrUwNMQ==",
"operator_id": "7z2o8fMIRTO_4w_RGX0JdA",
"rtms_stream_id": "138bb5d5ee7c40e4b0754f86a18e28c5",
"server_urls": "wss://zoomsjc144-195-46-189zssgw.sjc.zoom.us:443"
}
\[1\] 95479 segmentation fault npm start
I also tested with the following minimal version of index.js
(no event listeners, no setVideoParams
or setDeskshareParams
, just .join()
):
import rtms from "@zoom/rtms";
rtms.onWebhookEvent(async ({ event, payload }) => {
console.log(`Received event: ${event}`);
console.log(JSON.stringify(payload, null, 2));
if (event !== "meeting.rtms_started") return;
const client = new rtms.Client();
try {
await client.join(payload);
console.log("Successfully joined stream");
} catch (err) {
console.error("join failed:", err);
}
});
This version still crashes with a segmentation fault immediately after .join(payload)
.
Environment
- Node version:
v23.2.0
- RTMS SDK version:
@zoom/rtms@0.0.2
- Platform: Mac M3