TUICallEngine
TUICallEngine APIs
TUICallEngine
is an audio/video call component that does not include UI elements. If TUICallKit
does not meet your requirements, you can use the APIs of TUICallEngine
to customize your project.Overview
API | Description |
Authenticates the basic audio/video call capabilities. | |
| |
The destructor function, which releases resources used by TUICallEngine. | |
Registers an event listener. | |
Unregisters an event listener. | |
Makes a one-to-one call. | |
Makes a group call. | |
Accepts a call. | |
Rejects a call. | |
Ends a call. | |
Ignores a call. | |
Invites users to the current group call. | |
Joins a group call. | |
Changes the call type, for example, from video call to audio call. | |
Subscribes to the video stream of a remote user. | |
Unsubscribes from the video stream of a remote user. | |
Turns the camera on. | |
Turns the camera off. | |
Switches between the front and rear cameras. | |
Turns the mic on. | |
Turns the mic off. | |
Selects the audio playback device (receiver or speaker). | |
Sets the alias and profile photo. | |
Sets whether to enable multi-device login for TUICallEngine (supported by the premium package). | |
Set the rendering mode of video image. | |
Set the encoding parameters of video encoder. | |
Query call record. | |
Delete call record. | |
Set beauty level, support turning off default beauty. |
Details
init
This API is used to initialize
TUICallEngine
. Call it to authenticate the call service and perform other required actions before you call other APIs.Future<TUIResult> init(int sdkAppID, String userId, String userSig)
unInit
The destructor function, which releases resources used by TUICallEngine.
Future<TUIResult> unInit()
addObserver
This API is used to register an event listener to listen for
TUICallObserver
events.Future<void> addObserver(TUICallObserver observer)
removeObserver
This API is used to unregister an event listener.
Future<void> removeObserver(TUICallObserver observer)
call
This API is used to make a (one-to-one) call.
Future<TUIResult> call(String userId, TUICallMediaType mediaType, TUICallParams params)
Parameter | Type | Description |
userId | String | The target user ID. |
mediaType | The call type, which can be video or audio. | |
params | An additional parameter, such as roomID, call timeout, offline push info, etc |
groupCall
This API is used to make a group call.
Notice:
Before making a group call, you need to create an IM group first.
Future<TUIResult> groupCall(String groupId, List<String> userIdList, TUICallMediaType mediaType, TUICallParams params)
Parameter | Type | Description |
groupId | String | The group ID. |
userIdList | List<String> | The target user IDs. |
mediaType | The call type, which can be video or audio. | |
params | An additional parameter. such as roomID, call timeout, offline push info, etc |
accept
This API is used to accept a call. After receiving the
onCallReceived()
callback, you can call this API to accept the call.Future<TUIResult> accept()
reject
This API is used to reject a call. After receiving the
onCallReceived()
callback, you can call this API to reject the call.Future<TUIResult> reject()
ignore
This API is used to ignore a call. After receiving the
onCallReceived()
, you can call this API to ignore the call. The caller will receive the onUserLineBusy
callback.Note: If your project involves live streaming or conferencing, you can also use this API to implement the “in a meeting” or “on air” feature.
Future<TUIResult> ignore()
hangup
This API is used to end a call.
Future<TUIResult> hangup()
inviteUser
This API is used to invite users to the current group call.
This API is called by a participant of a group call to invite new users.
Future<void> iniviteUser(List<String> userIdList, TUICallParams params, TUIValueCallback callback)
Parameter | Type | Description |
userIdList | List<String> | The target user IDs. |
params | An additional parameter. such as roomID, call timeout, offline push info, etc. |
joinInGroupCall
This API is used to join a group call.
This API is called by a group member to join the group’s call.
Future<TUIResult> joinInGroupCall(TUIRoomId roomId, String groupId, TUICallMediaType mediaType)
Parameter | Type | Description |
roomId | The room ID. | |
groupId | String | The group ID. |
mediaType | The call type, which can be video or audio. |
switchCallMediaType
This API is used to change the call type.
Future<void> switchCallMediaType(TUICallMediaType mediaType)
Parameter | Type | Description |
mediaType | The call type, which can be video or audio. |
startRemoteView
This API is used to set the view object to display a remote video.
Future<void> startRemoteView(String userId, intviewId)
Parameter | Type | Description |
userId | String | The target user ID. |
intviewId | int | The ID of the widget in the video rendering screen |
stopRemoteview
This API is used to unsubscribe from the video stream of a remote user.
Future<void> stopRemoteView(String userId)
Parameter | Type | Description |
userId | String | The target user ID. |
openCamera
This API is used to turn the camera on.
Future<TUIResult> openCamera(TUICamera camera, int? viewId)
Parameter | Type | Description |
camera | The front or rear camera. | |
viewId | int | The ID of the widget in the video rendering screen |
closeCamera
This API is used to turn the camera off.
Future<void> closeCamera()
switchCamera
This API is used to switch between the front and rear cameras.
Future<void> switchCamera(TUICamera camera)
Parameter | Type | Description |
camera | The front or rear camera. |
openMicrophone
This API is used to turn the mic on.
Future<TUIResult> openMicrophone()
closeMicrophone
This API is used to turn the mic off.
Future<void> closeMicrophone()
selectAudioPlaybackDevice
This API is used to select the audio playback device (receiver or speaker). In call scenarios, you can use this API to turn on/off hands-free mode.
Future<void> selectAudioPlaybackDevice(TUIAudioPlaybackDevice device)
Parameter | Type | Description |
device | The speaker or receiver. |
setSelfInfo
This API is used to set the alias and profile photo. The alias cannot exceed 500 bytes, and the profile photo is specified by a URL.
Future<TUIResult> setSelfInfo(String nickname, String avatar)
enableMultiDeviceAbility
This API is used to set whether to enable multi-device login for
TUICallEngine
(supported by the premium package).Future<TUIResult> enableMultiDeviceAbility(bool enable)
setVideoRenderParams
Set the rendering mode of video image.
Future<TUIResult> setVideoRenderParams(String userId, VideoRenderParams params)
Parameter | Type | Description |
userId | String | The target user ID. |
params | Video render parameters. |
setVideoEncoderParams
Set the encoding parameters of video encoder.
This setting can determine the quality of image viewed by remote users, which is also the image quality of on-cloud recording files.
Future<TUIResult> setVideoEncoderParams(VideoEncoderParams params)
Parameter | Type | Description |
params | Video encoding parameters |
queryRecentCalls
Query call record.
Future<void> queryRecentCalls(TUICallRecentCallsFilter filter, TUIValueCallback callback)
Parameter | Type | Description |
filter | Filter condition |
deleteRecordCalls
Delete call record.
Future<void> deleteRecordCalls(List<String> callIdList, TUIValueCallback callback)
Parameter | Type | Description |
callIdList | List<String> | List of IDs of records to be deleted. |
setBeautyLevel
Set beauty level, support turning off default beauty.
Future<TUIResult> setBeautyLevel(double level)
Parameter | Type | Description |
level | double | Beauty level, range 0.0 to 9.0. |
- TUICallEngine APIs
- Overview
- Details
- init
- unInit
- addObserver
- removeObserver
- call
- groupCall
- accept
- reject
- ignore
- hangup
- inviteUser
- joinInGroupCall
- switchCallMediaType
- startRemoteView
- stopRemoteview
- openCamera
- closeCamera
- switchCamera
- openMicrophone
- closeMicrophone
- selectAudioPlaybackDevice
- setSelfInfo
- enableMultiDeviceAbility
- setVideoRenderParams
- setVideoEncoderParams
- queryRecentCalls
- deleteRecordCalls
- setBeautyLevel