p2p通话
方法总览
方法名称 | 行为 | 含义描述 |
---|---|---|
OnCallFlipInfoUpdateEvent | 通知 | 通话翻转信息更新通知 |
OnPhoneCallStatusChanged | 通知 | p2p通话状态变化时的通知;ePhoneCallState: 变更后的p2p通话状态 |
OnPhoneCallFinishReason | 通知 | p2p通话结束的通知;ePhoneFinishReason: p2p通话结束的原因码;nCode: 当原因码为其他错误时,根据nCode查询更详细的p2p通话结束原因 |
GetCallFlipInfoList | 调用 | 获取通话翻转信息列表 |
MakeCallFlip | 调用 | 进行通话翻转 |
SetAutoRejectPhoneCalls | 调用 | 设置nDurationSeconds秒内自动拒接通话;nDurationSeconds: 持续时间,不能为空 |
StartPhoneCall | 调用 | 创建一个p2p通话;strPhoneNumber: 对端号码,不能为空 |
StartPhoneVideoCall | 调用 | 创建一个p2p视频通话;strPhoneNumber: 对端号码,不能为空 |
AcceptIncomingCall | 调用 | 接起来电 |
RejectIncomingCall | 调用 | 拒接来电(通话还未建立时) |
EndPhoneCall | 调用 | 结束通话(仅在通话建立后的通话才可以挂断) |
GetPhoneCallStatus | 调用 | 获取p2p通话状态,有通话,不管通话是否建立,有来电,去电都是返回PHONE_STATE_TALKING,没有通话是返回PHONE_STATE_NONE |
EnableSupportMultipleCalls | 调用 | 是否支持两路通话,不支持的话是单路通话;bEnable: 是否支持两路通话 |
EnableHideVideoCallSmallView | 调用 | 是否隐藏视频通话的小图;bEnable: 是否隐藏 |
IsSupportMultipleCallsEnable | 调用 | 获取是否支持两路通话 |
EnableHidePhoneIncomingDialog | 调用 | 是否隐藏视频通话的小图;bEnable: 是否隐藏 |
IsHidePhoneIncomingDialog | 调用 | 获取是否隐藏通话来电界面 |
IsUsingPhone | 调用 | 判断是否有使用Phone,是JudgeIsInOutGoingStatus,JudgeIsInComingStatus,JudgeIsInCallStatus 三种情况的总和 |
IsInOutGoingStatus | 调用 | 判断是否处于去电状态 |
IsInComingStatus | 调用 | 判断是否处于来电状态 |
IsInCallStatus | 调用 | 判断是否处于通话状态 |
EnableSupportVideoCall | 调用 | 是否支持视频通话,bEnable为true是支持为false是不支持 |
IsSupportVideoCallEnable | 调用 | 是否支持视频通话 |
EnableShowForegroundPhoneDialog | 调用 | 展开通话窗口 |
HasReachedMaxPhoneCount | 调用 | 是否到达通话上限 |
OnCallFlipInfoUpdateEvent
通知描述
通话翻转信息更新通知
通知定义
void OnCallFlipInfoUpdateEvent();
参数描述
无参数。
返回值描述
无返回值。
OnPhoneCallStatusChanged
通知描述
p2p通话状态变化时的通知
通知定义
void OnPhoneCallStatusChanged(PHONE_CALL_STATE ePhoneCallState);
参数描述
参数 | 类型 | 含义 |
---|---|---|
ePhoneCallState | PHONE_CALL_STATE | 变更后的p2p通话状态 |
表示p2p通话状态的枚举
enum PHONE_CALL_STATE {
PHONE_STATE_NONE = 0,/** 没有状态 */
PHONE_STATE_INCOMING = 1,/** 来电响铃 */
PHONE_STATE_ANSWERING = 2,/** 通话应答中 */
PHONE_STATE_CONNECTING = 3,/** 去电通话连接中 */
PHONE_STATE_RINGBACK = 4,/** 去电响铃通知 */
PHONE_STATE_TALKING = 5,/** 通话中 */
PHONE_STATE_HOLD = 6,/** 通话保持 */
PHONE_STATE_UNHOLD = 7,/** 解除通话保持 */
PHONE_STATE_HELD = 8,/** 对端通话保持 */
PHONE_STATE_UNHELD = 9,/** 对端解除通话保持 */
}
返回值描述
无返回值。
OnPhoneCallFinishReason
通知描述
p2p通话结束的通知
通知定义
void OnPhoneCallFinishReason(PHONE_FINISH_REASON ePhoneFinishReason, int nCode);
参数描述
参数 | 类型 | 含义 |
---|---|---|
ePhoneFinishReason | PHONE_FINISH_REASON | p2p通话结束的原因码 |
nCode | int | 当原因码为其他错误时,根据nCode查询更详细的p2p通话结束原因 |
通话结束原因
enum PHONE_FINISH_REASON {
PHONE_FINISH_REASON_FAILED_TO_ESTABILISH_THE_CALL_PHONE_FINISH_REASONY_AGAIN_LATER = 0,/** 建立通话失败,清稍后再拨 */
PHONE_FINISH_REASON_THE_CALL_HAS_BEEN_PICKED_UP_BY_ANOTHER_END = 1,/** 通话已由他端接起 */
PHONE_FINISH_REASON_THE_CALL_WAS_HANDLED_ON_ANOTHER_DEVICE = 2,/** 通话已在其它终端处理,通话结束 */
PHONE_FINISH_REASON_REMOTE_BUSY_PHONE_FINISH_REASONY_AGAIN_LATER = 3,/** 对方正忙,请稍后再拨 */
PHONE_FINISH_REASON_THE_OTHER_PARTY_HANGS_UP_AND_THE_CALL_ENDS = 4,/** 对方挂断,通话结束 */
PHONE_FINISH_REASON_REQUEST_TIMEOUT_PHONE_FINISH_REASONY_AGAIN = 5,/** 请求超时,请稍候重试 */
PHONE_FINISH_REASON_CALL_END_ALREADY_A_ROUTE_EXISTS = 6,/** 当前已有一路通话呼出失败 */
PHONE_FINISH_REASON_UPGRADE_MEETING_FAILED = 7,/** 建升级会议失败 */
PHONE_FINISH_REASON_NETWORK_DOWN_AND_PHONE_FINISH_REASONY_LATER = 8,/** 网络中断,请稍后再试 */
PHONE_FINISH_REASON_THE_PHONE_LOSESS_CONNECTION_AND_THE_CALL_END = 9,/** 话机失去连接,通话结束 */
PHONE_FINISH_REASON_THE_NUMBER_DOES_NOT_EXIST_THE_PARKING_CANNOT_BE_REPHONE_FINISH_REASONIEVED = 10,/** 呼叫被禁止,请联系管理员 */
PHONE_FINISH_REASON_CALL_BANNED_PLEASE_CONTACT_ADMINISPHONE_FINISH_REASONATOR = 11,/** 呼叫被禁止,请联系管理员 */
PHONE_FINISH_REASON_THE_NETWORK_CONNECTION_IS_ABNORMAL_THE_CALL_HAS_ENDED = 12,/** 网络连接异常,通话已结束 */
PHONE_FINISH_REASON_NETWORK_DOWN_AND_TRY_LATER = 13,/** 网络中断,请稍后再试 */
PHONE_FINISH_REASON_CALL_PARKED_SUCCESSFULLY = 14,/** 通话停泊成功 */
PHONE_FINISH_REASON_OTHER = 15,/** < 其他错误,详见错误码 */
}
返回值描述
无返回值。
GetCallFlipInfoList
接口描述
获取通话翻转信息列表
接口定义
CallFlipInfoList GetCallFlipInfoList();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
CallFlipInfoList | 通话翻转信息列表 |
CallFlipInfoList 通话翻转信息列表
struct CallFlipInfoList {
std::vector<CallFlipInfo> vecCallFlipInfo;/** < 通话翻转信息列表 */
}
MakeCallFlip
接口描述
进行通话翻转
接口定义
YLSDKERR MakeCallFlip(CallFlipInfo callFlipInfo);
参数描述
参数 | 类型 | 含义 |
---|---|---|
callFlipInfo | CallFlipInfo | 无 |
CallFlipInfo 通话翻转信息
struct CallFlipInfo {
std::string strSubjectId;/** < id */
std::string strNumber;/** < 账号 */
std::string strName;/** < 名称 */
std::string strDeviceName;/** < 设备名称 */
PlatformType platformType;/** < 本端所在平台类型 */
PlatformType peerPlatformType;/** < 对端通话所在平台类型 */
AccountCallInfoParams callInfo;/** < 通话信息 */
MediaCallType mediaCallType;/** < 通话类型 */
}
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
SetAutoRejectPhoneCalls
接口描述
设置nDurationSeconds秒内自动拒接通话
接口定义
YLSDKERR SetAutoRejectPhoneCalls(int nDurationSeconds);
参数描述
参数 | 类型 | 含义 |
---|---|---|
nDurationSeconds | int | 持续时间,不能为空 |
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
StartPhoneCall
接口描述
创建一个p2p通话
接口定义
YLSDKERR StartPhoneCall(string strPhoneNumber);
参数描述
参数 | 类型 | 含义 |
---|---|---|
strPhoneNumber | string | 对端号码,不能为空 |
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
StartPhoneVideoCall
接口描述
创建一个p2p视频通话
接口定义
YLSDKERR StartPhoneVideoCall(string strPhoneNumber);
参数描述
参数 | 类型 | 含义 |
---|---|---|
strPhoneNumber | string | 对端号码,不能为空 |
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
AcceptIncomingCall
接口描述
接起来电
接口定义
YLSDKERR AcceptIncomingCall(bool bIsVideoAnswer);
参数描述
参数 | 类型 | 含义 |
---|---|---|
bIsVideoAnswer | bool | 无 |
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
RejectIncomingCall
接口描述
拒接来电(通话还未建立时)
接口定义
YLSDKERR RejectIncomingCall();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
EndPhoneCall
接口描述
结束通话(仅在通话建立后的通话才可以挂断)
接口定义
YLSDKERR EndPhoneCall();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
GetPhoneCallStatus
接口描述
获取p2p通话状态,有通话,不管通话是否建立,有来电,去电都是返回PHONE_STATE_TALKING,没有通话是返回PHONE_STATE_NONE
接口定义
PHONE_CALL_STATE GetPhoneCallStatus();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
PHONE_CALL_STATE | 表示p2p通话状态的枚举 |
PHONE_CALL_STATE 表示p2p通话状态的枚举
enum PHONE_CALL_STATE {
PHONE_STATE_NONE = 0,/** 没有状态 */
PHONE_STATE_INCOMING = 1,/** 来电响铃 */
PHONE_STATE_ANSWERING = 2,/** 通话应答中 */
PHONE_STATE_CONNECTING = 3,/** 去电通话连接中 */
PHONE_STATE_RINGBACK = 4,/** 去电响铃通知 */
PHONE_STATE_TALKING = 5,/** 通话中 */
PHONE_STATE_HOLD = 6,/** 通话保持 */
PHONE_STATE_UNHOLD = 7,/** 解除通话保持 */
PHONE_STATE_HELD = 8,/** 对端通话保持 */
PHONE_STATE_UNHELD = 9,/** 对端解除通话保持 */
}
EnableSupportMultipleCalls
接口描述
是否支持两路通话,不支持的话是单路通话
接口定义
YLSDKERR EnableSupportMultipleCalls(bool bEnable);
参数描述
参数 | 类型 | 含义 |
---|---|---|
bEnable | bool | 是否支持两路通话 |
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
EnableHideVideoCallSmallView
接口描述
是否隐藏视频通话的小图
接口定义
YLSDKERR EnableHideVideoCallSmallView(bool bEnable);
参数描述
参数 | 类型 | 含义 |
---|---|---|
bEnable | bool | 是否隐藏 |
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
IsSupportMultipleCallsEnable
接口描述
获取是否支持两路通话
接口定义
bool IsSupportMultipleCallsEnable();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
bool | 无 |
EnableHidePhoneIncomingDialog
接口描述
是否隐藏视频通话的小图
接口定义
YLSDKERR EnableHidePhoneIncomingDialog(bool bEnable);
参数描述
参数 | 类型 | 含义 |
---|---|---|
bEnable | bool | 是否隐藏 |
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
IsHidePhoneIncomingDialog
接口描述
获取是否隐藏通话来电界面
接口定义
bool IsHidePhoneIncomingDialog();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
bool | 无 |
IsUsingPhone
接口描述
判断是否有使用Phone,是JudgeIsInOutGoingStatus,JudgeIsInComingStatus,JudgeIsInCallStatus 三种情况的总和
接口定义
bool IsUsingPhone();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
bool | 无 |
IsInOutGoingStatus
接口描述
判断是否处于去电状态
接口定义
bool IsInOutGoingStatus();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
bool | 无 |
IsInComingStatus
接口描述
判断是否处于来电状态
接口定义
bool IsInComingStatus();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
bool | 无 |
IsInCallStatus
接口描述
判断是否处于通话状态
接口定义
bool IsInCallStatus();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
bool | 无 |
EnableSupportVideoCall
接口描述
是否支持视频通话,bEnable为true是支持为false是不支持
接口定义
YLSDKERR EnableSupportVideoCall(bool bEnable);
参数描述
参数 | 类型 | 含义 |
---|---|---|
bEnable | bool | 无 |
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
IsSupportVideoCallEnable
接口描述
是否支持视频通话
接口定义
bool IsSupportVideoCallEnable();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
bool | 无 |
EnableShowForegroundPhoneDialog
接口描述
展开通话窗口
接口定义
YLSDKERR EnableShowForegroundPhoneDialog();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
YLSDKERR | 错误码,详情见错误码 YLSDKERR 的定义 |
HasReachedMaxPhoneCount
接口描述
是否到达通话上限
接口定义
bool HasReachedMaxPhoneCount();
参数描述
无参数。
返回值描述
类型 | 含义 |
---|---|
bool | 无 |