Docs
Resources
Tools
News
to top

RCS

SDK 登录

SDK 登录步骤如下:

  1. 打开账户并完成参数配置
  2. 发起登录

第一步:打开账户并完成参数配置

Mtc_CliOpen("+8613616539986");	                   //打开配置号码(必须调用Mtc_CliOpen后才能添加设置项)
Mtc_CliDbSetUserName("+8613616539986");	           //设置用户名
Mtc_CliDbSetAuthName("+8613616539986@zte.com.cn"); //设置鉴权名(通常号码后面带域名)
Mtc_CliDbSetAuthPass("123456");                    //设置密码
Mtc_ProfDbSetRemPwd(ZTRUE);                        //是否记住密码
Mtc_CliDbSetSipRegTpt(EN_MTC_TPT_UDP);	           //设置传输类型
Mtc_CliDbSetSipRegTcpPort(5060);                   //设置TCP端口
Mtc_CliDbSetSipRegUdpPort(5070);                   //设置UDP端口
Mtc_CliDbSetSipRegTlsPort(5174);                   //设置TLS端口
Mtc_CliDbSetRegNoDigest(ZFALSE);                   //设置第一次注册时是否不带鉴权头               
    
Mtc_CliDbSetSipRegIp("61.132.54.27");              //设置服务器IP
Mtc_CliDbSetSipRegRealm("zte.com.cn");             //设置服务器域名
Mtc_CliDbSetRegSrvType(EN_MTC_REG_SRV_CMCC_RCS);   //设置注册类型
    
Mtc_CliDbApplyAll();                               //存储至客户端配置文件中
Mtc_ProfSaveProvision();

注:以上配置仅供参考,具体配置因环境而定

第二步:发起登录

  1. 注册 SDK 回调
    static ZVOID MtcCliCbSetRegStatChanged(ZUINT iRegStat, ZULONG dwStatCode)    
    {
        // 根据 iRegStat 和 dwStatCode 判断当前注册状态
        // iRegStat 包括:
        // MTC_REG_STATE_IDLE 未登录
        // MTC_REG_STATE_REGING 登录中
        // MTC_REG_STATE_REGED 已登录
        // MTC_REG_STATE_UNREGING 登出中
    }
    

  2. 发起登录
        ZUINT net = Mtc_GetAccessNetType();
        if (net == MTC_ANET_UNAVAILABLE) {
            return;
        }
        
        ZINT ret = Mtc_CliStart();
        if (ret == ZOK) {
            ZCHAR *ip = Mtc_GetLclIp(0);
            NSString* _ip = ip ? [NSString stringWithUTF8String:ip] : @"";
                    if ([_ip isEqualToString:@"127.0.0.1"]) {
                ret = ZFAILED;
            } else {
                ret = Mtc_CliLogin(net, ip);
            }
        }
    // ret 为 ZOK 时,调用接口成功,等待 SDK 回调通知注册状态
    // ret 为 ZFAILED,调用接口失败,界面应提示登陆失败
    

Juphoon © 2015 中文(简体)
关于我们 JusTalk 开发人员 招聘 隐私政策