You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

225 lines
4.9 KiB

//
// JCMediaChannelParticipant.h
// JCSDK-OC
//
// Created by maikireton on 2017/8/11.
// Copyright © 2017年 juphoon. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "JCMediaChannelConstants.h"
/**
* @addtogroup
* @{
*/
/**
*
*/
@interface JCMediaChannelParticipantChangeParam : NSObject
/**
*
* - true:
* - false:
*/
@property (nonatomic) Boolean audio;
/**
*
* - true:
* - false:
*/
@property (nonatomic) Boolean video;
/**
*
* - true:
* - false:
*/
@property (nonatomic) Boolean pictureSize;
/**
*
* - true:
* - false:
*/
@property (nonatomic) Boolean type;
/**
*
* - true:
* - false:
*/
@property (nonatomic) Boolean netStatus;
/**
*
* - true:
* - false:
*/
@property (nonatomic) Boolean customState;
/**
*
* - true:
* - false:
*/
@property (nonatomic) Boolean customRole;
/**
*
* - true
* - false
*/
@property (nonatomic) Boolean audioSubscribe;
@end
/**
*
*/
@interface JCMediaChannelParticipant : NSObject
/**
*
*/
@property (nonatomic, readonly, copy) NSString* userId;
/**
*
*
* JCMediaDevice {@link startVideo:pictureSize: startVideo} 使
*/
@property (nonatomic, readonly, copy) NSString* renderId;
/**
*
*/
@property (nonatomic, readonly, copy) NSString* displayName;
/**
*
* - @ref JCMediaChannelVolumeStatusNone :
* - @ref JCMediaChannelVolumeStatusZero : 1
* - @ref JCMediaChannelVolumeStatusLow : 1 - 30
* - @ref JCMediaChannelVolumeStatusMid : 31 - 60
* - @ref JCMediaChannelVolumeStatusHigh : 61 -100
*/
@property (nonatomic, readonly) JCMediaChannelVolumeStatus volumeStatus;
/**
*
* - @ref JCMediaChannelNetStatusDisconnected :
* - @ref JCMediaChannelNetStatusVeryBad :
* - @ref JCMediaChannelNetStatusBad :
* - @ref JCMediaChannelNetStatusNormal :
* - @ref JCMediaChannelNetStatusGood :
* - @ref JCMediaChannelNetStatusVeryGood :
*/
@property (nonatomic, readonly) JCMediaChannelNetStatus netStatus;
/**
*
* - true:
* - false:
*/
@property (nonatomic, readonly) bool audio;
/**
*
* - true:
* - false:
*/
@property (nonatomic, readonly) bool video;
/**
* Sip接通
* - true:
* - false:
*/
@property (nonatomic, readonly) bool sipTalking;
/**
*
* - @ref JCMediaChannelParticipantTypeNormal :
* - @ref JCMediaChannelParticipantTypePstn : Pstn成员
* - @ref JCMediaChannelParticipantTypeWebrtc : Webrtc成员
* - @ref JCMediaChannelParticipantTypeIrc : IRC成员
*/
@property (nonatomic, readonly) JCMediaChannelParticipantType type;
/**
*
* - @ref JCMediaChannelPictureSizeNone :
* - @ref JCMediaChannelPictureSizeMin :
* - @ref JCMediaChannelPictureSizeSmall :
* - @ref JCMediaChannelPictureSizeLarge :
* - @ref JCMediaChannelPictureSizeMax :
*/
@property (nonatomic, readonly) JCMediaChannelPictureSize pictureSize;
/**
*
*/
@property (nonatomic, readonly) JCMediaChannelCustomRole customRole;
/**
*
*/
@property (nonatomic, readonly) JCMediaChannelCustomState customState;
/**
*
*/
@property (nonatomic, readonly) bool isCreator;
/**
*
* - true:
* - false:
*/
@property (nonatomic, readonly) bool isSelf;
/**
*
* - true
* - false
*/
@property (nonatomic, readonly) bool audioSubscribe;
/**
*
* @return JCMediaChannel
*/
-(NSString*)toString;
/**
*
*
* @param type
* - @ref JCMediaDeviceRenderFullScreen :
* - @ref JCMediaDeviceRenderFullContent :
* - @ref JCMediaDeviceRenderFullAuto :
* @param pictureSize
* - @ref JCMediaChannelPictureSizeNone :
* - @ref JCMediaChannelPictureSizeMin :
* - @ref JCMediaChannelPictureSizeSmall :
* - @ref JCMediaChannelPictureSizeLarge :
* - @ref JCMediaChannelPictureSizeMax :
* @return
*/
-(JCMediaDeviceVideoCanvas*)startVideo:(JCMediaDeviceRender)type pictureSize:(JCMediaChannelPictureSize)pictureSize;
/**
*
*/
-(void)stopVideo;
@end
/**
* @}
*/