背景:

  • 获取CP的角色信息,用于红包系统数据对接。

目的:

需要实现的活动类型: 1、创建角色/开服后,限定时间内达到某个等级; 2、创建角色/开服后,限定时间内达到某个充值;

请求域名和请求方式:

  • http://xxx.com 由代理方提供 (请求方式:POST)
参数名 是否必须 类型 说明
role_id string 角色ID
server_no int 服务器ID
activity string 活动列表 json字符串
sign string 签名值(见下文)

activity字段详情

参数名 是否必须 类型 说明
type int 【活动类型】 1001:创角XX秒最后等级;1002:创角XX秒累充金额; 2001:开服XX秒最后等级;2002:开服XX秒累充金额
second int 时间范围(秒数)
task_value string 目标值(接口返回值需回传该字段)
id int 活动ID(接口返回值需回传该字段)

返回格式(json)以下是返回的相关参数:

参数名 是否必须 类型 说明
code int 返回码,0代表成功,其余状态代理方自定义
msg string 接口调用后的返回说明
data json 返回的数据信息,见下文

data字段详情

参数名 是否必须 类型 说明
ln_uid string 乐牛UID
create_time string 角色创建时间
activity list 活动列表

activity字段详情

参数名 是否必须 类型 说明
currency_value string 当前值,例如时间内达到的等级数值、时间内达到的充值金额(单位:分))
type string 活动类型(原样返回)
task_value string 目标值(原样返回)
id string 活动ID(原样返回)

请求示例:

{
	"role_id": "3008079130003179",
	"server_no": "700373",
    "activity": "[{\"type\":2002,\"second\":259200,\"task_value\":5000,\"id\":23},{\"type\":2001,\"second\":180,\"task_value\":5,\"id\":25}]",
	"sign": "ff6594ee76ed7e6384f8723a284c2110"
}

返回示例:

正确时返回:


{
    "code": 0,
    "msg": "",
    "data": {
        "ln_uid": "",
        "create_time": "",
        "activity": [
            {
                "type": 2001,
                "currency_value": 97,
                "task_value": 95,
                "id": 25
            },
            {
                "type": 2002,
                "currency_value": 97,
                "task_value": 95,
                "id": 23
            }
        ]
    }
}

错误时返回:

  {
    "code": 1,
    "msg": "sign error"
  }

备注:

  • 签名算法 key即为服务端交互的密钥
	public function makeSign( $data, $paykey )
    {
        $my_sign = '';
        unset($data['sign']);
        ksort($data);
        foreach ( $data as $key => $value )
        {
            $my_sign .= $key . '='. $value . '&';
        }

        $my_sign = rtrim( $my_sign, '&' ) . '|' . $paykey;

        $my_sign = strtolower( md5( $my_sign ) );

        return $my_sign;
    }
	```