TUICallEngine은 UI 요소를 포함하지 않는 오디오/비디오 통화 컴포넌트입니다. TUICallKit이 요구 사항을 충족하지 않는 경우 TUICallEngine의 API를 사용하여 프로젝트를 사용자 정의할 수 있습니다.
API | 설명 |
---|---|
createInstance | TUICallEngine 인스턴스 생성(싱글톤 모드) |
destroyInstance | TUICallEngine 인스턴스 종료(싱글톤 모드) |
init | 기본 음성/영상 통화 기능을 인증함 |
addObserver | 이벤트 리스너 등록 |
removeObserver | 이벤트 리스너 등록 취소 |
call | 1v1 통화 걸기 |
groupCall | 그룹 통화 걸기 |
accept | 통화 수락 |
reject | 통화 거절 |
hangup | 통화 종료 |
ignore | 통화 무시 |
inviteUser | 현재 그룹 통화에 사용자 초대 |
joinInGroupCall | 그룹 통화에 참여 |
switchCallMediaType | 통화 유형 변경. 예를 들어, 화상 통화에서 음성 통화로 전환. |
startRemoteView | 원격 사용자의 비디오 스트림 구독 |
stopRemoteView | 원격 사용자의 비디오 스트림 구독 취소 |
openCamera | 카메라 켜기 |
closeCamera | 카메라 끄기 |
switchCamera | 전면 및 후면 카메라 전환 |
openMicrophone | 마이크 켜기 |
closeMicrophone | 마이크 끄기 |
selectAudioPlaybackDevice | 오디오 재생 장치(핸드셋 또는 스피커) 선택 |
setSelfInfo | 대화명 및 프로필 사진 설정 |
enableMultiDeviceAbility | TUICallEngine에 대한 다중 장치 로그인 활성화 여부 설정(프리미엄 패키지에서 지원) |
이 API는 TUICallEngine 싱글톤을 생성하는 데 사용됩니다.
- (TUICallEngine *)createInstance;
이 API는 TUICallEngine 싱글톤을 종료하는 데 사용됩니다.
- (void)destroyInstance;
이 API는 TUICallEngine을 초기화하는 데 사용됩니다. 다른 API를 호출하기 전에 통화 서비스를 인증하고 다른 필수 작업을 수행하기 위해 호출합니다.
- (void)init:(NSString *)sdkAppID userId:(NSString *)userId userSig:(NSString *)userSig succ:(TUICallSucc)succ fail:(TUICallFail)fail;
매개변수는 다음과 같습니다.
매개변수 | 유형 | 의미 |
---|---|---|
sdkAppID | int | TRTC 콘솔 > 애플리케이션 관리 > 애플리케이션 정보에서 SDKAppID 확인 |
userId | String | 현재 사용자의 ID, 문자열 유형은 영어 알파벳(a-z, A-Z), 숫자(0-9), 하이픈(-), 언더바(_)만 허용 |
userSig | String | Tencent Cloud의 독점 보안 서명. 계산 및 사용 방법은 UserSig 참고 |
callback | TUIDefine.Callback | 초기화 콜백. onSuccess 는 초기화가 성공했음을 표시 |
이 API는 'TUICallObserver' 이벤트를 수신할 이벤트 리스너를 등록하는 데 사용됩니다.
- (void)addObserver:(id<TUICallObserver>)observer;
이 API는 이벤트 리스너를 등록 해제하는 데 사용됩니다.
- (void)removeObserver:(id<TUICallObserver>)observer;
이 API는 (1v1) 통화를 수행하는 데 사용됩니다.
- (void)call:(TUIRoomId *)roomId userId:(NSString *)userId callMediaType:(TUICallMediaType)callMediaType params:(TUICallParams *)params succ:(TUICallSucc)succ fail:(TUICallFail)fail
매개변수는 다음과 같습니다.
매개변수 | 유형 | 의미 |
---|---|---|
roomId | TUIRoomId | 방 ID. 현재는 숫자로 된 방 ID만 사용할 수 있으며, 문자열 형식의 방 ID는 향후 지원될 예정임 |
userId | NSString | 대상 userId |
callMediaType | TUICallMediaType | 비디오 또는 오디오일 수 있는 통화 유형 |
params | TUICallParams | 추가 매개변수. 예를 들어 오프라인 알림을 사용자 정의하는 데 사용할 수 있음 |
이 API는 그룹 통화를 하는 데 사용됩니다. 그룹 통화를 하기 전에 IM 그룹을 생성해야 합니다.
- (void)groupCall:(TUIRoomId *)roomId groupId:(NSString *)groupId userIdList:(NSArray <NSString *> *)userIdList callMediaType:(TUICallMediaType)callMediaType params:(TUICallParams *)params succ:(TUICallSucc)succ fail:(TUICallFail)fail
매개변수 | 유형 | 의미 |
---|---|---|
roomId | TUIRoomId | 방 ID. 현재는 숫자로 된 방 ID만 사용할 수 있으며, 문자열 형식의 방 ID는 향후 지원될 예정임 |
groupId | NSString | 그룹 ID |
userIdList | NSArray | 대상 userId |
callMediaType | TUICallMediaType | 비디오 또는 오디오일 수 있는 통화 유형 |
params | TUICallParams | 추가 매개변수. 예를 들어 오프라인 알림을 사용자 지정하는 데 사용할 수 있음 |
이 API는 통화를 수락하는 데 사용됩니다. 'onCallReceived()' 콜백을 수신한 후 이 API를 호출하여 통화를 수락할 수 있습니다.
- (void)accept:(TUICallSucc)succ fail:(TUICallFail)fail;
이 API는 통화를 거절하는 데 사용됩니다. 'onCallReceived()' 콜백을 수신한 후 이 API를 호출하여 통화를 거절할 수 있습니다.
- (void)reject:(TUICallSucc)succ fail:(TUICallFail)fail;
이 API는 통화를 무시하는 데 사용됩니다. 'onCallReceived()'를 수신한 후 이 API를 호출하여 통화를 무시할 수 있습니다. 호출자는 'onUserLineBusy' 콜백을 수신합니다. 프로젝트에 라이브 스트리밍 또는 회의가 포함된 경우 이 API를 사용하여 ‘회의 중’ 또는 ‘방송 중’ 기능을 구현할 수도 있습니다.
- (void)ignore:(TUICallSucc)succ fail:(TUICallFail)fail;
이 API는 통화를 종료하는 데 사용됩니다.
- (void)hangup:(TUICallSucc)succ fail:(TUICallFail)fail;
이 API는 그룹 통화 참가자가 사용자를 통화에 초대하는 데 사용합니다.
- (void)inviteUser:(NSArray<NSString *> *)userIdList params:(TUICallParams *)params succ:(void(^)(NSArray <NSString *> *userIdList))succ fail:(TUICallFail)fail
매개변수 | 유형 | 의미 |
---|---|---|
userIdList | NSArray | 대상 userId |
params | TUICallParams | 추가 매개변수. 예를 들어 오프라인 알림을 사용자 지정하는 데 사용할 수 있음. |
이 API는 그룹 구성원이 그룹 통화에 참여하는 데 사용됩니다.
- (void)joinInGroupCall:(TUIRoomId *)roomId groupId:(NSString *)groupId callMediaType:(TUICallMediaType)callMediaType succ:(TUICallSucc)succ fail:(TUICallFail)fail;
매개변수 | 유형 | 의미 |
---|---|---|
roomId | TUIRoomId | 방 ID. 현재는 숫자로 된 방 ID만 사용할 수 있으며, 문자열 형식의 방 ID는 향후 지원될 예정임 |
groupId | NSString | 그룹 ID |
callMediaType | TUICallMediaType | 비디오 또는 오디오일 수 있는 통화 유형 |
이 API는 그룹 구성원이 그룹 통화에 참여하는 데 사용합니다.
- (void)switchCallMediaType:(TUICallMediaType)newType;
매개변수 | 유형 | 의미 |
---|---|---|
callMediaType | TUICallMediaType | 비디오 또는 오디오일 수 있는 통화 유형 |
이 API는 원격 비디오를 표시하도록 View 객체를 설정하는 데 사용됩니다.
- (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;
매개변수 | 유형 | 의미 |
---|---|---|
userId | NSString | 대상 userId |
videoView | TUIVideoView | 렌더링할 뷰 |
이 API는 원격 사용자의 비디오 스트림 구독을 취소하는 데 사용됩니다.
- (void)stopRemoteView:(NSString *)userId;
매개변수 | 유형 | 의미 |
---|---|---|
userId | NSString | 대상 userId |
카메라 활성화
- (void)openCamera:(TUICallCamera)camera videoView:(TUIVideoView *)videoView succ:(TUICallSucc)succ fail:(TUICallFail)fail;
매개변수 | 유형 | 의미 |
---|---|---|
camera | TUICallCamera | 전면 또는 후면 카메라 사용 여부 |
videoView | TUIVideoView | 렌더링할 뷰 |
이 API는 카메라를 끄는 데 사용됩니다.
- (void)closeCamera;
이 API는 전면 및 후면 카메라 간에 전환하는 데 사용됩니다.
- (void)switchCamera:(TUICallCamera)camera;
매개변수 | 유형 | 의미 |
---|---|---|
camera | TUICallCamera | 전면 또는 후면 카메라 사용 여부 |
이 API는 마이크를 켜는 데 사용됩니다.
- (void)openMicrophone:(TUICallSucc)succ fail:(TUICallFail)fail;
이 API는 마이크를 끄는 데 사용됩니다.
- (void)closeMicrophone;
이 API는 오디오 재생 장치(리시버 또는 스피커)를 선택하는 데 사용됩니다. 통화 시나리오에서 이 API를 사용하여 핸즈프리 모드를 켜고 끌 수 있습니다.
- (void)selectAudioPlaybackDevice:(TUIAudioPlaybackDevice)device;
매개변수 | 유형 | 의미 |
---|---|---|
device | TUIAudioPlaybackDevice | 스피커 또는 핸드셋 |
이 API는 대화명과 프로필 사진을 설정하는 데 사용됩니다. 대화명은 500바이트를 초과할 수 없으며 프로필 사진은 URL로 지정됩니다.
- (void)setSelfInfo:(NSString * _Nullable)nickName avatar:(NSString * _Nullable)avatar succ:(TUICallSucc)succ fail:(TUICallFail)fail;
이 API는 TUICallEngine
에 대한 다중 장치 로그인 활성화 여부를 설정하는 데 사용됩니다(프리미엄 패키지에서 지원).
- (void)enableMultiDeviceAbility:(BOOL)enable succ:(TUICallSucc)succ fail:(TUICallFail)fail;
문제 해결에 도움이 되었나요?