Skip to content

docs: calls sdk improvements - #467

Open
honey-cometchat wants to merge 7 commits into
mainfrom
fix/v5-calling-sdk-enhancements
Open

docs: calls sdk improvements#467
honey-cometchat wants to merge 7 commits into
mainfrom
fix/v5-calling-sdk-enhancements

Conversation

@honey-cometchat

@honey-cometchat honey-cometchat commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Description

This PR brings the Calls SDK docs in line with the v5 release and fills in behaviours that developers were previously hitting only at runtime.

There are two parts:

1. v4 docs are now clearly marked as legacy

v5 is the current stable release, but the v4 pages still described themselves as "Stable Release" and only carried a small "v5 Beta Available" note. That's misleading for anyone landing on a v4 page from search.

  • Every v4 page (54 files across Android, iOS, Flutter, JavaScript, React Native) now has a <Warning> banner at the top stating it's legacy documentation, with links to the equivalent v5 page and to the v4 → v5 migration guide for that platform.
  • Frontmatter description fields changed from "Stable Release" to "Legacy Release" so search results and previews say the right thing too.
  • The overview pages' old "🚀 v5 Beta Available" <Note> is replaced by the same <Warning>, since v5 is no longer in beta.

2. Newly documented v5 behaviours

Gaps that were causing confusion, added to the v5 pages:

  • Recording lifecycle (android, ios, flutter, javascript, react-native) — a recording keeps running until it's stopped, whether started manually or via auto-start. Documents the two automatic stop conditions: ~1 minute after everyone leaves, or after 10 minutes with everyone muted.

  • Single active session (javascript, react-native) — CometChatCalls is a singleton holding one session at a time. New "Single Active Session" section on the overview pages explaining why leaveSession() and the other actions take no session ID, plus the correct leave → wait for onSessionLeft → join pattern for switching calls. Cross-referenced from join-session and actions. The RN version adds that only one CometChatCalls.Component should be mounted at a time.

  • Mute/pause are now paired methods (JS + RN migration guides) — v4's muteAudio(true/false) became muteAudio() / unmuteAudio(), and pauseVideo(true/false) became pauseVideo() / resumeVideo(). This was easy to miss in the rename table, so it now has a callout and a before/after snippet.

  • v5 events need addEventListener() (JS + RN migration guides) — new events like onSessionJoined, onConnectionLost, and onCallLayoutChanged never fire through the v4 registration paths (setCallEventListener(), addCallEventListener()), because OngoingCallListener only carries the legacy event set. Also clarifies that migration can be incremental — addEventListener() coexists with an existing v4 listener.

  • React Native New Architecture (react-native/setup) — new section confirming the SDK works on both the old architecture and the New Architecture including bridgeless mode, with no extra setup. Notes that it ships as a legacy native module running through RN's interop layer, so behaviour is identical either way. The prerequisites list on the overview now links to it.

Related Issue(s)

Type of Change

  • Documentation correction/update
  • New documentation
  • Improvement to existing documentation
  • Typo fix
  • Other (please specify)

Checklist

  • I have read the CONTRIBUTING document
  • My branch name follows the naming convention
  • My changes follow the documentation style guide
  • I have checked for spelling and grammar errors
  • All links in my changes are valid and working
  • My changes are accurately described in this pull request

Additional Information

  • Content-only changes — no navigation (docs.json), redirect, or config changes, so no v4 URLs move or break.
  • Single-active-session and mute/pause notes are scoped to JavaScript and React Native, since those are the platforms where the v5 docs currently cover these APIs. Recording auto-stop is applied to all five platforms.
  • Worth a check from the SDK team on two specifics: the recording auto-stop timings (~1 min after everyone leaves, 10 min all-muted), and that the RN interop-layer description matches how the module is actually packaged.

Screenshots (if applicable)

honey-cometchat and others added 7 commits August 13, 2026 14:07
- Relabel v4 overview descriptions from stable to legacy across platforms
- Update callout copy to present v5 as current stable instead of beta

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Relabel descriptions from Stable Release to Legacy Release
- Replace overview Note banners with stronger Warning callouts
- Add legacy Warning banners across all v4 platform pages
- Link each page to v5 docs and the v4 → v5 migration guide

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Note that v4 boolean toggles are now paired methods
- Add muteAudio/unmuteAudio examples in JS and RN guides

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Note that recordings keep running until they are stopped
- Document auto-stop after everyone leaves or stays muted for 10 minutes
- Apply the note across Android, iOS, Flutter, JavaScript, and React Native

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Note New Architecture and bridgeless compatibility in RN requirements
- Add setup section explaining interop-layer behavior

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Explain v5-only events never fire through v4 listener APIs
- Show addEventListener() can coexist with OngoingCallListener
- Apply the same guidance to JS and React Native migration guides

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Add Single Active Session sections to JS and RN overviews
- Explain one-session-at-a-time join flow via onSessionLeft
- Note that leaveSession and other actions take no session ID

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@jitvarpatil

Copy link
Copy Markdown
Contributor

Docs review — ✅ Approve

A large but clean calls-docs PR (68 files): adds a consistent "Legacy Release" <Warning> banner to every v4 calls page (signposting v5 + the migration guide) plus v5 content improvements (recording behavior, join-session, migration guides). Introduces 0 new broken links.

✅ What passed

  • The v4 legacy banner is consistent and correct — reframes each v4 page's description "Stable Release → Legacy Release" and adds a <Warning> linking to /calls/{platform}/overview and /calls/{platform}/migration-guide-v5. Verified all 5 platforms' banner targets resolve (android / flutter / ios / javascript / react-native — both overview and migration-guide-v5 exist for each).
  • New v5 content is solid — e.g. the recording auto-stop <Note> (runs until stopped; ends ~1 min after everyone leaves, or after 10 min all-muted; references enableAutoStartRecording) is specific and useful. No placeholders/TODOs.
  • 0 new broken links: cross-checked all 8 flagged broken-link targets against this PR's added lines — none are introduced here (all pre-existing in unchanged files: button-click-listener, participant-*, /calls/api/list-calls, etc.).
  • Structure: 0 nav breaks, redirects +0. (The /calls/ionic/overview orphan is pre-existing.)

⚠️ Heads-up (not a blocker for this PR) — live PiP 404 in main

This branch is shared with #407, which merged on 2026-07-17 without the Picture-in-Picture redirect that was requested — so /calls/javascript/picture-in-picture is currently a live 404 in production (page deleted, no redirect). This PR doesn't touch docs.json redirects, so it's not the place to fix it, but it's worth a quick follow-up:

{ "source": "/calls/javascript/picture-in-picture", "destination": "/calls/javascript/session-settings" },

#467 itself is clean and mergeable. 🚀

🤖 Automated docs review (Mintlify link/redirect/nav/content checks).

@jitvarpatil jitvarpatil left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Docs review — ✅ Approve

A large but clean calls-docs PR (68 files): adds a consistent "Legacy Release" <Warning> banner to every v4 calls page (signposting v5 + the migration guide) plus v5 content improvements (recording behavior, join-session, migration guides). Introduces 0 new broken links.

✅ What passed

  • The v4 legacy banner is consistent and correct — reframes each v4 page's description "Stable Release → Legacy Release" and adds a <Warning> linking to /calls/{platform}/overview and /calls/{platform}/migration-guide-v5. Verified all 5 platforms' banner targets resolve (android / flutter / ios / javascript / react-native — both overview and migration-guide-v5 exist for each).
  • New v5 content is solid — e.g. the recording auto-stop <Note> (runs until stopped; ends ~1 min after everyone leaves, or after 10 min all-muted; references enableAutoStartRecording) is specific and useful. No placeholders/TODOs.
  • 0 new broken links: cross-checked all 8 flagged broken-link targets against this PR's added lines — none are introduced here (all pre-existing in unchanged files: button-click-listener, participant-*, /calls/api/list-calls, etc.).
  • Structure: 0 nav breaks, redirects +0. (The /calls/ionic/overview orphan is pre-existing.)

⚠️ Heads-up (not a blocker for this PR) — live PiP 404 in main

This branch is shared with #407, which merged on 2026-07-17 without the Picture-in-Picture redirect that was requested — so /calls/javascript/picture-in-picture is currently a live 404 in production (page deleted, no redirect). This PR doesn't touch docs.json redirects, so it's not the place to fix it, but it's worth a quick follow-up:

{ "source": "/calls/javascript/picture-in-picture", "destination": "/calls/javascript/session-settings" },

#467 itself is clean and mergeable. 🚀

🤖 Automated docs review (Mintlify link/redirect/nav/content checks).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants