Context
examples/python.md has no reconnection example. The closest reference is zoom/rtms-samples/rtms_api/reconnection_and_chaos_mode_js which uses raw WebSockets. A Python equivalent using the SDK's callbacks (on_media_connection_interrupted) doesn't exist in our docs.
Anyone deploying RTMS to a real production environment hits all three reconnection scenarios from Zoom's docs (https://developers.zoom.us/docs/rtms/meetings/work-with-streams/#failover-and-reconnection). Without a blessed example, every customer reinvents the pattern and most get it subtly wrong.
A working reference implementation already exists in the rtms-on-AWS Terraform template's worker/main.py (built 2026-05-20 by @MaxMansfield).
What to ship
Add a "Reconnection" section to examples/python.md (between the existing media callbacks and asyncio sections). Cover all three Zoom scenarios using SDK callbacks (not raw WS):
| Scenario |
Trigger |
Handler |
| 1. RTMS server failure |
meeting.rtms_started arrives for an existing rtms_stream_id with new server_urls |
leave old client, join with new payload |
| 2. Signal connection down |
meeting.rtms_interrupted webhook |
tear down and rejoin with the webhook's fresh credentials |
| 3. Media connection down |
on_media_connection_interrupted callback |
re-issue client.join(stored_payload) with exponential backoff |
Code sample: take the working pattern from terraform-template/worker/main.py (_schedule_media_reconnect, handle_interrupted, start_meeting's server-failure detection). Exponential backoff: 3s × 2^n capped at 30s, max 5 attempts.
Acceptance criteria
Cross-language parity
Source
Tracked in vault: Projects/RTMS SDK v1.2.md → DEVS-X4. Reference implementation: terraform-template/worker/main.py from the 2026-05-20 AWS deploy work.
Tracker
Part of the v1.2 milestone. Project: https://github.com/orgs/zoom/projects/11.
Context
examples/python.mdhas no reconnection example. The closest reference iszoom/rtms-samples/rtms_api/reconnection_and_chaos_mode_jswhich uses raw WebSockets. A Python equivalent using the SDK's callbacks (on_media_connection_interrupted) doesn't exist in our docs.Anyone deploying RTMS to a real production environment hits all three reconnection scenarios from Zoom's docs (https://developers.zoom.us/docs/rtms/meetings/work-with-streams/#failover-and-reconnection). Without a blessed example, every customer reinvents the pattern and most get it subtly wrong.
A working reference implementation already exists in the rtms-on-AWS Terraform template's
worker/main.py(built 2026-05-20 by @MaxMansfield).What to ship
Add a "Reconnection" section to
examples/python.md(between the existing media callbacks and asyncio sections). Cover all three Zoom scenarios using SDK callbacks (not raw WS):meeting.rtms_startedarrives for an existingrtms_stream_idwith newserver_urlsmeeting.rtms_interruptedwebhookon_media_connection_interruptedcallbackclient.join(stored_payload)with exponential backoffCode sample: take the working pattern from
terraform-template/worker/main.py(_schedule_media_reconnect,handle_interrupted,start_meeting's server-failure detection). Exponential backoff:3s × 2^ncapped at30s, max 5 attempts.Acceptance criteria
examples/python.mdCross-language parity
examples/node.mdwith the JS equivalent of the same patternsSource
Tracked in vault:
Projects/RTMS SDK v1.2.md→ DEVS-X4. Reference implementation: terraform-template/worker/main.py from the 2026-05-20 AWS deploy work.Tracker
Part of the v1.2 milestone. Project: https://github.com/orgs/zoom/projects/11.