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 |
Creates a TUICallEngine instance (singleton mode). | |
Terminates a TUICallEngine instance (singleton mode). | |
Authenticates the basic audio/video call capabilities. | |
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. | |
Set the rendering mode of video image. | |
Set the encoding parameters of video encoder. | |
Advanced features. | |
Set beauty level, support turning off default beauty. |
Details
createInstance
This API is used to create a
TUICallEngine
singleton.- (TUICallEngine *)createInstance;
destroyInstance
This API is used to terminate a
TUICallEngine
singleton.- (void)destroyInstance;
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.- (void)init:(NSString *)sdkAppID userId:(NSString *)userId userSig:(NSString *)userSig succ:(TUICallSucc)succ fail:(TUICallFail)fail;
Parameter | Type | Description |
sdkAppID | NSString | You can view SDKAppID in Application Management > Application Info of the TRTC console. |
userId | NSString | The ID of the current user, which is a string that can contain only letters (a-z and A-Z), digits (0-9), hyphens (-), and underscores (_). |
userSig | NSString |
addObserver
This API is used to register an event listener to listen for
TUICallObserver
events.- (void)addObserver:(id<TUICallObserver>)observer;
removeObserver
This API is used to unregister an event listener.
- (void)removeObserver:(id<TUICallObserver>)observer;
call
This API is used to make a (one-to-one) call.
- (void)call:(NSString *)userId callMediaType:(TUICallMediaType)callMediaType params:(TUICallParams *)params succ:(TUICallSucc)succ fail:(TUICallFail)fail
Parameter | Type | Description |
userId | NSString | The target user ID. |
callMediaType | 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.
- (void)groupCall:(NSString *)groupId userIdList:(NSArray <NSString *> *)userIdList callMediaType:(TUICallMediaType)callMediaType params:(TUICallParams *)params succ:(TUICallSucc)succ fail:(TUICallFail)fail
Parameter | Type | Description |
groupId | NSString | The group ID. |
userIdList | NSArray | The target user IDs. |
callMediaType | 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.- (void)accept:(TUICallSucc)succ fail:(TUICallFail)fail;
reject
This API is used to reject a call. After receiving the
onCallReceived()
callback, you can call this API to reject the call.- (void)reject:(TUICallSucc)succ fail:(TUICallFail)fail;
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.
- (void)ignore:(TUICallSucc)succ fail:(TUICallFail)fail;
hangup
This API is used to end a call.
- (void)hangup:(TUICallSucc)succ fail:(TUICallFail)fail;
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.
- (void)inviteUser:(NSArray<NSString *> *)userIdList params:(TUICallParams *)params succ:(void(^)(NSArray <NSString *> *userIdList))succ fail:(TUICallFail)fail
Parameter | Type | Description |
userIdList | NSArray | The target user IDs. |
params | An additional parameter. such as roomID, call timeout, offline push info, etc |
Notice:
In this case, the custom RoomId is invalid. The SDK will invite others to join the room where the inviter is currently located.
joinInGroupCall
This API is used to join a group call.
This API is called by a group member to join the group’s call.
- (void)joinInGroupCall:(TUIRoomId *)roomId groupId:(NSString *)groupId callMediaType:(TUICallMediaType)callMediaType succ:(TUICallSucc)succ fail:(TUICallFail)fail;
Parameter | Type | Description |
roomId | The room ID. | |
groupId | NSString | The group ID. |
callMediaType | The call type, which can be video or audio. |
switchCallMediaType
This API is used to change the call type.
- (void)switchCallMediaType:(TUICallMediaType)newType;
Parameter | Type | Description |
callMediaType | The call type, which can be video or audio. |
startRemoteView
This API is used to set the view object to display a remote video.
- (void)startRemoteView:(NSString *)userId videoView:(TUIVideoView *)videoView onPlaying:(void(^)(NSString *userId))onPlaying onLoading:(void(^)(NSString *userId))onLoading onError:(void(^)(NSString *userId, int code, NSString *errMsg))onError;
Parameter | Type | Description |
userId | NSString | The target user ID. |
videoView | TUIVideoView | The view to be rendered. |
stopRemoteView
This API is used to unsubscribe from the video stream of a remote user.
- (void)stopRemoteView:(NSString *)userId;
Parameter | Type | Description |
userId | NSString | The target user ID. |
openCamera
This API is used to turn the camera on.
- (void)openCamera:(TUICamera)camera videoView:(TUIVideoView *)videoView succ:(TUICallSucc)succ fail:(TUICallFail)fail;
Parameter | Type | Description |
camera | The front or rear camera. | |
videoView | TUIVideoView | The view to be rendered. |
closeCamera
This API is used to turn the camera off.
- (void)closeCamera;
switchCamera
This API is used to switch between the front and rear cameras.
- (void)switchCamera:(TUICamera)camera;
Parameter | Type | Description |
camera | The front or rear camera. |
openMicrophone
This API is used to turn the mic on.
- (void)openMicrophone:(TUICallSucc)succ fail:(TUICallFail)fail;
closeMicrophone
This API is used to turn the mic off.
- (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.
- (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.
- (void)setSelfInfo:(NSString * _Nullable)nickName avatar:(NSString * _Nullable)avatar succ:(TUICallSucc)succ fail:(TUICallFail)fail;
enableMultiDeviceAbility
This API is used to set whether to enable multi-device login for
TUICallEngine
(supported by the Group Call package).- (void)enableMultiDeviceAbility:(BOOL)enable succ:(TUICallSucc)succ fail:(TUICallFail)fail;
setVideoRenderParams
Set the rendering mode of video image.
- (void)setVideoRenderParams:(NSString *)userId params:(TUIVideoRenderParams *)params succ:(TUICallSucc)succ fail:(TUICallFail)fail;
Parameter | Type | Description |
userId | NSString | 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.
- (void)setVideoEncoderParams:(TUIVideoEncoderParams *)params succ:(TUICallSucc)succ fail:(TUICallFail)fail;
Parameter | Type | Description |
params | Video encoding parameters |
getTRTCCloudInstance
Advanced features.
- (TRTCCloud *)getTRTCCloudInstance;
setBeautyLevel
Set beauty level, support turning off default beauty.
- (void)setBeautyLevel:(CGFloat)level succ:(TUICallSucc)succ fail:(TUICallFail)fail;
Parameter | Type | Description |
level | CGFloat | Beauty level,range: 0 - 9;
0 means turning off the effect, 9 means the most obvious effect. |
- TUICallEngine APIs
- Overview
- Details
- createInstance
- destroyInstance
- Init
- addObserver
- removeObserver
- call
- groupCall
- accept
- reject
- ignore
- hangup
- inviteUser
- joinInGroupCall
- switchCallMediaType
- startRemoteView
- stopRemoteView
- openCamera
- closeCamera
- switchCamera
- openMicrophone
- closeMicrophone
- selectAudioPlaybackDevice
- setSelfInfo
- enableMultiDeviceAbility
- setVideoRenderParams
- setVideoEncoderParams
- getTRTCCloudInstance
- setBeautyLevel