Docs
Resources
Tools
News
to top

RCS

CP 自动开户

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

用户输入手机号码和飞信,分别进行以下配置

    Mtc_CliOpen((ZCHAR *)[_user UTF8String]);
    Mtc_ProvDbSetImei((ZCHAR *)[@"352304060339645" UTF8String]);//设置imei
    Mtc_CpDbSetImsi((ZCHAR *)[@"460023574319643" UTF8String]);//设置imsi
    Mtc_CpDbSetMsisdn((ZCHAR *)[_user UTF8String]);//设置msisdn
    Mtc_ProfDbSetCpEnable(true);//开启自动登录
    NSString *profilesPath = [NSString stringWithFormat:@"%@/profiles", MtcUtilDocumentDirectory()];//服务器下发文件存储目录
    Mtc_ImDbSetFtFileDirect((ZCHAR *)[profilesPath UTF8String]);
    Mtc_CpDbSetSrvAddr("117.136.240.131:80");//服务器地址
    Mtc_ProvDbSetRcsVer(EN_MTC_PROV_RCS_VER_5_1_B);//RCS版本号
    Mtc_ProvDbSetCliVendor((ZCHAR *)[kCompany UTF8String]);//公司名
    Mtc_ProvDbSetCliVer((ZCHAR *)[version UTF8String]);//客户端版本号
    Mtc_ProvDbSetTmnlVendor((ZCHAR *)[@"Apple" UTF8String]);//终端公司
    Mtc_ProvDbSetTmnlModel((ZCHAR *)[phoneModel UTF8String]);//设备型号
    Mtc_ProvDbSetTmnlSwVer((ZCHAR *)[phoneVersion UTF8String]);//设备版本
    
    Mtc_CliDbApplyAll();                               //存储至客户端配置文件中
    Mtc_ProfSaveProvision();

第二步:开始自动登录

WIFI 下

  1. 发起 CP 注册
    Mtc_Cp(EN_MTC_CP_NET_WIFI)
    
  2. 回调
    static ZVOID MtcCpCbSetCpAuthInd(ZULONG dwCpId) {
           //调用统一认证接口获取Token
           Mtc_CpPromptToken(cpId, (ZCHAR *)[token UTF8String]);
           }
    
  3. 回调
    static ZVOID MtcCpCbCpOk(ZULONG dwCpId) {
             //开始登陆
          }

PS 下

  1. 发起CP注册
    Mtc_Cp(EN_MTC_CP_NET_PS)
    
  2. 回调
    static ZVOID MtcCpCbCpRecvMsg(ZULONG dwCpId, ZCHAR *pcTitle, ZCHAR *pcMsg) {
              //用户收到协议的标题以及内容,点击确认后,调用
               Mtc_CpAct(_cpId, EN_MTC_CP_ACT_ACPT);
            }
    
  3. 回调
    static ZVOID MtcCpCbCpOk(ZULONG dwCpId) 
           //调用统一认证接口获取密码
           Mtc_CliDbSetAuthPass((ZCHAR *)[_authPassword UTF8String]);
           //开始登陆
    

CP 失败的回调

static ZVOID MtcCpCbCpFailed(ZULONG dwCpId, ZULONG dwStatCode)
{
    switch (dwStatCode) {
        case ZMAXULONG:
        case MTC_CP_STAT_ERR_CONN:
        case MTC_CP_STAT_ERR_DISCED:
        case MTC_CP_STAT_ERR_SEND:
        case MTC_CP_STAT_ERR_RECV:
        case MTC_CP_STAT_ERR_WAIT_RSP:
        case MTC_CP_STAT_ERR_INVALID_OTP:
        case MTC_CP_STAT_ERR_INVALID_NUMBER:
            break;
        default: {
        //如果用户之前进行过自动配置,则认为CP成功
            ZINT ver = Mtc_CpDbGetVer();
            if (ver > 0) {
                MtcCpCbCpOk(dwCpId);//调用之后会进入CP回调
                return;
            }
        }
    }
}
Juphoon © 2015 中文(简体)
关于我们 JusTalk 开发人员 招聘 隐私政策