文档中心  >  游戏运营分析  >  服务端接入说明  >  客服管理接入

游戏数据及GM指令接入说明

一.使用说明

为游戏开发者提供配置GM指令和玩家信息查询规范,通过GM指令和玩家信息的查询,帮助运营和客服人员更好的提升客户服务,实现市场营销、销售、服务等活动自动化。

1.       配置GM指令请求方式

游戏列表,点击今日游戏配置

选择请求方式(通过中间层或直接发送到游戏服务器),并配置请求地址

2.       GM指令请求方式说明

通过中间层(推荐)

中间层存在于cp服务器,统计后台发送后,通过中间层再分发到各游戏服务器,中间层接收并检验数据正确后返回统计后台成功,并异步分发到其他服务器

优点:发送多台服务器只需一个http请求,中间层与游戏服务器的交互为cp服务端定义,可按照游戏服务端需求选择更高效的交互方式

缺点:中间层开发成本和维护成本高(后台提供中间层数据接收php代码DEMO)

直接发送到游戏服务器

统计后台通过ajax http异步请求到各游戏服务器,游戏服务器的ipwebserver端口存在于统计后台

优点:游戏服务器只需提供webserver并按照接入文档接收数据即可

确定:只提供http请求方式接口,效率不足

二.请求接口

1.       游戏信息查询接口

1.1.   玩家信息查询

接口描述:

请求方式:POST

请求参数:

参数

类型

必填

备注

method

string

标识调用接口方法名(本接口填写 getUserMes)

serverId

int

服务器ID

data_type

Int

后台配置类型id

show_type

Int

1.列表形式 2.明细形式

user_type

Int

查询类型 1:角色名,2:角色id

user

string

根据user_type填写内容角色名或角色id

timestamp

Int

当前时间

key

md5

验证签名(规则见其他说明)

1.2.   玩家日志查询

接口描述:

请求方式:POST

请求参数:

参数

类型

必填

备注

method

string

标识调用接口方法名(本接口填写 getUserLog)

serverId

int

服务器ID

data_type

Int

后台配置类型id

show_type

Int

1.列表形式 2.明细形式

user_type

Int

查询类型 1:角色名,2:角色id

start_time

Int

查询开始时间(无时间选择填写今天)

user

string

根据user_type填写内容角色名或角色id

timestamp

Int

当前时间

key

md5

验证签名(规则见其他说明)

 

1.3.   其他信息查询    

接口描述:

请求方式:POST

请求参数:

参数

类型

必填

备注

method

string

标识调用接口方法名(本接口填写 getGameMes)

serverId

int

服务器ID

data_type

Int

后台配置类型id

show_type

Int

1.列表形式 2.明细形式

ext_verify

Json

自定义字段必填验证({‘ext1’,’ext2’……})

自定义查询字段1

后台配置的自定义字段

自定义查询字段2

自定义查询字段3

                                                            ……(后台配置更多字段)

timestamp

Int

当前时间

key

md5

验证签名(规则见其他说明)

1.4. 返回参数

返回格式:json

列表形式(日志查询):

参数名称

说明

备注

statusCode

见下面说明

错误码

data

{

    "table_header": [

        "字段1",

        "字段2",

        "字段3",

        "字段4",

        ……

    ],

    "table_list": [

        [

            "内容1",

            "内容2",

            "内容3",

            "内容4",

            ……

        ],

        ……

    ]

}

返回一个列表内容

table_header为表头,显示列表的标题

table_list 为列表类容,与表头字段必须一一对应

 

明细形式(日志查询):

参数名称

说明

备注

statusCode

见下面说明

错误码

data

{

    "keys": [

        "名称1",

        "名称2",

        "名称3",

        ……

    ],

    "values": [

        "数据1",

        "数据2",

        "数据3",

        ……

    ]

}

返回一个明细内容

Keys:每个数据的标题

Values:每个数据的内容

字段必须一一对应

 

2.       GM指令发送接口

请求方式:POSTjson数据流

请求参数:

参数

类型

必填

备注

method

string

标识调用接口方法名(本接口填写 sendGmInfo)

opids

string

渠道ID列表(多渠道以英文逗号隔开),长度不超过255

sid

string

区服ID

attachment

Json

自定义标识(key=>value)

goods

Json

没有选择物品时为0,有的话为json数组,示例[{"code":780036,"type":6,"amount":99},{"code":230706,"type":22,"amount":2}]

(注:code:物品代码,type:物品类型,amount:数量)

gm_no

int

自定义字段必填验证({‘ext1’,’ext2’……})

timestamp

Int

当前时间

key

md5

验证签名(规则见其他说明)

返回结果:POST方式,json

返回参数

描述

类型

示例

statusCode

返回状态吗

int

200

 

请求字符串:

 {"attachment":"{\"notice\":\"aaa\"}","gm_no":103,"goods":"0","method":"sendGmInfo","opids":"1,2","sid":"1","timestamp":1468294004,"key":"cb4d681317aa2a725b4fe7b483d11c99"} 

返回字符串:{"statusCode": 200}

请求实例:

实例:(php语言:)

 $url = ‘接入方地址’;

$data = array (
   'attachment' => '{"notice":"aaa"}',
   'gm_no' => 103,
   'goods' => '0',
   'method' => 'sendGmInfo',
   'opids' => '1,2',
   'sid' => '1',
   'timestamp' => 1468294004,
   'key' => 'cb4d681317aa2a725b4fe7b483d11c99',
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)); //json数据流

$rtn = curl_exec($ch);
curl_close($ch);
echo $rtn;
exit();

接收:(php语言): file_get_contents('php://input') 

三.   其他说明

 

1.       错误码(statusCode)

200:成功

201serverId无效

202:方法类型或方法名称为空

203:方法类型或方法名称无效

204:参数不完整

205: 签名错误

999:其他错误

 

2.       签名说明

appId:从后台基本信息获取游戏appId

appKey:从后台基本信息获取游戏appKey

timestamp:请求参数中的时间戳

请求参数首字母排序:请求参数中,去掉timestampkey的其他参数

规则 key = md5(appId+md5(请求参数首字母排序)+timestamp+appKey)

Copyright © 2012-2018 www.uzone8.com All right reserved.

广州游众网络有限公司版权所有

Return Top