文档修订记录
版本 | 更新日期 | 更新内容 |
---|---|---|
1.1.0 | 2024.03.21 | 去除可选参数,增加对游力主体公众号快捷接入链接的说明 |
1.0.1 | 2022.08.04 | 增加可选参数 |
1.0.0 | 2021.01.11 | 初始化 |
简介
若需在WEB页面使用客服功能(如微信公众号内嵌客服),请依照下文完成接入链接的生成,而后从所需应用的程序(如微信公众号)中跳转至此链接即可。
1. 获取接入链接和签名密钥
- 在 “客服工单系统-基础管理-接入指南” 中获取接入链接和签名密钥。接入链接的格式是“https://xxx”+“参数”+“
__OPENID__
”和“__SIGN__
”组成。“__OPENID__
”和“__SIGN__
”是特定的格式需要替代,我们以下简称为“宏”。 - 如果有显示“游力主体公众号快捷接入链接”,只需要把“游力主体公众号快捷接入链接”配置到微信公众号的菜单中,即可使用微信公众号客服功能,不需要后续操作
2. 替代链接中的宏
- 替换链接中的“
__OPENID__
”:替换为实际用户的账号标识,如微信用户的unionid,openid,steam用户的openid等等。 - 替换链接中的“
__SIGN__
”:替换为计算出的签名。
签名规则
MD5步骤说明
1 待签名参数 :除去 sign ,其他参数(包含空值的参数)都要参加验签。
2 对所有待签名参数按照字段名的ASCII码从小到大排序。
3 使用键值对的格式(key1=value1&key2=value2)拼接成字符串;进行urlencode编码(PHP使用rawurlencode),获得$source字符串。
4 将步骤3的$source字符与秘钥通过&符号进行拼接:$source&$key。
5 将步骤4的字符串进行md5哈希签名得到最终sign值。
签名样例(PHP版本):
ksort($data);//1 按照健值从小到大排序
$query_string = array();//2 键值对按照'='拼接,排除sign参数
foreach ($data as $key => $val) {
if ($key == 'sign') continue;
array_push($query_string, $key . '=' . $val);
}
$query_string = join('&', $query_string);//3 将上述数组按照&拼接
$source = rawurlencode($query_string);//4 将拼接结果用rawurlencode编码
$sign= md5($source.'&'. $app_secret);//md5 hash计算签名