活动更新
一.概述
本文档用于向接入方描述活动更新操作详情,通过活动更新通知接口、活动内容读取接口,游戏服务器可将发布更新的活动内容,更新到游戏世界。
1.1 基本流程
1. 果安统计后台点击更新活动,调用活动更新通知接口,向cp接入方填写的中间层地址发送数据;
2. cp接入方接收数据成功后,告知果安接口服务器;
3. 接入方接收成功返回,后续可请求拿到活动回调地址等参数,获取实际的更新内容;
4. 果安接口服务器依据回调地址返回相应数据。
1.2 管理后台配置内容
无
1.3 活动更新通知接口
接口描述:本接口用于向cp接入方填写的中间层地址发送活动更新通知请求。
中间层配置示例地址(cp方可在后台自行配置,如下):
请求方式:POST
请求参数:
参数 |
类型 |
说明 |
示例 |
method |
string |
接口方法名(本次填写activityUpdate) |
activityUpdate |
active_type |
int |
活动类型 |
1 |
sids |
string |
区服id列表,“1,2,3”,英文逗号分隔 |
1,2,3 |
timestamp |
int |
10位时间戳 |
1470280842 |
key |
string |
验证签名(规则见其他说明) |
7fb590c097cb64e6e3b6f8ca334fdf65 |
callback_url |
string |
示例: %s :格式化要更新的区服 |
http://uapi.uzone8.com/10/%s/1470279431/activityUpdate |
接收成功返回 : {"statusCode":200}
格式为json,其他参照错误码说明
1.4 活动内容读取接口
接口描述:
此接口用于游戏服务器获取活动管理后台最新配置的活动内容。游戏服务器可将此最新发布的活动内容更新同步到游戏世界。
请求方式:HTTP GET方式
请求格式描述:
根据活动更新通知接口的callback_url参数获取相关回调链接,并通过获取的sids参数,格式化url后获取完整链接内容作为请求地址。
示例:
GET:http://uapi.uzone8.com/10/1/1470279566/activityUpdate
注意事项:数据自更新活动起只保留一天
返回内容格式:json格式对象
返回列表:
ret |
msg |
data |
1 |
success |
Json数组,示例
|
-1 |
param xx error |
null |
-2 |
time out |
null |
-3 |
update error |
null |
-99 |
other error |
null |
data字段说明:
字段名 |
类型 |
说明 |
activity_template_id |
int |
活动id |
activity_struct_mark |
int |
活动结构标识 |
activity_title |
string |
活动标题 |
activity_description |
stirng |
活动描述 |
activity_time_type |
int |
活动时间类型:{1 : '单次', 2:'周循环', 3:'月循环'} |
start_time |
string |
开始时间(unix_timestamp) |
end_time |
string |
结束时间(unix_timestamp) |
time_extended |
string |
时间扩展字段(json 字符串) |
自定义字段 |
自定义字段 |
自定义字段 |
... |
... |
... |
activity_list |
array |
子活动列表: |
示例:
成功返回示例:
{
"ret": 1,
"msg": "success",
"data": [
{
"activity_template_id": "9",
"activity_struct_mark": "1",
"activity_title": "asd",
"activity_description": "zxc",
"activity_time_type": "2",
"start_time": null,
"end_time": null,
"time_extended": "",
"new_param": "edc",
"activity_list": [
{
"cond": "sd",
"activity_condition_description": "desc",
"reward": [
{
"code": "26062",
"type": "1",
"amount": "4"
}
]
}
]
},
{ "activity_template_id": "8",
"activity_struct_mark": "1",
"activity_title": "asd",
"activity_description": "zxc",
"activity_time_type": "2",
"start_time": null,
"end_time": null,
"time_extended": "",
"new_param": "edc",
"activity_list": [
{
"cond": "sd",
"activity_condition_description": "desc",
"reward": [
{
"code": "26063",
"type": "1",
"amount": "5"
}
]
}
]
}
]
}
二.其他
1. 错误码(statusCode)
200:成功
201:serverId无效
202:方法类型或方法名称为空
203:方法类型或方法名称无效
204:参数不完整
205: 签名错误
999:其他错误
2. 签名说明
key = md5(appId+md5(signStr)+timestamp+appKey)
//“+”意为字符串拼接
appId:从后台基本信息获取游戏appId
appKey:从后台基本信息获取游戏appKey
timestamp:请求参数中的时间戳
signStr拼接规则 :
活动更新通知接口的请求参数中,去掉timestamp和key参数,按剩余请求参数首字母升序排序,拼接对应参数值
参照代码(php语言):