p2p通话
更新时间:2025-04-16 08:45:18

p2p通话

方法总览

方法名称 行为 含义描述
OnPhoneCallStatusChanged 通知 p2p通话状态变化时的通知
OnPhoneCallFinishReason 通知 p2p通话结束的通知;ePhoneFinishReason: p2p通话结束的原因码;nCode: 当原因码为其他错误时,根据nCode查询更详细的p2p通话结束原因;nDurationTime: 通话时长,单位秒
StartPhoneCall 调用 创建一个p2p通话;strPhoneNumber: 对端号码,不能为空
ShowIncomingWindow 调用 是否显示来电接起弹框(不显示的话就需要自行监听通知和控制接起
AcceptIncomingCall 调用 接起来电
RejectIncomingCall 调用 拒接来电(通话还未建立时
EndPhoneCall 调用 结束通话(仅在通话建立后
GetPhoneCallStatus 调用 获取p2p通话状态
EnableShowForegroundPhoneDialog 调用 展开通话窗口
GetPhoneDuration 调用 获取通话的时长,单位秒;

OnPhoneCallStatusChanged

通知描述

p2p通话状态变化时的通知

通知定义

void OnPhoneCallStatusChanged(PHONE_CALL_STATE ePhoneCallState);

参数描述

参数 类型 含义
ePhoneCallState 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,/**  */
}

返回值描述

无返回值。

OnPhoneCallFinishReason

通知描述

p2p通话结束的通知

通知定义

void OnPhoneCallFinishReason(PHONE_FINISH_REASON ePhoneFinishReason, int nCode, int64_t nDurationTime);

参数描述

参数 类型 含义
ePhoneFinishReason PHONE_FINISH_REASON p2p通话结束的原因码
nCode int 当原因码为其他错误时,根据nCode查询更详细的p2p通话结束原因
nDurationTime int64_t 通话时长,单位秒

通话结束原因

enum PHONE_FINISH_REASON {
    PHONE_FINISH_REASON_FINISH = 0,/** < 正常结束 */
    PHONE_FINISH_REASON_REMOTE_HANGUP = 1,/** < 对方挂断 */
    PHONE_FINISH_REASON_REMOTE_BUSY = 2,/** < 对方忙,请稍后再试 */
    PHONE_FINISH_REASON_TRY_AGAIN = 3,/** < 操作异常,请重试 */
    PHONE_FINISH_REASON_TIME_OUT = 4,/** < 超时结束 */
    PHONE_FINISH_REASON_ALREDY_A_ROUTE = 5,/** < 已有一路通话 */
    PHONE_FINISH_REASON_OTHER_DEVICE_ACCEPT = 6,/** < 来电被其他终端接起 */
    PHONE_FINISH_REASON_NUMBER_NOT_EXIST = 7,/** < 对端号码不存在 */
    PHONE_FINISH_REASON_CALL_CANCEL_BY_LOCAL = 8,/** < 本地用户取消通话 */
    PHONE_FINISH_REASON_CALL_END_BY_LOCAL = 9,/** < 本地用户挂断通话 */
    PHONE_FINISH_REASON_OTHER = 10,/** < 其他错误,详见错误码 */
}

返回值描述

无返回值。

StartPhoneCall

接口描述

创建一个p2p通话

接口定义

YLSDKERR StartPhoneCall(string strPhoneNumber);

参数描述

参数 类型 含义
strPhoneNumber string 对端号码,不能为空

返回值描述

类型 含义
YLSDKERR 错误码,详情见错误码 YLSDKERR 的定义

ShowIncomingWindow

接口描述

是否显示来电接起弹框(不显示的话就需要自行监听通知和控制接起

接口定义

YLSDKERR ShowIncomingWindow(bool bEnable);

参数描述

参数 类型 含义
bEnable bool

返回值描述

类型 含义
YLSDKERR 错误码,详情见错误码 YLSDKERR 的定义

AcceptIncomingCall

接口描述

接起来电

接口定义

YLSDKERR AcceptIncomingCall();

参数描述

无参数。

返回值描述

类型 含义
YLSDKERR 错误码,详情见错误码 YLSDKERR 的定义

RejectIncomingCall

接口描述

拒接来电(通话还未建立时

接口定义

YLSDKERR RejectIncomingCall();

参数描述

无参数。

返回值描述

类型 含义
YLSDKERR 错误码,详情见错误码 YLSDKERR 的定义

EndPhoneCall

接口描述

结束通话(仅在通话建立后

接口定义

YLSDKERR EndPhoneCall();

参数描述

无参数。

返回值描述

类型 含义
YLSDKERR 错误码,详情见错误码 YLSDKERR 的定义

GetPhoneCallStatus

接口描述

获取p2p通话状态

接口定义

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,/**  */
}

EnableShowForegroundPhoneDialog

接口描述

展开通话窗口

接口定义

YLSDKERR EnableShowForegroundPhoneDialog();

参数描述

无参数。

返回值描述

类型 含义
YLSDKERR 错误码,详情见错误码 YLSDKERR 的定义

GetPhoneDuration

接口描述

获取通话的时长,单位秒;

接口定义

int64_t GetPhoneDuration();

参数描述

无参数。

返回值描述

类型 含义
int64_t
本页目录