# Tencent RTC Call — Flutter > Call documentation for Flutter platform. ## UIKit ### Get Started - [Run the Demo](https://pre.trtc.io/document/60414.md): The Flutter audio and video call Demo is a comprehensive SDK guide that helps developers quickly set up and run an audio and video calling feature with a complete UI. This guide is designed for developers using Flutter 3.24.0 and above on Android and iOS platforms, providing step-by-step instructions including environment setup, service activation, downloading the Demo, configuration, login, registration, and making calls. It enables users to experience real-time communication by running the Demo on two devices with different user IDs. - [Integration](https://pre.trtc.io/document/54896.md): The TUICallKit SDK for Flutter enables developers to quickly integrate complete audio and video call interfaces. This quickstart guide covers environment setup, service activation, component import, project configuration, user login, call initiation, and answering steps. It also introduces advanced features such as AI transcription, floating window support, multi-person calling, and UI customization to enhance communication experiences. ### Basic Features - [UserSig Authentication](https://pre.trtc.io/document/35166.md): This guide explains how to calculate UserSig, a security signature for Tencent-RTC services, during the debugging phase. It covers obtaining SDKAppID and SDKSecretKey from the Tencent-RTC console and generating UserSig using client sample code on multiple platforms including Android, iOS, Web, Windows, Flutter, and Mac. The steps ensure secure authentication for developers testing Tencent-RTC SDKs before official deployment. - [In-call Chat](https://pre.trtc.io/document/66905.md): The Chat SDK offers multi-platform chat APIs and UI components to quickly build chat applications with audio and video call features. This guide covers the essential steps to prepare your Flutter environment, activate audio and video services, and integrate TUICallKit for seamless call functionality within your chat app. Key actions include service activation, installing the tencent_calls_uikit plugin, and adding navigator observers to enable call invitation UI and requests. - [UI Customization](https://pre.trtc.io/document/56562.md) - [Group Calls](https://pre.trtc.io/document/59837.md): TUICallKit SDK offers group call capabilities for Android, iOS, and Flutter platforms. This quickstart guide helps developers initiate multiplayer calls and join existing group calls by demonstrating the necessary API calls and usage examples in Kotlin, Java, Swift, Objective-C, and Dart. Key steps include creating a call with user lists and joining calls via call IDs to enable seamless multiplayer audio communication. - [Notification](https://pre.trtc.io/document/60457.md): The TIMPush plugin provides an SDK for Flutter projects to implement offline push notifications efficiently. It supports Android and iOS platforms and enables offline push calls within the TUICallKit component for audio and video communication. This guide details the integration steps, including setting OfflinePushInfo parameters, to help developers quickly enable offline push capabilities with features like data statistics, link tracking, and cross-platform support. - [VoIP (Optional)](https://pre.trtc.io/document/60458.md): Tencent RTC VoIP call SDK provides developers with a comprehensive guide to implement VoIP push notifications on Android and iOS platforms. This quickstart covers key steps including FCM registration, configuration file setup, TIMPush plugin integration, and necessary Android project modifications to enable offline push and incoming call notifications effectively. - [Configuring Nicknames and Avatars](https://pre.trtc.io/document/59834.md): The TUICallKit SDK guide explains how developers can set and update user nicknames and avatars across Android, iOS, Flutter, Web, and uni-app platforms. It provides step-by-step API usage instructions to customize user profile information, including handling potential update delays during calls between non-friend users due to privacy settings. - [Floating Window](https://pre.trtc.io/document/59841.md): TUICallKit SDK enables Android, iOS, and Flutter developers to integrate the Floating Window feature, allowing users to minimize voice and video call interfaces into a floating window. This guide provides step-by-step instructions to activate the floating window button using the enableFloatWindow method during TUICallKit initialization, enhancing user experience during calls. - [Custom Ringtones](https://pre.trtc.io/document/59849.md): TUICallKit Flutter SDK guide explains how to replace and customize incoming call ringtones, including application and offline push ringtones. It provides two methods to set application ringtones by replacing audio files or using the setCallingBell interface. The guide also covers enabling mute mode and configuring offline push ringtones on iOS and Android platforms, supporting Huawei, Xiaomi, and FCM push services. - [Call State Monitoring](https://pre.trtc.io/document/59851.md): TUICallKit SDK offers call status and member update callback APIs for Android, iOS, and Flutter platforms. These APIs enable developers to monitor key call lifecycle events and participant actions in real-time, such as call start, end, user join, leave, invite, and reject. Proper observer registration is essential, especially on Android, to ensure callback persistence throughout the call lifecycle. - [Localization](https://pre.trtc.io/document/63265.md): TUICallKit SDK for Flutter enables multilingual support by automatically switching languages based on the application's MaterialApp or CupertinoApp settings. This guide provides step-by-step instructions to add new languages, including source code integration, language pack creation, translation, and updating the language adaptation method to extend TUICallKit's language capabilities. - [USB Camera Capture](https://pre.trtc.io/document/64373.md): This guide explains how to integrate a USB camera with the TUICallKit component on Android devices to enable video call functionality. It covers environment preparation, dependency integration, and key steps to use an external camera for video calls. The instructions apply to Android 5.0 or later and include solutions for common issues on Android 9 and 10 devices. - [Server-initiated Calls](https://pre.trtc.io/document/71845.md): Tencent RTC provides a server-side SDK and API guide to initiate audio and video calls and input uplink media streams. This quickstart explains how to send HTTPS POST requests to start calls with parameters like SDKAppID, user identifier, and call details. It also covers pushing online media streams into rooms using the stream push API, detailing differences in RoomIdType parameters for server-initiated calls and media input. This guide is intended for developers integrating server-side call control and media streaming capabilities. - [Multi-device Login](https://pre.trtc.io/document/78558.md): TUICallKit Audio and Video Call SDK enables multi-device login, allowing users to log in on multiple devices simultaneously with the same UserID. This feature is designed for scenarios where users need seamless call reception across devices such as phones and PCs. To enable multi-device login, developers must integrate TUICallKit and call the enableMultiDeviceAbility API after login. This guide provides step-by-step instructions to activate and use multi-device login, ensuring all devices ring on incoming calls and only one device connects when answered. ### Advanced Features - [Virtual Background](https://pre.trtc.io/document/60479.md): TUICallKit Video Call SDK offers a virtual background feature for Flutter, enabling users to set blurry or image backgrounds during video calls to protect privacy and enhance user experience. This guide covers preparation steps including service activation, SDK version requirements, model file integration, and how to enable and customize virtual backgrounds with key interface calls. - [AI Noise Suppression](https://pre.trtc.io/document/60481.md): AI Noise Suppression is an advanced noise reduction SDK developed from Tencent Tianlai Laboratory's AI algorithms. It is designed for developers and users seeking to improve audio clarity by intelligently detecting and removing noise interference in transmitted signals. Integrated within TUICallKit, this technology ensures clear and stable sound across diverse environments such as offices, internet cafes, malls, and outdoor settings. Users can experience its effects online through the Tencent RTC Demo, with the feature enabled by default for seamless high-quality noise reduction. - [Cloud Recording](https://pre.trtc.io/document/51001.md): TUICallKit Call Recording is a cloud-based SDK feature designed for automatic recording of audio and video calls. It supports full-call recording with zero-code integration and automatic lifecycle management, making it ideal for industries requiring call archiving, compliance auditing, and playback. This guide explains how to enable cloud recording globally or for specific calls, including configuration steps and code examples for Android and iOS platforms. - [Beauty Effects](https://pre.trtc.io/document/59406.md): TUICallKit Flutter SDK guide explains how to integrate custom beauty effects by leveraging TRTC custom video rendering in the Native layer. It targets Flutter developers who want to implement third-party or Tencent beauty effects by enabling custom rendering via MethodChannel, processing video frames natively, and controlling beauty parameters from Dart code. The steps include setting up communication between Dart and Native, completing beauty processing in Native TRTC logic, and customizing beauty parameters. ### Client APIs - [API Reference](https://pre.trtc.io/document/54905.md): TUICallKit is an audio/video call component SDK that includes UI elements, designed for developers to quickly implement audio and video call applications. It provides APIs for user login, call management, user info settings, mute mode, floating window control, and call banner display. Key type definitions clarify call types, parameters, and API call return values. - [TUICallKit](https://pre.trtc.io/document/54906.md): TUICallKit is an audio/video call SDK component with integrated UI elements designed for developers to quickly build applications similar to WeChat. It offers APIs for user authentication, managing user profiles, initiating and joining audio or video calls, and controlling call features such as mute mode, floating windows, and incoming call banners. The API supports detailed parameters including user credentials and call configurations to enable seamless real-time communication. - [TUICallObserver](https://pre.trtc.io/document/54908.md): TUICallObserver is a legacy API component in Tencent RTC that provides call event callback interfaces for Flutter applications. It enables developers to listen to various call lifecycle events including call invitations, call start and end, user joining or leaving, media type changes, and network quality updates. This API is intended for handling real-time communication call events, though new developers are advised to use the updated API version for improved performance and features. - [Type Definitions](https://pre.trtc.io/document/54909.md): Tencent RTC API provides type definitions including CompletionHandler, CallParams, and CallMediaType enum to support real-time communication features. This reference details the structure of API call results, parameters for initiating calls such as room ID and timeout, and media types like audio and video calls, enabling developers to integrate and manage Tencent RTC functionalities effectively. - [TUICallEngine](https://pre.trtc.io/document/54907.md): TUICallEngine is a legacy SDK providing real-time audio and video call APIs for initiating, managing, and controlling calls. It supports features such as call acceptance, rejection, hanging up, inviting users, multi-device login, and video rendering parameters including beauty and background effects. This API reference details the methods and parameters for developers integrating real-time communication functionalities using Tencent RTC. ### Solutions - [WhatsApp Clone](https://pre.trtc.io/document/64301.md): WhatsApp Clone is a cross-platform instant messaging project that replicates WhatsApp's chat and high-quality audio/video call capabilities using Tencent's ChatUIkit and CallKit. Designed for developers targeting iOS, Android, Web, and Flutter, it offers secure, efficient communication with features such as group management, AI-powered noise cancellation, and global deployment compliant with GDPR. This overview introduces its core functionalities and software management tools. ### FAQ - [General](https://pre.trtc.io/document/53565.md): TUICallKit FAQ provides detailed explanations and solutions for common voice and video call errors such as package subscription issues, invalid UserIDs, inviteID errors, and region restrictions. This guide helps developers and users across iOS, Android, Flutter, Web, and Mini Programs platforms troubleshoot call failures, obtain call room numbers, and manage version compatibility in integrated TUIChat scenarios. - [Flutter](https://pre.trtc.io/document/56860.md): Tencent RTC Flutter FAQ provides solutions for common issues encountered when integrating tencent_calls_uikit with tencent_trtc_cloud or live_flutter_plugin, including symbol conflicts on Android and iOS. It also explains how to configure Android ProGuard settings properly and resolve compilation errors caused by upgrading to version 1.8.0 or later. This guide helps Flutter developers ensure smooth integration and upgrade of Tencent RTC real-time communication SDKs. - [Error Codes](https://pre.trtc.io/document/54901.md): Tencent RTC provides a comprehensive error code reference for audio and video call issues encountered during real-time communication. This guide helps developers identify and resolve common problems related to permissions, device access, SDK versions, signaling failures, and package support across TUICallDefine, Chat SDK, TRTC SDK, and CallKit Server. It is essential for ensuring smooth integration and operation of Tencent Cloud's real-time communication services. - [Upgrading](https://pre.trtc.io/document/58626.md) ## Core SDK ### Get Started - [Making Your First Call](https://pre.trtc.io/document/78433.md): The AtomicXCore SDK is a comprehensive audio/video call SDK that enables developers to quickly implement multi-party call features on Android and iOS. This quickstart guide walks through activating the service, integrating the SDK, initializing and logging in users, and implementing call interfaces with DeviceStore, CallStore, and CallCoreView components. It also covers platform-specific configurations such as Android Proguard rules and iOS symbol stripping fixes, as well as advanced features like Picture-in-Picture support and call control customization. - [Answering Your First Call](https://pre.trtc.io/document/78434.md): The AtomicXCore SDK is a Flutter-based call answering SDK that provides DeviceStore, CallStore, and CallCoreView components to enable multi-party audio and video call scenarios. This quickstart guide helps developers activate the service, integrate the SDK, initialize and log in users, and implement call answering features including UI setup and device permission handling on Android and iOS platforms. - [Integration Offline Push](https://pre.trtc.io/document/78435.md): Tencent Cloud Chat Push SDK enables offline push notifications for Android (FCM) and iOS (APNs) platforms. This quickstart guide provides developers with detailed steps to activate the service, configure vendor settings, integrate the tencent_cloud_chat_push plugin, and optimize push delivery rates. It is ideal for applications integrating AtomicXCore without a user interface and covers both global and regional push channel recommendations. ### Client APIs - [CallStore](https://pre.trtc.io/document/77699.md): CallStore is a real-time audio/video call management SDK that enables developers to implement and control call lifecycles, including initiating, answering, rejecting, and ending calls. It supports group call management, call history querying, and event-driven updates. The API provides access to call state, participant info, volume levels, and network quality, with all events delivered on the main thread to facilitate UI integration. - [CallCoreView](https://pre.trtc.io/document/81729.md): CallCoreView is a call interface container SDK that supports multi-layout switching, call waiting animations, status visualization with volume and network quality icons, and user avatar personalization. It is designed for developers to manage call screen layouts and states on supported platforms using CallCoreController. This API reference details static properties, configuration methods, and data structures such as CallLayoutTemplate and VolumeLevel to facilitate customized call UI implementations. ### FAQs - [All Platform](https://pre.trtc.io/document/53565.md): TUICallKit FAQ provides detailed explanations and solutions for common voice and video call errors such as package subscription issues, invalid UserIDs, inviteID errors, and region restrictions. This guide helps developers and users across iOS, Android, Flutter, Web, and Mini Programs platforms troubleshoot call failures, obtain call room numbers, and manage version compatibility in integrated TUIChat scenarios. - [Flutter](https://pre.trtc.io/document/56860.md): Tencent RTC Flutter FAQ provides solutions for common issues encountered when integrating tencent_calls_uikit with tencent_trtc_cloud or live_flutter_plugin, including symbol conflicts on Android and iOS. It also explains how to configure Android ProGuard settings properly and resolve compilation errors caused by upgrading to version 1.8.0 or later. This guide helps Flutter developers ensure smooth integration and upgrade of Tencent RTC real-time communication SDKs. - [ErrorCode](https://pre.trtc.io/document/54901.md): Tencent RTC provides a comprehensive error code reference for audio and video call issues encountered during real-time communication. This guide helps developers identify and resolve common problems related to permissions, device access, SDK versions, signaling failures, and package support across TUICallDefine, Chat SDK, TRTC SDK, and CallKit Server. It is essential for ensuring smooth integration and operation of Tencent Cloud's real-time communication services.