鉴权
更新时间:2025-04-25 15:05:06

鉴权

方法总览

方法名称 行为 含义描述
OnSDKReady 通知 sdk进程启动完成的通知;仅有在接收到该通知之后,其他的所有操作才能生效
OnAuthResult 通知 鉴权完成的通知;仅有鉴权成功了,功能相关的操作才能生效;eAuthState: 当前鉴权状态
OnQueryServiceFeatureResult 通知 服务器请求完成的通知;无效或有效的类型都会通知;eTenantMode: 请求服务器的类型
OnQueryThirdPartyInfoResult 通知 企业号/域账号验证完成的通知;仅有验证成功了,功能相关的操作才能生效;bThirdSuccess: 企业号/域账号验证是否成功
OnLoginResult 通知 登录结果的通知;登录成功和失败都会通知;eAccountState: 当前登录的状态;dataAccountInfo: 请求登录的账号信息
OnLogout 通知 登出结果的通知;eLogoutReason: 登出原因;nErrCode: 登录操作的返回码
OnNetWorkStateChanged 通知 网络转态的变化通知;bIsNetWorkValid: 网络是否可用
AuthSDK 调用 鉴权;dataParam: 鉴权用的参数
Login 调用 登录账号;dataParam: 普通登录用的参数
RequestDispatcherHost 调用 获取服务器信息(仅第三方登录用)
RequestThirdPartyInfo 调用 设置企业号/域账号,并验证企业信息(仅第三方登录用);dataParam: 域账号登录的登录参数
ThirdPartyLogin 调用 yms域账号登录/cloud企业登录(第三方登录);dataParam: 第三方登录的登录参数
LogOut 调用 登出账号
GetAuthStatus 调用 获取当前鉴权状态
GetAccountInfo 调用 获取当前账号信息
GetLoginStatus 调用 获取当前登录状态
GetProxyConfig 调用 获取当前的代理配置,接口耗时,主线程调用会阻塞
SetProxyConfig 调用 设置代理服务器的接口,接口耗时,主线程调用会阻塞,设置成功后要重新启动SDK代理才会生效

OnSDKReady

通知描述

sdk进程启动完成的通知;仅有在接收到该通知之后,其他的所有操作才能生效

通知定义

void OnSDKReady();

参数描述

无参数。

返回值描述

无返回值。

OnAuthResult

通知描述

鉴权完成的通知;仅有鉴权成功了,功能相关的操作才能生效

通知定义

void OnAuthResult(AUTH_STATE eAuthState);

参数描述

参数 类型 含义
eAuthState AUTH_STATE 当前鉴权状态

鉴权状态枚举

enum AUTH_STATE {
    AUTH_STATE_AUTHROIZED = 0,/** < 已鉴权 */
    AUTH_STATE_UNAUTHROIZED = 1,/** < 未鉴权 */
}

返回值描述

无返回值。

OnQueryServiceFeatureResult

通知描述

服务器请求完成的通知;无效或有效的类型都会通知

通知定义

void OnQueryServiceFeatureResult(TenantMode eTenantMode);

参数描述

参数 类型 含义
eTenantMode TenantMode 请求服务器的类型

租户类型(仅第三方登录用)

enum TenantMode {
    TENANT_MODE_INVALID = 0,/** < 无效 */
    TENANT_MODE_SINGLE = 1,/** < 单租户 */
    TENANT_MODE_MULTI = 2,/** < 多租户 */
}

返回值描述

无返回值。

OnQueryThirdPartyInfoResult

通知描述

企业号/域账号验证完成的通知;仅有验证成功了,功能相关的操作才能生效

通知定义

void OnQueryThirdPartyInfoResult(bool bThirdSuccess);

参数描述

参数 类型 含义
bThirdSuccess bool 企业号/域账号验证是否成功

返回值描述

无返回值。

OnLoginResult

通知描述

登录结果的通知;登录成功和失败都会通知

通知定义

void OnLoginResult(ACCOUNT_STATE eAccountState, ACCOUNT_INFO dataAccountInfo);

参数描述

参数 类型 含义
eAccountState ACCOUNT_STATE 当前登录的状态
dataAccountInfo ACCOUNT_INFO 请求登录的账号信息

账号状态枚举

enum ACCOUNT_STATE {
    ACCOUNT_STATE_NONE = 0,/** < 未登录状态 */
    ACCOUNT_STATE_LOGGING = 1,/** < 登录中状态 */
    ACCOUNT_STATE_LOGGED = 2,/** < 登录成功状态 */
}

账号信息

struct ACCOUNT_INFO {
    std::string strID;/** < 账号uuid,和联系人模块关联 */
    std::string strNumber;/** < 账号短号 */
    std::string strFullNumber;/** < 账号长号,格式为企业号+账号短号 */
    std::string strPartyNumber;/** < 账号所在企业号 */
    std::string strName;/** < 账号名字 */
    std::string strPhoneNumber;/** < 账号手机号 */
    std::string strEmailAddress;/** < 账号邮箱 */
    UserGender eGender;/** < 账号性别 */
    std::string strPartyName;/** < 账号所在企业名字 */
    std::string strPartyDomain;/** < 账号所在域 */
    std::string strPartyZoneID;/** < 账号所在域的时区ID,用于预约会议默认时区 */
    bool bSupportMeetingNow;/** < 是否支持即时会议 */
}

返回值描述

无返回值。

OnLogout

通知描述

登出结果的通知

通知定义

void OnLogout(LOGOUT_REASON eLogoutReason, int nErrCode);

参数描述

参数 类型 含义
eLogoutReason LOGOUT_REASON 登出原因
nErrCode int 登录操作的返回码

登出原因

enum LOGOUT_REASON {
    LOGOUT_REASON_NORMAL = 0,/** < 正常登出 */
    LOGOUT_REASON_TIME_OUT = 1,/** < 超时 */
    LOGOUT_REASON_PASSWORD_ERR = 2,/** < 用户名或密码错误 */
    LOGOUT_REASON_DOMAIN_ERR = 3,/** < 域不正确 */
    LOGOUT_REASON_ACCOUNT_ERR = 4,/** < 该帐号状态异常 */
    LOGOUT_REASON_LOGGED_ELSEWHERE = 5,/** < 被挤下线 */
    LOGOUT_REASON_ACCOUNT_CHANGE = 6,/** < 账号变化,需重新登录 */
    LOGOUT_REASON_PASSWORD_CHANGE = 7,/** < 密码变化,需重新登录 */
    LOGOUT_REASON_ACCOUNT_NOT_EXIST = 8,/** < 该帐号不存在 */
    LOGOUT_REASON_ACCOUNT_OPERATION_FREQUENT = 9,/** < 操作过于频繁,请稍后再试 */
    LOGOUT_REASON_OTHER = 10,/** < 其他错误,详见错误码 */
}

返回值描述

无返回值。

OnNetWorkStateChanged

通知描述

网络转态的变化通知

通知定义

void OnNetWorkStateChanged(bool bIsNetWorkValid);

参数描述

参数 类型 含义
bIsNetWorkValid bool 网络是否可用

返回值描述

无返回值。

AuthSDK

接口描述

鉴权

接口定义

YLSDKERR AuthSDK(AuthParam dataParam);

参数描述

参数 类型 含义
dataParam AuthParam 鉴权用的参数

AuthParam SDK鉴权参数数据结构

struct AuthParam {
    std::string strAppID;/** < 鉴权使用的uuid */
    std::string strAppSecret;/** < 签名, 用来校验对应appID的合法性  */
}

返回值描述

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

Login

接口描述

登录账号

接口定义

YLSDKERR Login(LoginParam dataParam);

参数描述

参数 类型 含义
dataParam LoginParam 普通登录用的参数

LoginParam 登录参数数据结构

struct LoginParam {
    std::string strAccount;/** < 账号,不可为空 */
    std::string strPassword;/** < 密码,不可为空 */
    AuthType eAuthType;/** < 鉴权方式,默认通过云视讯-密码登录方式鉴权 */
}

返回值描述

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

RequestDispatcherHost

接口描述

获取服务器信息(仅第三方登录用)

接口定义

YLSDKERR RequestDispatcherHost();

参数描述

无参数。

返回值描述

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

RequestThirdPartyInfo

接口描述

设置企业号/域账号,并验证企业信息(仅第三方登录用)

接口定义

YLSDKERR RequestThirdPartyInfo(DomainParam dataParam);

参数描述

参数 类型 含义
dataParam DomainParam 域账号登录的登录参数

DomainParam 域账号/企业号(仅第三方登录用)

struct DomainParam {
    std::string strDomain;/** < 域账号。单租户填空,多租户填对应的域账号 */
}

返回值描述

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

ThirdPartyLogin

接口描述

yms域账号登录/cloud企业登录(第三方登录)

接口定义

YLSDKERR ThirdPartyLogin(ThirdPartyLoginParam dataParam);

参数描述

参数 类型 含义
dataParam ThirdPartyLoginParam 第三方登录的登录参数

ThirdPartyLoginParam 第三方登录参数数据结构(仅第三方登录用)

struct ThirdPartyLoginParam {
    std::string strThirdAccount;/** < 帐号,不可为空 */
    std::string strThirdPassword;/** < 密码,不可为空 */
}

返回值描述

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

LogOut

接口描述

登出账号

接口定义

YLSDKERR LogOut();

参数描述

无参数。

返回值描述

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

GetAuthStatus

接口描述

获取当前鉴权状态

接口定义

AUTH_STATE GetAuthStatus();

参数描述

无参数。

返回值描述

类型 含义
AUTH_STATE 鉴权状态枚举

AUTH_STATE 鉴权状态枚举

enum AUTH_STATE {
    AUTH_STATE_AUTHROIZED = 0,/** < 已鉴权 */
    AUTH_STATE_UNAUTHROIZED = 1,/** < 未鉴权 */
}

GetAccountInfo

接口描述

获取当前账号信息

接口定义

ACCOUNT_INFO GetAccountInfo();

参数描述

无参数。

返回值描述

类型 含义
ACCOUNT_INFO 账号信息

ACCOUNT_INFO 账号信息

struct ACCOUNT_INFO {
    std::string strID;/** < 账号uuid,和联系人模块关联 */
    std::string strNumber;/** < 账号短号 */
    std::string strFullNumber;/** < 账号长号,格式为企业号+账号短号 */
    std::string strPartyNumber;/** < 账号所在企业号 */
    std::string strName;/** < 账号名字 */
    std::string strPhoneNumber;/** < 账号手机号 */
    std::string strEmailAddress;/** < 账号邮箱 */
    UserGender eGender;/** < 账号性别 */
    std::string strPartyName;/** < 账号所在企业名字 */
    std::string strPartyDomain;/** < 账号所在域 */
    std::string strPartyZoneID;/** < 账号所在域的时区ID,用于预约会议默认时区 */
    bool bSupportMeetingNow;/** < 是否支持即时会议 */
}

GetLoginStatus

接口描述

获取当前登录状态

接口定义

ACCOUNT_STATE GetLoginStatus();

参数描述

无参数。

返回值描述

类型 含义
ACCOUNT_STATE 账号状态枚举

ACCOUNT_STATE 账号状态枚举

enum ACCOUNT_STATE {
    ACCOUNT_STATE_NONE = 0,/** < 未登录状态 */
    ACCOUNT_STATE_LOGGING = 1,/** < 登录中状态 */
    ACCOUNT_STATE_LOGGED = 2,/** < 登录成功状态 */
}

GetProxyConfig

接口描述

获取当前的代理配置,接口耗时,主线程调用会阻塞

接口定义

ProxyConfig GetProxyConfig();

参数描述

无参数。

返回值描述

类型 含义
ProxyConfig 代理配置

ProxyConfig 代理配置

struct ProxyConfig {
    std::string host;/** < 代理服务器ip或域名 */
    std::string strUserName;/** < 代理服务器用户名 */
    std::string strPassWord;/** < 代理服务器密码 */
    PROXYMODE eProxyMode;/** < 代理模式 */
    PROXYTYPE eProxyType;/** < 代理类型 */
    bool bEnable;/** < 是否使用代理 */
    int port;/** < 代理服务器端口  */
}

SetProxyConfig

接口描述

设置代理服务器的接口,接口耗时,主线程调用会阻塞,设置成功后要重新启动SDK代理才会生效

接口定义

YLSDKERR SetProxyConfig(ProxyConfig stProxyConfig);

参数描述

参数 类型 含义
stProxyConfig ProxyConfig

ProxyConfig 代理配置

struct ProxyConfig {
    std::string host;/** < 代理服务器ip或域名 */
    std::string strUserName;/** < 代理服务器用户名 */
    std::string strPassWord;/** < 代理服务器密码 */
    PROXYMODE eProxyMode;/** < 代理模式 */
    PROXYTYPE eProxyType;/** < 代理类型 */
    bool bEnable;/** < 是否使用代理 */
    int port;/** < 代理服务器端口  */
}

返回值描述

类型 含义
YLSDKERR 错误码,详情见错误码 YLSDKERR 的定义
本页目录