# CometChat Docs: Voice & Video Calling SDK

> Technical documentation & Implementation guides to add In-app Messaging & Voice & Video Calling to your apps and websites in minutes.

## SDK

### JavaScript

#### v5‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

##### Overview

- [Calls SDK](https://www.cometchat.com/docs/calls/javascript/overview.md): Use CometChat Calls SDK v5 for JavaScript to add voice and video calling, call sessions, participants, layouts, and in-call features.

##### Integrations

- [React Integration](https://www.cometchat.com/docs/calls/javascript/react-integration.md): Integrate CometChat Calls SDK v5 in React apps with package setup, initialization, call UI rendering, and component usage.
- [Vue Integration](https://www.cometchat.com/docs/calls/javascript/vue-integration.md): Integrate CometChat Calls SDK v5 in Vue apps with package setup, initialization, call UI rendering, and component usage.
- [Angular Integration](https://www.cometchat.com/docs/calls/javascript/angular-integration.md): Integrate CometChat Calls SDK v5 in Angular apps with package setup, initialization, call UI rendering, and framework configuration.
- [Next.js Integration](https://www.cometchat.com/docs/calls/javascript/nextjs-integration.md): Integrate CometChat Calls SDK v5 in Next.js apps with client-side setup, initialization, call UI rendering, and routing support.
- [Ionic Integration](https://www.cometchat.com/docs/calls/javascript/ionic-integration.md): Integrate CometChat Calls SDK v5 in Ionic apps with package setup, initialization, permissions, and call UI rendering.

##### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/javascript/setup.md): Set up CometChat Calls SDK v5 for JavaScript with installation, app credentials, initialization, authentication, and a basic calling flow.
- [Authentication](https://www.cometchat.com/docs/calls/javascript/authentication.md): Configure authentication for CometChat Calls SDK v5 on JavaScript with app credentials, logged-in users, and secure call access.

##### Call Session

- [Session Settings](https://www.cometchat.com/docs/calls/javascript/session-settings.md): Configure CometChat Calls SDK v5 session settings on JavaScript for call behavior, UI options, participant controls, and features.
- [Join Session](https://www.cometchat.com/docs/calls/javascript/join-session.md): Join CometChat Calls SDK v5 sessions on JavaScript with session IDs, call tokens, participant setup, and in-call UI launch.
- [Actions](https://www.cometchat.com/docs/calls/javascript/actions.md): Use CometChat Calls SDK v5 actions on JavaScript to control calls, manage audio/video state, share screens, and handle in-call behavior.
- [Events](https://www.cometchat.com/docs/calls/javascript/events.md): Handle CometChat Calls SDK v5 events on JavaScript for call lifecycle, participants, media state, errors, and real-time updates.

##### Features

- [Ringing](https://www.cometchat.com/docs/calls/javascript/ringing.md): Configure CometChat Calls SDK v5 ringing on JavaScript for incoming calls, outgoing calls, call alerts, and accept or reject flows.
- [Call Layouts](https://www.cometchat.com/docs/calls/javascript/call-layouts.md): Customize CometChat Calls SDK v5 call layouts on JavaScript with tile, spotlight, sidebar views, layout changes, and layout events.
- [Recording](https://www.cometchat.com/docs/calls/javascript/recording.md): Use CometChat Calls SDK v5 recording on JavaScript to start, stop, access, and manage recordings for supported call sessions.
- [Transcription & Closed Captions](https://www.cometchat.com/docs/calls/javascript/transcription.md): Use CometChat Calls SDK v5 transcription on JavaScript to transcribe calls, show live closed captions, and retrieve transcripts after the call.
- [Call Logs](https://www.cometchat.com/docs/calls/javascript/call-logs.md): Display CometChat Calls SDK v5 call logs on JavaScript with call history, participants, call type, duration, and status details.
- [Participant Management](https://www.cometchat.com/docs/calls/javascript/participant-management.md): Manage CometChat Calls SDK v5 participants on JavaScript with mute, pause video, pinning, permissions, and participant events.
- [Screen Sharing](https://www.cometchat.com/docs/calls/javascript/screen-sharing.md): Add screen sharing in CometChat Calls SDK v5 on JavaScript with presenter controls, permissions, and in-call display behavior.
- [Virtual Background](https://www.cometchat.com/docs/calls/javascript/virtual-background.md): Add virtual backgrounds in CometChat Calls SDK v5 for JavaScript calls with background effects and in-call video customization.
- [Raise Hand](https://www.cometchat.com/docs/calls/javascript/raise-hand.md): Add raise hand behavior in CometChat Calls SDK v5 on JavaScript so participants can request attention during group calls.
- [Idle Timeout](https://www.cometchat.com/docs/calls/javascript/idle-timeout.md): Configure CometChat Calls SDK v5 idle timeout on JavaScript to handle inactive participants and call session cleanup.

##### Advanced

- [Custom Control Panel](https://www.cometchat.com/docs/calls/javascript/custom-control-panel.md): Customize the CometChat Calls SDK v5 control panel on JavaScript with call buttons, actions, layout, and user controls.
- [Device Management](https://www.cometchat.com/docs/calls/javascript/device-management.md): Manage cameras, microphones, speakers, and device permissions in CometChat Calls SDK v5 for JavaScript calling apps.
- [Permissions Handling](https://www.cometchat.com/docs/calls/javascript/permissions-handling.md): Handle browser camera, microphone, and screen permissions for CometChat Calls SDK v5 in JavaScript calling apps.
- [In-Call Chat](https://www.cometchat.com/docs/calls/javascript/in-call-chat.md): Enable in-call chat in CometChat Calls SDK v5 on JavaScript so participants can send messages during active calls.
- [Share Invite](https://www.cometchat.com/docs/calls/javascript/share-invite.md): Add invite sharing in CometChat Calls SDK v5 on JavaScript so users can share call links and bring participants into sessions.

##### Migration Guide

- [Migration Guide](https://www.cometchat.com/docs/calls/javascript/migration-guide-v5.md): Migrate to CometChat Calls SDK v5 on JavaScript with updated setup, APIs, call sessions, layouts, and feature changes.

##### Resources

- [Troubleshooting](https://www.cometchat.com/docs/calls/javascript/troubleshooting.md): Troubleshoot CometChat Calls SDK v5 on JavaScript for setup, authentication, permissions, call launch, media, and session issues.
- [GitHub](https://www.cometchat.com/docs/calls/javascript/link/github.md): Navigate to GitHub documentation.
- [Sample Apps](https://www.cometchat.com/docs/calls/javascript/link/sample-apps.md): Navigate to Sample Apps documentation.
- [Changelog](https://www.cometchat.com/docs/calls/javascript/link/changelog.md): Navigate to Changelog documentation.
- [Live Demo](https://www.cometchat.com/docs/calls/javascript/link/live-demo.md): Navigate to Live Demo documentation.

#### v4‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

#####  

- [Calling SDK](https://www.cometchat.com/docs/calls/v4/javascript/overview.md): CometChat Calling SDK v4 - Legacy Release - Overview for JavaScript. This is the legacy v4 documentation. Most users should use v5, the current stable version.

###### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/v4/javascript/setup.md): CometChat Calling SDK v4 - Legacy Release - Setup for JavaScript

###### Calling Flows

- [Ringing](https://www.cometchat.com/docs/calls/v4/javascript/ringing.md): CometChat Calling SDK v4 - Legacy Release - Ringing for JavaScript
- [Call Session](https://www.cometchat.com/docs/calls/v4/javascript/call-session.md): CometChat Calling SDK v4 - Legacy Release - Call Session for JavaScript
- [Standalone Calling](https://www.cometchat.com/docs/calls/v4/javascript/standalone-calling.md): CometChat Calling SDK v4 - Legacy Release - Standalone Calling for JavaScript

###### Features

- [Recording (Beta)](https://www.cometchat.com/docs/calls/v4/javascript/recording.md): CometChat Calling SDK v4 - Legacy Release - Recording for JavaScript
- [Call Logs](https://www.cometchat.com/docs/calls/v4/javascript/call-logs.md): CometChat Calling SDK v4 - Legacy Release - Call Logs for JavaScript
- [Session Timeout Flow](https://www.cometchat.com/docs/calls/v4/javascript/session-timeout.md): CometChat Calling SDK v4 - Legacy Release - Session Timeout for JavaScript

###### Customisation

- [Video View Customisation](https://www.cometchat.com/docs/calls/v4/javascript/video-view-customisation.md): CometChat Calling SDK v4 - Legacy Release - Video View Customisation for JavaScript
- [Presenter Mode](https://www.cometchat.com/docs/calls/v4/javascript/presenter-mode.md): CometChat Calling SDK v4 - Legacy Release - Presenter Mode for JavaScript
- [Virtual Background](https://www.cometchat.com/docs/calls/v4/javascript/virtual-background.md): CometChat Calling SDK v4 - Legacy Release - Virtual Background for JavaScript
- [Custom CSS](https://www.cometchat.com/docs/calls/v4/javascript/custom-css.md): CometChat Calling SDK v4 - Legacy Release - Custom CSS for JavaScript

### React Native

#### v5‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

##### Overview

- [Calls SDK](https://www.cometchat.com/docs/calls/react-native/overview.md): Use CometChat Calls SDK v5 for React Native to add voice and video calling, call sessions, participants, layouts, and in-call features.

##### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/react-native/setup.md): Set up CometChat Calls SDK v5 for React Native with installation, app credentials, initialization, authentication, and a basic calling flow.
- [Authentication](https://www.cometchat.com/docs/calls/react-native/authentication.md): Configure authentication for CometChat Calls SDK v5 on React Native with app credentials, logged-in users, and secure call access.
- [Session Settings](https://www.cometchat.com/docs/calls/react-native/session-settings.md): Configure CometChat Calls SDK v5 session settings on React Native for call behavior, UI options, participant controls, and features.

##### Call Session

- [Join Session](https://www.cometchat.com/docs/calls/react-native/join-session.md): Join CometChat Calls SDK v5 sessions on React Native with session IDs, call tokens, participant setup, and in-call UI launch.
- [Actions](https://www.cometchat.com/docs/calls/react-native/actions.md): Use CometChat Calls SDK v5 actions on React Native to control calls, manage audio/video state, and handle in-call behavior.
- [Events](https://www.cometchat.com/docs/calls/react-native/events.md): Handle CometChat Calls SDK v5 events on React Native for call lifecycle, participants, media state, errors, and real-time updates.

##### Features

- [Call Layouts](https://www.cometchat.com/docs/calls/react-native/call-layouts.md): Customize CometChat Calls SDK v5 call layouts on React Native for participant grids, speaker views, screen sharing, and call UI.
- [Call Logs](https://www.cometchat.com/docs/calls/react-native/call-logs.md): Display CometChat Calls SDK v5 call logs on React Native with call history, participants, call type, duration, and status details.
- [Recording](https://www.cometchat.com/docs/calls/react-native/recording.md): Use CometChat Calls SDK v5 recording on React Native to start, stop, access, and manage recordings for supported call sessions.
- [Transcription & Closed Captions](https://www.cometchat.com/docs/calls/react-native/transcription.md): Use CometChat Calls SDK v5 transcription on React Native to transcribe calls, show live closed captions, and retrieve transcripts after the call.
- [Participant Management](https://www.cometchat.com/docs/calls/react-native/participant-management.md): Manage CometChat Calls SDK v5 participants on React Native with mute, pause video, pinning, permissions, and participant events.
- [Screen Sharing](https://www.cometchat.com/docs/calls/react-native/screen-sharing.md): View screen shares from other participants in CometChat Calls SDK v5 on React Native, including pinning and layout behavior.
- [Audio Modes](https://www.cometchat.com/docs/calls/react-native/audio-modes.md): Configure CometChat Calls SDK v5 audio modes on React Native for speakers, earpiece, Bluetooth, routing, and call audio behavior.
- [Raise Hand](https://www.cometchat.com/docs/calls/react-native/raise-hand.md): Add raise hand behavior in CometChat Calls SDK v5 on React Native so participants can request attention during group calls.
- [Idle Timeout](https://www.cometchat.com/docs/calls/react-native/idle-timeout.md): Configure CometChat Calls SDK v5 idle timeout on React Native to handle inactive participants and call session cleanup.
- [Ringing](https://www.cometchat.com/docs/calls/react-native/ringing.md): Configure CometChat Calls SDK v5 ringing on React Native for incoming calls, outgoing calls, call alerts, and accept or reject flows.

##### Advanced

- [Picture-in-Picture](https://www.cometchat.com/docs/calls/react-native/picture-in-picture.md): Configure picture-in-picture for CometChat Calls SDK v5 on React Native to keep video calls visible while users multitask.
- [VoIP Calling](https://www.cometchat.com/docs/calls/react-native/voip-calling.md): Set up CometChat Calls SDK v5 VoIP calling on React Native for call notifications, incoming call handling, and app wake flows.
- [Background Handling](https://www.cometchat.com/docs/calls/react-native/background-handling.md): Handle background calling with CometChat Calls SDK v5 on React Native for app lifecycle, call continuity, and notifications.
- [Custom Control Panel](https://www.cometchat.com/docs/calls/react-native/custom-control-panel.md): Customize the CometChat Calls SDK v5 control panel on React Native with call buttons, actions, layout, and user controls.
- [Custom Participant List](https://www.cometchat.com/docs/calls/react-native/custom-participant-list.md): Customize the CometChat Calls SDK v5 participant list on React Native with participant views, actions, status, and layout.
- [In-Call Chat](https://www.cometchat.com/docs/calls/react-native/in-call-chat.md): Enable in-call chat in CometChat Calls SDK v5 on React Native so participants can send messages during active calls.
- [Share Invite](https://www.cometchat.com/docs/calls/react-native/share-invite.md): Add invite sharing in CometChat Calls SDK v5 on React Native so users can share call links and bring participants into sessions.

##### Migration Guide

- [Migration Guide](https://www.cometchat.com/docs/calls/react-native/migration-guide-v5.md): Migrate to CometChat Calls SDK v5 on React Native with updated setup, APIs, call sessions, layouts, and feature changes.

##### Resources

- [Troubleshooting](https://www.cometchat.com/docs/calls/react-native/troubleshooting.md): Troubleshoot CometChat Calls SDK v5 on React Native for setup, authentication, permissions, call launch, media, and session issues.
- [GitHub](https://www.cometchat.com/docs/calls/react-native/link/github.md): Navigate to GitHub documentation.
- [Sample Apps](https://www.cometchat.com/docs/calls/react-native/link/sample-apps.md): Navigate to Sample Apps documentation.
- [Changelog](https://www.cometchat.com/docs/calls/react-native/link/changelog.md): Navigate to Changelog documentation.

#### v4‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

#####  

- [Calling SDK](https://www.cometchat.com/docs/calls/v4/react-native/overview.md): CometChat Calling SDK v4 - Legacy Release - Overview for React Native. This is the legacy v4 documentation. Most users should use v5, the current stable version.

###### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/v4/react-native/setup.md): CometChat Calling SDK v4 - Legacy Release - Setup for React Native
- [Expo Integration](https://www.cometchat.com/docs/calls/v4/react-native/expo-integration-guide.md): CometChat Calling SDK v4 - Legacy Release - Expo Integration Guide for React Native

###### Calling Flows

- [Ringing](https://www.cometchat.com/docs/calls/v4/react-native/ringing.md): CometChat Calling SDK v4 - Legacy Release - Ringing for React Native
- [Call Session](https://www.cometchat.com/docs/calls/v4/react-native/call-session.md): CometChat Calling SDK v4 - Legacy Release - Call Session for React Native
- [Standalone Calling](https://www.cometchat.com/docs/calls/v4/react-native/standalone-calling.md): CometChat Calling SDK v4 - Legacy Release - Standalone Calling for React Native

###### Features

- [Recording (Beta)](https://www.cometchat.com/docs/calls/v4/react-native/recording.md): CometChat Calling SDK v4 - Legacy Release - Recording for React Native
- [Call Logs](https://www.cometchat.com/docs/calls/v4/react-native/call-logs.md): CometChat Calling SDK v4 - Legacy Release - Call Logs for React Native
- [Session Timeout Flow](https://www.cometchat.com/docs/calls/v4/react-native/session-timeout.md): CometChat Calling SDK v4 - Legacy Release - Session Timeout for React Native

###### Customisation

- [Video View Customisation](https://www.cometchat.com/docs/calls/v4/react-native/video-view-customisation.md): CometChat Calling SDK v4 - Legacy Release - Video View Customisation for React Native
- [Presenter Mode](https://www.cometchat.com/docs/calls/v4/react-native/presenter-mode.md): CometChat Calling SDK v4 - Legacy Release - Presenter Mode for React Native

### iOS

#### v5‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

##### Overview

- [Calls SDK](https://www.cometchat.com/docs/calls/ios/overview.md): Use CometChat Calls SDK v5 for iOS to add voice and video calling, call sessions, participants, layouts, and in-call features.

##### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/ios/setup.md): Set up CometChat Calls SDK v5 for iOS with installation, app credentials, initialization, authentication, and a basic calling flow.
- [Authentication](https://www.cometchat.com/docs/calls/ios/authentication.md): Configure authentication for CometChat Calls SDK v5 on iOS with app credentials, logged-in users, and secure call access.

##### Call Session

- [SessionSettingsBuilder](https://www.cometchat.com/docs/calls/ios/session-settings.md): Configure CometChat Calls SDK v5 session settings on iOS for call behavior, UI options, participant controls, and features.
- [Join Session](https://www.cometchat.com/docs/calls/ios/join-session.md): Join CometChat Calls SDK v5 sessions on iOS with session IDs, call tokens, participant setup, and in-call UI launch.
- [Actions](https://www.cometchat.com/docs/calls/ios/actions.md): Use CometChat Calls SDK v5 actions on iOS to control calls, manage audio/video state, share screens, and handle in-call behavior.
- [Events](https://www.cometchat.com/docs/calls/ios/events.md): Handle CometChat Calls SDK v5 events on iOS for call lifecycle, participants, media state, errors, and real-time updates.

##### Features

- [Ringing](https://www.cometchat.com/docs/calls/ios/ringing.md): Configure CometChat Calls SDK v5 ringing on iOS for incoming calls, outgoing calls, call alerts, and accept or reject flows.
- [Call Layouts](https://www.cometchat.com/docs/calls/ios/call-layouts.md): Customize CometChat Calls SDK v5 call layouts on iOS with tile, spotlight, sidebar views, layout changes, and layout events.
- [Audio Modes](https://www.cometchat.com/docs/calls/ios/audio-modes.md): Configure CometChat Calls SDK v5 audio modes on iOS for speakers, earpiece, Bluetooth, routing, and call audio behavior.
- [Recording](https://www.cometchat.com/docs/calls/ios/recording.md): Use CometChat Calls SDK v5 recording on iOS to start, stop, access, and manage recordings for supported call sessions.
- [Transcription & Closed Captions](https://www.cometchat.com/docs/calls/ios/transcription.md): Use CometChat Calls SDK v5 transcription on iOS to transcribe calls, show live closed captions, and retrieve transcripts after the call.
- [Call Logs](https://www.cometchat.com/docs/calls/ios/call-logs.md): Display CometChat Calls SDK v5 call logs on iOS with call history, participants, call type, duration, and status details.
- [Participant Management](https://www.cometchat.com/docs/calls/ios/participant-management.md): Manage CometChat Calls SDK v5 participants on iOS with mute, pause video, pinning, permissions, and participant events.
- [Screen Sharing](https://www.cometchat.com/docs/calls/ios/screen-sharing.md): Add screen sharing in CometChat Calls SDK v5 on iOS with presenter controls, permissions, and in-call display behavior.
- [Picture-in-Picture](https://www.cometchat.com/docs/calls/ios/picture-in-picture.md): Configure picture-in-picture for CometChat Calls SDK v5 on iOS to keep video calls visible while users multitask.
- [Raise Hand](https://www.cometchat.com/docs/calls/ios/raise-hand.md): Add raise hand behavior in CometChat Calls SDK v5 on iOS so participants can request attention during group calls.
- [Idle Timeout](https://www.cometchat.com/docs/calls/ios/idle-timeout.md): Configure CometChat Calls SDK v5 idle timeout on iOS to handle inactive participants and call session cleanup.

##### Advanced

- [Custom Control Panel](https://www.cometchat.com/docs/calls/ios/custom-control-panel.md): Customize the CometChat Calls SDK v5 control panel on iOS with call buttons, actions, layout, and user controls.
- [Custom Participant List](https://www.cometchat.com/docs/calls/ios/custom-participant-list.md): Customize the CometChat Calls SDK v5 participant list on iOS with participant views, actions, status, and layout.
- [VoIP Calling](https://www.cometchat.com/docs/calls/ios/voip-calling.md): Set up CometChat Calls SDK v5 VoIP calling on iOS for call notifications, incoming call handling, and app wake flows.
- [Background Handling](https://www.cometchat.com/docs/calls/ios/background-handling.md): Handle iOS background modes in CometChat Calls SDK v5 to keep active calls running when the app moves to the background.
- [In-Call Chat](https://www.cometchat.com/docs/calls/ios/in-call-chat.md): Enable in-call chat in CometChat Calls SDK v5 on iOS so participants can send messages during active calls.
- [Share Invite](https://www.cometchat.com/docs/calls/ios/share-invite.md): Add invite sharing in CometChat Calls SDK v5 on iOS so users can share call links and bring participants into sessions.

##### Migration Guide

- [Migration Guide](https://www.cometchat.com/docs/calls/ios/migration-guide-v5.md): Migrate to CometChat Calls SDK v5 on iOS with updated setup, APIs, call sessions, layouts, and feature changes.

##### Resources

- [Troubleshooting](https://www.cometchat.com/docs/calls/ios/troubleshooting.md): Troubleshoot CometChat Calls SDK v5 on iOS for setup, authentication, permissions, call launch, media, and session issues.
- [GitHub](https://www.cometchat.com/docs/calls/ios/link/github.md): Navigate to GitHub documentation.
- [Sample Apps](https://www.cometchat.com/docs/calls/ios/link/sample-apps.md): Navigate to Sample Apps documentation.
- [Changelog](https://www.cometchat.com/docs/calls/ios/link/changelog.md): Navigate to Changelog documentation.

#### v4‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

#####  

- [Calling SDK](https://www.cometchat.com/docs/calls/v4/ios/overview.md): CometChat Calling SDK v4 - Legacy Release - Overview for iOS. This is the legacy v4 documentation. Most users should use v5, the current stable version.

###### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/v4/ios/setup.md): CometChat Calling SDK v4 - Legacy Release - Setup for iOS

###### Calling Flows

- [Ringing](https://www.cometchat.com/docs/calls/v4/ios/ringing.md): CometChat Calling SDK v4 - Legacy Release - Ringing for iOS
- [Call Session](https://www.cometchat.com/docs/calls/v4/ios/call-session.md): CometChat Calling SDK v4 - Legacy Release - Call Session for iOS
- [Standalone Calling](https://www.cometchat.com/docs/calls/v4/ios/standalone-calling.md): CometChat Calling SDK v4 - Legacy Release - Standalone Calling for iOS

###### Features

- [Recording](https://www.cometchat.com/docs/calls/v4/ios/recording.md): CometChat Calling SDK v4 - Legacy Release - Recording for iOS
- [Call Logs](https://www.cometchat.com/docs/calls/v4/ios/call-logs.md): CometChat Calling SDK v4 - Legacy Release - Call Logs for iOS
- [Session Timeout Flow](https://www.cometchat.com/docs/calls/v4/ios/session-timeout.md): CometChat Calling SDK v4 - Legacy Release - Session Timeout for iOS
- [Launch Call Screen On Tap Of Push Notification](https://www.cometchat.com/docs/calls/v4/ios/launch-call-screen-on-tap-of-push-notification.md): CometChat Calling SDK v4 - Legacy Release - Launch Call Screen On Tap Of Push Notification for iOS

###### Customisation

- [Video View Customisation](https://www.cometchat.com/docs/calls/v4/ios/video-view-customisation.md): CometChat Calling SDK v4 - Legacy Release - Video View Customisation for iOS
- [Presenter Mode](https://www.cometchat.com/docs/calls/v4/ios/presenter-mode.md): CometChat Calling SDK v4 - Legacy Release - Presenter Mode for iOS

### Android

#### v5‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

##### Overview

- [Calls SDK](https://www.cometchat.com/docs/calls/android/overview.md): Use CometChat Calls SDK v5 for Android to add voice and video calling, call sessions, participants, layouts, and in-call features.

##### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/android/setup.md): Set up CometChat Calls SDK v5 for Android with installation, app credentials, initialization, authentication, and a basic calling flow.
- [Authentication](https://www.cometchat.com/docs/calls/android/authentication.md): Configure authentication for CometChat Calls SDK v5 on Android with app credentials, logged-in users, and secure call access.

##### Call Session

- [SessionSettingsBuilder](https://www.cometchat.com/docs/calls/android/session-settings.md): Configure CometChat Calls SDK v5 session settings on Android for call behavior, UI options, participant controls, and features.
- [Join Session](https://www.cometchat.com/docs/calls/android/join-session.md): Join CometChat Calls SDK v5 sessions on Android with session IDs, call tokens, participant setup, and in-call UI launch.
- [Actions](https://www.cometchat.com/docs/calls/android/actions.md): Use CometChat Calls SDK v5 actions on Android to control calls, manage audio/video state, share screens, and handle in-call behavior.
- [Events](https://www.cometchat.com/docs/calls/android/events.md): Handle CometChat Calls SDK v5 events on Android for call lifecycle, participants, media state, errors, and real-time updates.

##### Features

- [Ringing](https://www.cometchat.com/docs/calls/android/ringing.md): Configure CometChat Calls SDK v5 ringing on Android for incoming calls, outgoing calls, call alerts, and accept or reject flows.
- [Call Layouts](https://www.cometchat.com/docs/calls/android/call-layouts.md): Customize CometChat Calls SDK v5 call layouts on Android with tile, spotlight, sidebar views, layout changes, and layout events.
- [Audio Modes](https://www.cometchat.com/docs/calls/android/audio-modes.md): Configure CometChat Calls SDK v5 audio modes on Android for speakers, earpiece, Bluetooth, routing, and call audio behavior.
- [Recording](https://www.cometchat.com/docs/calls/android/recording.md): Use CometChat Calls SDK v5 recording on Android to start, stop, access, and manage recordings for supported call sessions.
- [Transcription & Closed Captions](https://www.cometchat.com/docs/calls/android/transcription.md): Use CometChat Calls SDK v5 transcription on Android to transcribe calls, show live closed captions, and retrieve transcripts after the call.
- [Call Logs](https://www.cometchat.com/docs/calls/android/call-logs.md): Display CometChat Calls SDK v5 call logs on Android with call history, participants, call type, duration, and status details.
- [Participant Management](https://www.cometchat.com/docs/calls/android/participant-management.md): Manage CometChat Calls SDK v5 participants on Android with mute, pause video, pinning, permissions, and participant events.
- [Screen Sharing](https://www.cometchat.com/docs/calls/android/screen-sharing.md): Add screen sharing in CometChat Calls SDK v5 on Android with presenter controls, permissions, and in-call display behavior.
- [Picture-in-Picture](https://www.cometchat.com/docs/calls/android/picture-in-picture.md): Configure picture-in-picture for CometChat Calls SDK v5 on Android to keep video calls visible while users multitask.
- [Raise Hand](https://www.cometchat.com/docs/calls/android/raise-hand.md): Add raise hand behavior in CometChat Calls SDK v5 on Android so participants can request attention during group calls.
- [Idle Timeout](https://www.cometchat.com/docs/calls/android/idle-timeout.md): Configure CometChat Calls SDK v5 idle timeout on Android to handle inactive participants and call session cleanup.

##### Advanced

- [Custom Control Panel](https://www.cometchat.com/docs/calls/android/custom-control-panel.md): Customize the CometChat Calls SDK v5 control panel on Android with call buttons, actions, layout, and user controls.
- [Custom Participant List](https://www.cometchat.com/docs/calls/android/custom-participant-list.md): Customize the CometChat Calls SDK v5 participant list on Android with participant views, actions, status, and layout.
- [VoIP Calling](https://www.cometchat.com/docs/calls/android/voip-calling.md): Set up CometChat Calls SDK v5 VoIP calling on Android for call notifications, incoming call handling, and app wake flows.
- [Background Handling](https://www.cometchat.com/docs/calls/android/background-handling.md): Handle background calling with CometChat Calls SDK v5 on Android for app lifecycle, call continuity, and notifications.
- [In-Call Chat](https://www.cometchat.com/docs/calls/android/in-call-chat.md): Enable in-call chat in CometChat Calls SDK v5 on Android so participants can send messages during active calls.
- [Share Invite](https://www.cometchat.com/docs/calls/android/share-invite.md): Add invite sharing in CometChat Calls SDK v5 on Android so users can share call links and bring participants into sessions.

##### Migration Guide

- [Migration Guide](https://www.cometchat.com/docs/calls/android/migration-guide-v5.md): Migrate to CometChat Calls SDK v5 on Android with updated setup, APIs, call sessions, layouts, and feature changes.

##### Resources

- [Troubleshooting](https://www.cometchat.com/docs/calls/android/troubleshooting.md): Troubleshoot CometChat Calls SDK v5 on Android for setup, authentication, permissions, call launch, media, and session issues.
- [GitHub](https://www.cometchat.com/docs/calls/android/link/github.md): Navigate to GitHub documentation.
- [Sample Apps](https://www.cometchat.com/docs/calls/android/link/sample-apps.md): Navigate to Sample Apps documentation.
- [Changelog](https://www.cometchat.com/docs/calls/android/link/changelog.md): Navigate to Changelog documentation.

#### v4‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

#####  

- [Calling SDK](https://www.cometchat.com/docs/calls/v4/android/overview.md): CometChat Calling SDK v4 - Legacy Release - Overview for Android. This is the legacy v4 documentation. Most users should use v5, the current stable version.

###### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/v4/android/setup.md): CometChat Calling SDK v4 - Legacy Release - Setup for Android

###### Calling Flows

- [Ringing](https://www.cometchat.com/docs/calls/v4/android/ringing.md): CometChat Calling SDK v4 - Legacy Release - Ringing for Android
- [Call Session](https://www.cometchat.com/docs/calls/v4/android/call-session.md): CometChat Calling SDK v4 - Legacy Release - Call Session for Android
- [Standalone Calling](https://www.cometchat.com/docs/calls/v4/android/standalone-calling.md): CometChat Calling SDK v4 - Legacy Release - Standalone Calling for Android

###### Features

- [Recording](https://www.cometchat.com/docs/calls/v4/android/recording.md): CometChat Calling SDK v4 - Legacy Release - Recording for Android
- [Call Logs](https://www.cometchat.com/docs/calls/v4/android/call-logs.md): CometChat Calling SDK v4 - Legacy Release - Call Logs for Android
- [Session Timeout Flow](https://www.cometchat.com/docs/calls/v4/android/session-timeout.md): CometChat Calling SDK v4 - Legacy Release - Session Timeout for Android

###### Customisation

- [Video View Customisation](https://www.cometchat.com/docs/calls/v4/android/video-view-customisation.md): CometChat Calling SDK v4 - Legacy Release - Video View Customisation for Android
- [Presenter Mode](https://www.cometchat.com/docs/calls/v4/android/presenter-mode.md): CometChat Calling SDK v4 - Legacy Release - Presenter Mode for Android

### Flutter

#### v5‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

##### Overview

- [Calls SDK](https://www.cometchat.com/docs/calls/flutter/overview.md): Use CometChat Calls SDK v5 for Flutter to add voice and video calling, call sessions, participants, layouts, and in-call features.

##### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/flutter/setup.md): Set up CometChat Calls SDK v5 for Flutter with installation, app credentials, initialization, authentication, and a basic calling flow.
- [Authentication](https://www.cometchat.com/docs/calls/flutter/authentication.md): Configure authentication for CometChat Calls SDK v5 on Flutter with app credentials, logged-in users, and secure call access.

##### Call Session

- [SessionSettingsBuilder](https://www.cometchat.com/docs/calls/flutter/session-settings.md): Configure CometChat Calls SDK v5 session settings on Flutter for call behavior, UI options, participant controls, and features.
- [Join Session](https://www.cometchat.com/docs/calls/flutter/join-session.md): Join CometChat Calls SDK v5 sessions on Flutter with session IDs, call tokens, participant setup, and in-call UI launch.
- [Actions](https://www.cometchat.com/docs/calls/flutter/actions.md): Use CometChat Calls SDK v5 actions on Flutter to control calls, manage audio/video state, share screens, and handle in-call behavior.
- [Events](https://www.cometchat.com/docs/calls/flutter/events.md): Handle CometChat Calls SDK v5 events on Flutter for call lifecycle, participants, media state, errors, and real-time updates.

##### Features

- [Ringing](https://www.cometchat.com/docs/calls/flutter/ringing.md): Configure CometChat Calls SDK v5 ringing on Flutter for incoming calls, outgoing calls, call alerts, and accept or reject flows.
- [Call Layouts](https://www.cometchat.com/docs/calls/flutter/call-layouts.md): Customize CometChat Calls SDK v5 call layouts on Flutter with tile, spotlight, sidebar views, layout changes, and layout events.
- [Audio Modes](https://www.cometchat.com/docs/calls/flutter/audio-modes.md): Configure CometChat Calls SDK v5 audio modes on Flutter for speakers, earpiece, Bluetooth, routing, and call audio behavior.
- [Recording](https://www.cometchat.com/docs/calls/flutter/recording.md): Use CometChat Calls SDK v5 recording on Flutter to start, stop, access, and manage recordings for supported call sessions.
- [Transcription & Closed Captions](https://www.cometchat.com/docs/calls/flutter/transcription.md): Use CometChat Calls SDK v5 transcription on Flutter to transcribe calls, show live closed captions, and retrieve transcripts after the call.
- [Call Logs](https://www.cometchat.com/docs/calls/flutter/call-logs.md): Display CometChat Calls SDK v5 call logs on Flutter with call history, participants, call type, duration, and status details.
- [Participant Management](https://www.cometchat.com/docs/calls/flutter/participant-management.md): Manage CometChat Calls SDK v5 participants on Flutter with mute, pause video, pinning, permissions, and participant events.
- [Screen Sharing](https://www.cometchat.com/docs/calls/flutter/screen-sharing.md): Add screen sharing in CometChat Calls SDK v5 on Flutter with presenter controls, permissions, and in-call display behavior.
- [Picture-in-Picture](https://www.cometchat.com/docs/calls/flutter/picture-in-picture.md): Configure picture-in-picture for CometChat Calls SDK v5 on Flutter to keep video calls visible while users multitask.
- [Raise Hand](https://www.cometchat.com/docs/calls/flutter/raise-hand.md): Add raise hand behavior in CometChat Calls SDK v5 on Flutter so participants can request attention during group calls.
- [Idle Timeout](https://www.cometchat.com/docs/calls/flutter/idle-timeout.md): Configure CometChat Calls SDK v5 idle timeout on Flutter to handle inactive participants and call session cleanup.

##### Advanced

- [Custom Control Panel](https://www.cometchat.com/docs/calls/flutter/custom-control-panel.md): Customize the CometChat Calls SDK v5 control panel on Flutter with call buttons, actions, layout, and user controls.
- [Custom Participant List](https://www.cometchat.com/docs/calls/flutter/custom-participant-list.md): Customize the CometChat Calls SDK v5 participant list on Flutter with participant views, actions, status, and layout.
- [VoIP Calling](https://www.cometchat.com/docs/calls/flutter/voip-calling.md): Set up CometChat Calls SDK v5 VoIP calling on Flutter for call notifications, incoming call handling, and app wake flows.
- [Background Handling](https://www.cometchat.com/docs/calls/flutter/background-handling.md): Handle background calling with CometChat Calls SDK v5 on Flutter for app lifecycle, call continuity, and notifications.
- [In-Call Chat](https://www.cometchat.com/docs/calls/flutter/in-call-chat.md): Enable in-call chat in CometChat Calls SDK v5 on Flutter so participants can send messages during active calls.
- [Share Invite](https://www.cometchat.com/docs/calls/flutter/share-invite.md): Add invite sharing in CometChat Calls SDK v5 on Flutter so users can share call links and bring participants into sessions.

##### Migration Guide

- [Migration Guide](https://www.cometchat.com/docs/calls/flutter/migration-guide-v5.md): Migrate to CometChat Calls SDK v5 on Flutter with updated setup, APIs, call sessions, layouts, and feature changes.

##### Resources

- [Troubleshooting](https://www.cometchat.com/docs/calls/flutter/troubleshooting.md): Troubleshoot CometChat Calls SDK v5 on Flutter for setup, authentication, permissions, call launch, media, and session issues.
- [GitHub](https://www.cometchat.com/docs/calls/flutter/link/github.md): Navigate to GitHub documentation.
- [Sample Apps](https://www.cometchat.com/docs/calls/flutter/link/sample-apps.md): Navigate to Sample Apps documentation.
- [Changelog](https://www.cometchat.com/docs/calls/flutter/link/changelog.md): Navigate to Changelog documentation.

#### v4‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

#####  

- [Calling SDK](https://www.cometchat.com/docs/calls/v4/flutter/overview.md): CometChat Calling SDK v4 - Legacy Release - Overview for Flutter. This is the legacy v4 documentation. Most users should use v5, the current stable version.

###### Getting Started

- [Setup](https://www.cometchat.com/docs/calls/v4/flutter/setup.md): CometChat Calling SDK v4 - Legacy Release - Setup for Flutter

###### Calling Flows

- [Ringing](https://www.cometchat.com/docs/calls/v4/flutter/ringing.md): CometChat Calling SDK v4 - Legacy Release - Ringing for Flutter
- [Call Session](https://www.cometchat.com/docs/calls/v4/flutter/call-session.md): CometChat Calling SDK v4 - Legacy Release - Call Session for Flutter
- [Standalone Calling](https://www.cometchat.com/docs/calls/v4/flutter/standalone-calling.md): CometChat Calling SDK v4 - Legacy Release - Standalone Calling for Flutter

###### Features

- [Recording](https://www.cometchat.com/docs/calls/v4/flutter/recording.md): CometChat Calling SDK v4 - Legacy Release - Recording for Flutter
- [Call Logs](https://www.cometchat.com/docs/calls/v4/flutter/call-logs.md): CometChat Calling SDK v4 - Legacy Release - Call Logs for Flutter
- [Session Timeout Flow](https://www.cometchat.com/docs/calls/v4/flutter/session-timeout.md): CometChat Calling SDK v4 - Legacy Release - Session Timeout for Flutter

###### Customisation

- [Video View Customisation](https://www.cometchat.com/docs/calls/v4/flutter/video-view-customisation.md): CometChat Calling SDK v4 - Legacy Release - Video View Customisation for Flutter
- [Presenter Mode](https://www.cometchat.com/docs/calls/v4/flutter/presenter-mode.md): CometChat Calling SDK v4 - Legacy Release - Presenter Mode for Flutter
