后端部署 微信Hook
# 微信 Hook配置
下载以下内容
在插件正式发布之前,请到 Github Actions (opens new window) 下载
SweetCheckout-Hooks.zip
,或自行编译。
# 微信
先安装微信,登录好账号,账号满足以下条件其一即可
- 用于收款的微信账号
- 微信账号是收款账号的店员
(在收款账号打开我 -> 服务 -> 收付款 -> 二维码收款 -> 收款小账本 -> 收款店员
来添加店员)
建议在手机用微信分身之类的功能登录这个账号,再用这个微信扫码登录。
不推荐登录日常使用的账号,以免需要登录微信PC版的时候把服务器的微信挤下线。
注意
这个微信号必须要关注微信官方的微信收款助手
功能(服务号),Hook 会监听这个服务号发送的通知。
登录完成后,打开设置,关闭自动更新,作出自己想要的调节,然后退出微信。
# Hook
将下载的 Hook.zip
里面的 WeChatHook.zip
解压到任意位置,编辑 config.properties
# Hook 终结点地址
api_url=http://127.0.0.1:62233/api/hook/receive
2
终结点地址的端口(默认62233
)要与后端设置的一致,后面的路径(默认/api/hook/receive
)要与后端配置中的 hook.end_point
设置的一致。
Hook 终结点没有校验,请不要将后端的端口暴露在公网中。
# 后端
Hook 配置完成后,到后端的配置文件 config.json
开启 hook.enable
和 hook.wechat.enable
即可。如果 Hook 和后端不在同一个账户运行,hook.wechat.require_process
需要设置为空字符串 ""
,否则创建订单时会提示Hook未运行
之类的提示。
另外,还需要在后端配置收款码地址。在 hook.wechat
有 payment_url
和 payment_urls
两个选项,payment_url
是泛用的收款码,payment_urls
是指定金额的收款码。
在手机微信登录收款账号,点开 我 -> 服务 -> 收付款 -> 二维码收款
,然后保存一张普通的收款码。上传到 这个工具网站 (opens new window) 即可获得收款码地址。当然你也可以用其它工具,能解码二维码就行了。
复制解码结果,粘贴到 payment_url
,如下所示
"wechat": {
"payment_url": "wxp://f2f03hYFhDSFVo-F4nu5FDF0q6Q52eYHL2ydi5Iqwpt5ruk"
}
2
3
接下来继续保存收款码,保存之前设置金额,比如设置 1.00
, 6.00
, 32.00
等金额,你需要什么金额就保存什么金额的收款码,然后以相同的方法输入到 payment_urls
,注意金额必须保留两位小数。
完整配置示例如下(自己编辑的时候,请不要输入注释 //
)
{
// ...前面省略
"hook": {
"enable": true, // 开启这个
"end_point": "/api/hook/receive",
"wechat": {
"require_process": "SweetCheckout.Hook.WeChat.exe",
"enable": true, // 开启这个
// 泛用收款码
"payment_url": "wxp://f2f03hYFhDSFVo-F4nu5FDF0q6Q52eYHL2ydi5Iqwpt5ruk",
// 指定金额收款码
"payment_urls": {
"1.00": "wxp://f2f1pUjNG21clhI_6IugMMPNf9uCvH-_VxwoVjbz4Xik9RBQo1h7lt0t5eO4OL7X4DpN",
"6.00": "wxp://f2f1noHjiC53rfbMJySvXSE8qm_GFPwSbSmEi8y8fNM_LyuIYaF3L6dfFQjm7PVVVnwj",
"32.00": "wxp://f2f1R_PoB_bI5MrS3Y4oZcAE-R1t_WXZ7uRWxJjhcMxsv8uqkqlfkt4eZdMgijWsewvb"
}
},
// ...后面省略
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
设置 payment_urls
之后,当玩家下单指定金额的订单时,就不需要玩家手动再在微信输入一次金额了。
记得重启后端或者执行
reload
重载配置。
完成配置后,启动 Hook 并注入到微信即可,Hook 在注入时会启动微信,启动 Hook 时不需要手动启动微信。
请保持 Hook 软件一直处于打开状态。
# 注意事项
后端是按金额来匹配支付人的,同一时间内,不能有多个人创建同一金额的订单。
比如不能有两个玩家同时充值 1 元,后面来的玩家,必须要等前面的玩家支付完成才能创建订单。
同时有多个人创建 1 元、6 元、32 元的订单是允许的。