Skip to content

[v1.2] Add CONFERENCE_PARTICIPANT_LEFT and remove legacy ZCC duplicates from RTMS_EVENT_TYPE #115

@MaxMansfield

Description

@MaxMansfield

Context

Add CONFERENCE_PARTICIPANT_LEFT = 29 to RTMS_ZCC_VOICE_EVENT_TYPE. Remove from RTMS_EVENT_TYPE (top-level) any legacy ZCC event entries that are now duplicated by entries in the dedicated RTMS_ZCC_VOICE_EVENT_TYPE enum.

This is a breaking change for any consumer pinning to the legacy RTMS_EVENT_TYPE values for ZCC events. Call out in release notes.

Full updated enum

enum RTMS_ZCC_VOICE_EVENT_TYPE {
    UNDEFINED = 0,
    CONSUMER_ANSWERED = 8,
    CONSUMER_END = 9,
    USER_ANSWERED = 10,
    USER_END = 11,
    USER_HOLD = 12,
    USER_UNHOLD = 13,
    MONITOR_STARTED = 14,
    MONITOR_TRANSITIONED = 15,
    MONITOR_ENDED = 16,
    TAKEOVER_STARTED = 17,
    TRANSFER_INITIATED = 18,
    TRANSFER_CANCELED = 19,
    TRANSFER_ACCEPTED = 20,
    TRANSFER_COMPLETED = 21,
    TRANSFER_REJECTED = 22,
    TRANSFER_TIMEOUT = 23,
    CONFERENCE_CANCELED = 24,
    CONFERENCE_PARTICIPANT_CANCELED = 25,
    CONFERENCE_PARTICIPANT_INVITED = 26,
    CONFERENCE_PARTICIPANT_REJECTED = 27,
    CONFERENCE_PARTICIPANT_TIMEOUT = 28,
    CONFERENCE_PARTICIPANT_LEFT = 29,
}

Acceptance criteria

  • CONFERENCE_PARTICIPANT_LEFT = 29 added to the C++ enum
  • Same constant exposed in Node bindings (@zoom/rtms)
  • Same constant exposed in Python bindings (rtms package)
  • Legacy ZCC event entries removed from RTMS_EVENT_TYPE
  • Migration guide added to release notes (breaking-change section)
  • examples/zcc.md updated with the full event list

Cross-language parity

  • C++ core
  • Node.js bindings (src/node.cpp + index.ts + rtms.d.ts)
  • Python bindings (src/python.cpp + src/rtms/__init__.py + __init__.pyi)
  • Cross-language constant values match exactly (29 in all three)

Source

Tracked in vault: Projects/RTMS SDK v1.2.md → DEVS-X3.

Tracker

Part of the v1.2 milestone. Project: https://github.com/orgs/zoom/projects/11.

Metadata

Metadata

Assignees

No one assigned

    Labels

    breaking-changePublic API change requiring migrationlanguage parityRequires parallel implementation in Node.js and Python with parity check in PRv1.2Part of the v1.2 release

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions