通话服务
更新时间:2025-08-01 04:10:39

通话服务

通话账号参数

@interface YealinkSDKAccountCallInfoParams 

uri
@property (nonatomic, copy) NSString *appearanceUri

通话id
@property (nonatomic, copy) NSString *callId

本地tag
@property (nonatomic, copy) NSString *localTag

远端id
@property (nonatomic, copy) NSString *remoteTag

对端联系人subjectid
@property (nonatomic, copy) NSString *peerSubjectId

对端是否是本端的高管
@property (nonatomic, assign) BOOL peerIsSenior

通话翻转信息参数

@interface YealinkSDKCallFlipInfo 

用户id
@property (nonatomic, copy) NSString *subjectId

账号
@property (nonatomic, copy) NSString *number

名称
@property (nonatomic, copy) NSString *name

设备名称
@property (nonatomic, copy) NSString *deviceName

平台名称
@property (nonatomic, assign) YealinkSDKCallPlatformType platformType
  • 关联类型:

typedef NS_ENUM(NSInteger, YealinkSDKCallPlatformType) {
    /// 预留异常值
    YealinkSDKCallPlatformType_None = 0,
    /// 电脑
    YealinkSDKCallPlatformType_Pc = 1,
    /// 移动端
    YealinkSDKCallPlatformType_Mobile = 2,
    /// 手机
    YealinkSDKCallPlatformType_Phone = 3,
};

通话信息
@property (nonatomic, strong) YealinkSDKAccountCallInfoParams *callInfo
  • 关联类型:

@interface YealinkSDKAccountCallInfoParams : NSObject
/*!
 @brief uri
 */
@property (nonatomic, copy) NSString *appearanceUri;
/*!
 @brief 通话id
 */
@property (nonatomic, copy) NSString *callId;
/*!
 @brief 本地tag
 */
@property (nonatomic, copy) NSString *localTag;
/*!
 @brief 远端id
 */
@property (nonatomic, copy) NSString *remoteTag;
/*!
 @brief 对端联系人subjectid
 */
@property (nonatomic, copy) NSString *peerSubjectId;
/*!
 @brief 对端是否是本端的高管
 */
@property (nonatomic, assign) BOOL peerIsSenior;

@end

通话类型
@property (nonatomic, assign) YealinkSDKMediaCallType mediaCallType
  • 关联类型:

typedef NS_ENUM(NSInteger, YealinkSDKMediaCallType) {
    /// 音频通话
    YealinkSDKMediaCallType_Audio = 0,
    /// 视频通话
    YealinkSDKMediaCallType_AudioVideo = 1,
    /// 辅流
    YealinkSDKMediaCallType_Share = 2,
    /// 协作
    YealinkSDKMediaCallType_Cooperation = 3,
    /// BFCP
    YealinkSDKMediaCallType_BfcpVideo = 4
};

通话服务功能

@interface YealinkSDKCallService 

通话代理
@property (nonatomic, weak) id <YealinkSDKCallServiceDelegate> delegate

头像拦截代理
@property (nonatomic, weak) id <YealinkSDKHeadPortraitApiHandler> apiHander

通话底部菜单栏
  • 说明:不设置该代理时,会使用默认底部栏实现;如果实现了该代理没有实现,底部栏不显示
@property (nonatomic, weak) id <YealinkSDKCallBottomMenuUIDelegate> bottomMenuUIDelegate

通话更多菜单栏
  • 说明:不设置该代理时,会使用默认底部栏实现;如果实现了该代理没有实现,底部栏不显示
@property (nonatomic, weak) id <YealinkSDKCallMoreMenuUIDelegate> moreMenuUIDelegate

发起通话(默认为音频通话)
- (void)dial:(NSString *)number
  • PARAMETERS:
NAME NOTERIPTION
number 通话号码

发起视频通话
  • 说明:发起视频通话前提是要开启phoneVideoCallEnable配置
- (void)dialByVideo:(NSString *)number
  • PARAMETERS:
NAME NOTERIPTION
number 通话号码

挂断通话
- (void)hangUp

查询通话记录
  • 说明:async异步接口,接受YealinkSDKCallServiceDelegate回调:onCallHistoryListResult:result:
- (void)getCallHistoryList:(YealinkSDKCallHistoryType)type
  • PARAMETERS:
NAME NOTERIPTION
type 查询通话记录参数
  • 关联类型:

typedef NS_ENUM(NSUInteger, YealinkSDKCallHistoryType) {
    /// 全部通话记录
    YealinkSDKCallHistoryType_All,
    /// 未接通话记录
    YealinkSDKCallHistoryType_Miss,
};

查询通话记录详情
  • 说明:async异步接口,接受YealinkSDKCallServiceDelegate回调:onCallHistoryDetailResult:result:
- (void)getCallHistoryDetailByRecordId:(NSString *)recordId
  • PARAMETERS:
NAME NOTERIPTION
recordId 查询通话记录参数

删除通话记录
- (void)deleteCallHistory:(NSString *)recordId
  • PARAMETERS:
NAME NOTERIPTION
recordId 查询通话记录参数

清除通话记录
- (void)clearCallHistoryList

设置DND状态
- (void)setDndActivityTimeForMinutes:(NSInteger)minutes
  • PARAMETERS:
NAME NOTERIPTION
minutes 设置DND的时长

取消dnd状态
- (void)cancelCurrentDndActivity

保持
- (void)hold

转接
- (void)setPhoneTransferNumber:(NSString *)number
  • PARAMETERS:
NAME NOTERIPTION
number 转接目标方号码

发起通话翻转
- (void)makeCallFlip:(YealinkSDKCallFlipInfo *)callFlipInfo
  • PARAMETERS:
NAME NOTERIPTION
callFlipInfo 通话翻转信息
  • 关联类型:

@interface YealinkSDKCallFlipInfo : NSObject
/*!
 @brief 用户id
 */
@property (nonatomic, copy) NSString *subjectId;
/*!
 @brief 账号
 */
@property (nonatomic, copy) NSString *number;
/*!
 @brief 名称
 */
@property (nonatomic, copy) NSString *name;
/*!
 @brief 设备名称
 */
@property (nonatomic, copy) NSString *deviceName;
/*!
 @brief 平台名称
 @link YealinkSDKCallPlatformType
 */
@property (nonatomic, assign) YealinkSDKCallPlatformType platformType;
/*!
 @brief 通话信息
 @link YealinkSDKAccountCallInfoParams
 */
@property (nonatomic, strong) YealinkSDKAccountCallInfoParams *callInfo;
/*!
 @brief 通话类型
 @link YealinkSDKMediaCallType
 */
@property (nonatomic, assign) YealinkSDKMediaCallType mediaCallType;

@end

获取通话翻转信息列表
- (NSArray<YealinkSDKCallFlipInfo *> *)getCallFlipInfoList
  • RETURN VALUE:
TYPE NOTERIPTION
NSArray<YealinkSDKCallFlipInfo*> 通话翻转信息列表

接起通话
- (void)answerCall:(BOOL)enableVideo
  • PARAMETERS:
NAME NOTERIPTION
enableVideo 是否为视频接起

获取是否达到最大通话数
- (BOOL)isInMaxCallsCount
  • RETURN VALUE:
TYPE NOTERIPTION
BOOL 是否达到最大通话数

显示来电建立界面
  • 说明:当隐藏来电界面时,在收到onConnected后调用,用于显示通话建立界面
- (void)showPhoneCallWindow

本页目录