• UIKit
  • SDK
  • サーバー API
Build Basic Interfaces/
  • Overview
  • Run Demo
  • 開始
  • インストール
    • TUIKit
    • TUIChat のみ
  • Build Basic Interfaces
    • Chat
    • Conversation List
    • Contact List
    • Add Contact
    • Create Group Chat
    • Video and Audio Call
  • Features
    • 反応
    • Quote
    • 既読レシート
    • ユーザーのオンライン状態
    • Translation
    • Voice to Text
    • メッセージ検索
  • カスタマイズ
    • メッセージのカスタマイズ
    • 絵文字とステッカーのカスタマイズ
  • ローカライズ
  • Changelog
  • Guideline for Beginners
  • コンソールガイド
    • アプリケーションの作成とアップグレード
    • 基本設定
    • 機能設定
    • アカウント管理
    • グループ管理
    • コールバック設定
  • 製品紹介
    • メッセージ管理
      • シングルチャットメッセージ
      • メッセージの保存
      • オフラインプッシュ
      • グループメッセージ
      • メッセージフォーマット
    • アカウントシステム
      • ログイン認証
      • オンライン状態管理
    • グループ関連
      • グループシステム
      • グループ管理
    • ユーザープロファイルとリレーションシップチェーン
      • 資料管理
      • リレーションシップチェーン管理
  • 購入ガイド
    • 課金の概要
    • 価格
  • エラーコード

Video and Audio Call

This article will guide you in building the audio and video call feature.

Display Effect

The video call effect is shown in the following figure:

The audio call effect is shown in the following figure:

Environment Requirements

Android Studio-Giraffe
Android Gradle Plugin Version-7.0.0


Before building the interface, please ensure that you have completed the following 4 things:
1. Created an application in the console.
2. Created some user accounts in the console.
3. Integrated with TUICallKit.
4. Called the login API in TUILogin to log in to the component.
1. All components use this API to log in. You can log in once every time you start the application.
2. Please make sure that the login is successful, and we recommend that you do the following in the callback of successful login.
If you haven't completed the above 4 steps, please refer to the corresponding steps in Getting Started first, otherwise you may encounter obstacles when implementing the following features.
If you have already completed them, please continue reading below.

Integration steps

1. log in to Chat Console to activate the audio and video service. For detailed steps, refer to the document: Activate Service.
2. In the pop-up dialog to activate the TRTC TRTC service, click "Confirm". The system will create a TRTC application with the same SDKAppID as the current Chat application in the TRTC console, allowing reuse of accounts and authentication.
3. Integrate the TUICallKit component. In the build.gradle file of the App, include a dependency for TUICallKit:
// Integrate the TUICallKit component
api project(':tuicallkit')
After integrating the TUICallKit component, "Video Call" and "Voice Call" buttons will automatically appear on the chat interface and contact profile screen. When users click on these buttons, TUICallKit will display the call invitation UI and send a call invitation request to the other party.
When a user receives a call invitation online, TUICallKit automatically displays the call receiving UI, allowing the user to accept or reject the call.
When a user receives a call invitation offline, offline push capabilities must be utilized to wake up the app call.
Starting a call from the message page is shown in the figure below:

Starting a call from the contacts page is shown in the figure below:

Add Offline Push Notifications

For details, refer to the documentation: Offline Push. After configuration, when you click a received audio and video call notification pushed offline, TUICallKit will automatically open the audio/video call invitation interface.

Add AI Noise Reduction

After integrating TUIChat and TUICallkit components, when you send a VMS in the chat interface, you can record VMS with AI noise reduction and automatic gain control. Below is a comparison of VMS recorded simultaneously with two phones:

1. This feature requires the purchase of the Advanced Audio and Video Calling Capability or higher-level plans. After the plan expires, VMS recording will switch to the system API for recording.
2. Only supported in SDK 7.0 and later versions.

More practices

You can locally run the TUIKitDemo source code to explore more interface implementations.

Contact Us

If you have any questions about this article, feel free to join the Telegram Technical Group, where you will receive reliable technical support.