JS-SDK 接入指南

NOTE: 该方案适用于游戏主动引入 JS-SDK 的接入方式。另一种网页跳转接入请查看网页接入指南

流程图

SDK下载

下载地址: http://wiki.begindcc.com/download/onlysdk/h5/

SDK引入(必接)

引入BiGuo.js文件

<script src="./BiGuo.js" type="text/javascript" charset="utf-8"></script>

初始化(必接)

请求参数

(无)

返回结果

参数类型必选描述
codeint状态码
msgString提示信息

代码示例:

function init() {
    osdk = new OnlySDK()
    osdk.init().then(res => console.log('init result', res))
}

登录(必接)

请求参数

(无)

返回结果

参数类型必选描述
codeint状态码
msgString提示信息
channelIdint渠道ID
userIdString用户ID
tokenStringToken

代码示例:

//初始化之后可以登录
function login() {
    //登录有两种返回方式 一种是function 一种是Promise,一种返回后另一种就不会返回
    osdk.login(
        function(res) {
            console.log('cliect =', res)
            userid = res.data.userId
        }
    ).then((res) => {
        console.log('cliect =', res)
        // var ress = JSON.parse(res)
        userid = res.data.userId
        console.log('cliect =', userid)
    })
}

提交数据(必接)

请求参数

参数类型必选描述
typeint统计类型,1创建角色,2进入游戏,3等级提升,4登出游戏, 6充值到账
userIdlong用户ID
serverIdString服务器ID
serverNameString服务器名称
roleIdString角色ID
roleNameString角色名称
roleLevelint角色等级
moneyint角色人民币对应货币余额
vipStringVIP等级
roleCreateTimelong角色创建时间,Unix时间戳

返回结果

参数类型必选描述
codeint状态码
msgString提示信息

代码示例:


function stat() {
    let params = {
        type: '2', //1创建角色,2进入游戏,3等级提升,4登出游戏, 6充值到账
        userId: userid, //服务器验证后获取到的userid
        serverId: '3',
        serverName: '3区',
        roleId: 'roleid123',
        roleName: '一箭双调',
        roleLevel: '12',
        money: '0',
        vip: '1',
        roleCreateTime: Math.floor(new Date().getTime() / 1000),
    }
    osdk.stat(params);
}

提交数据(已过时)

请求参数

参数类型必选描述
typeint统计类型,1-选服、2-创建角色、3-进入游戏、4-等级提升、5-退出游戏、6-充值到账
userIdlong用户ID
serverIdString服务器ID
serverNameString服务器名称
roleIdString角色ID
roleNameString角色名称
roleLevelint角色等级
moneyint角色人民币对应货币余额
vipStringVIP等级
roleCreateTimelong角色创建时间,Unix时间戳

返回结果

参数类型必选描述
codeint状态码
msgString提示信息

代码示例:


function submit() {
    let params = {
        type: '2', //1选服 2创角 3登录 4升级
        userId: userid, //服务器验证后获取到的userid
        serverId: '3',
        serverName: '3区',
        roleId: 'roleid123',
        roleName: '一箭双调',
        roleLevel: '12',
        money: '0',
        vip: '1',
        roleCreateTime: Math.floor(new Date().getTime() / 1000),
    }
    osdk.submit(params);
}

支付(必接)

请求参数

参数类型必选描述
userIdString用户ID
cpOrderIdString游戏订单号要求唯一
productIdString商品ID
productNameString商品名称
productDescString商品描述
currencyString货币类型,比如CNY,ISO4217
priceint单位
serverIdString服务器ID
serverNameString服务器名称
roleIdString角色ID
roleNameString角色名称
roleLevelint角色等级
extensionString透传字段,游戏自定义参数,原样返回
notifyUrlString回调地址

返回结果

参数类型必选描述
codeint状态码
msgString提示信息

代码示例:

function pay() {
    let PayParams = {
        userId: userid, //服务器验证后获取到的userid
        cpOrderId: 'cporderid' + Math.floor(new Date().getTime() / 1000), //游戏订单号
        productId: '1', //商品id
        productName: '商品1', //商品名字
        productDesc: '商品1', //商品描述
        currency: 'CNY', //CNY:人民币
        price: '100', //价格分
        serverId: '3',
        serverName: '3区',
        roleId: 'roleid123',
        roleName: '一箭双雕',
        roleLevel: '12',
        extension: '扩展信息',
        notifyUrl: 'http://youxi.callback.com', //游戏发货地址
    }
    osdk.pay(PayParams);
}

登出(必接)

function logout() {
    osdk.logout()
}

上报(选接)

参数类型描述
loading_startString开始加载游戏
loading_overString加载游戏结束(loading结束后,顺利进入选择区服主界面)
loginString用户点击选择区服的登录页的登录按钮
login_successfulString用户完成登录,进入游戏内的首页

代码示例:

osdk.reportBOSS('loading_start')

桌面收藏(选接)

params为object属性如下(QQ小游戏渠道此参数传null)

参数类型必选描述
titleString桌面快捷名称
gameurlString游戏地址
iconurlString桌面图标 必须为https地址

代码示例:

// params.title
// params.gameurl
// params.iconurl
osdk.addShortcut(params,function(){
    console.log("success")
},function() {
    console.log("fail")
})

success回调无返回值,调用回调即收藏成功

failcb回调无返回值,调用回调即收藏失败

分享(选接)

shareData 为 object 属性如下

参数类型必选描述
titleString分享title
subTitleString副title
urlString分享链接
imageUrlString分享背景图
success的回调参数:result

成功跳转到分享渠道后就直接返回success回调

参数类型描述
typeString分享渠道,qq : QQ好友, weixin:微信好友, wxcircle:微信朋友圈, qzone:QQ空间, sinaweibo:新浪微博

fail分享失败回调

只有一些异常状况才会产生fail回调

代码示例:

// params.title
// params.subTitle
// params.url
// params.imageUrl
osdk.shareMenu(params,function(type){
    console.log("success",type)
},function() {
    console.log("fail")
})

打开URL(选接)

参数类型必选描述
urlString链接地址

代码示例:

osdk.openUrl(url)

摩羯座打点(选接)

参数类型必选描述
potinidString详情查看运营提供的文档
pointnumString详情查看运营提供的文档

代码示例:

osdk.reportPoint(potinid,pointnum,function(){
    console.log("success")
})

success回调无返回值,调用回调即成功