silenceper / wechat

WeChat SDK for Go (微信SDK:简单、易用)
https://silenceper.com/wechat/
Apache License 2.0
4.74k stars 1.09k forks source link

小程序消息推送 #713

Closed ccfish86 closed 1 year ago

ccfish86 commented 1 year ago

小程序消息推送(服务器端)

token:="123456446545"
aeskey:="789134566"

messageReceiver := miniProgramPlatform.GetMessageReceiver(token, aesKey)

    msgType, eventType, pushData, err := messageReceiver.GetMsgData(c.Request)
    if err != nil {
        global.GVA_LOG.Warnf("消息接收异常 %s, %s, %s ", msgType, eventType, zap.Error(err))
        return "error", nil
    }

    if msgType == message.MsgTypeEvent {
        switch eventType {
        case message.EventTypeWxaMediaCheck:
            // 业务处理

        case message.EventTypeTradeManageRemindAccessApi:
            // 业务处理

        case message.EventTypeTradeManageRemindShipping:
            // 业务处理

        case message.EventTypeTradeManageOrderSettlement:

            // 业务处理

        default:
            global.GVA_LOG.Warnf("消息未处理 %s, %s", msgType, eventType)
        }
    } else {
        global.GVA_LOG.Warnf("消息未处理 %s, %s", msgType, eventType)
    }

    return "success", nil
houseme commented 1 year ago

please fix ci ,可以参考 golangci-lint action的提示

ccfish86 commented 1 year ago

please fix ci ,可以参考 golangci-lint action的提示

差一个,实在找不到了

houseme commented 1 year ago

please fix ci ,可以参考 golangci-lint action的提示

差一个,实在找不到了

if _, rawMsgBytes, err := util.DecryptMsg(receiver.AppID, reqData.Encrypt, receiver.AesKey); err != nil {
    return nil, err
} else {
    return rawMsgBytes, nil
}

修改:

var rawMsgBytes []byte
if _, rawMsgBytes, err := util.DecryptMsg(receiver.AppID, reqData.Encrypt, receiver.AesKey); err != nil {
    return nil, err
} 
return rawMsgBytes, nil
houseme commented 1 year ago

@ccfish86 辛苦处理一下冲突,是不是还有配置信息需要加进去,可以参考一下这个同学的 pr https://github.com/silenceper/wechat/pull/429

以及这里还有新的消息推送类型: 短剧审核: https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/industry/mini-drama/mini_drama.html#_5-%E4%BA%8B%E4%BB%B6%E9%80%9A%E7%9F%A5

虚拟支付: https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/industry/virtual-payment.html#_2-4-%E7%AD%BE%E5%90%8D%E8%AF%A6%E8%A7%A3 签名详解的上面有 2 个类型,如下:

道具发货推送xpay_goods_deliver_notify

代币支付推送xpay_coin_pay_notify

silenceper commented 1 year ago

麻烦解决一下冲突

houseme commented 1 year ago

@ccfish86 辛苦解决一下冲突

ccfish86 commented 1 year ago

在外边,晚会 修复下冲突

houseme commented 1 year ago

https://github.com/silenceper/wechat/blob/e02af1dc0ff5c635b9f94ea5b8e9dfc222e2a2df/.golangci.yml#L58C5-L58C15

目前最多 40 语句,把上面的 40 改成 50,不然就需要优化一下代码了。 @ccfish86

ccfish86 commented 1 year ago

https://github.com/silenceper/wechat/blob/e02af1dc0ff5c635b9f94ea5b8e9dfc222e2a2df/.golangci.yml#L58C5-L58C15

目前最多 40 语句,把上面的 40 改成 50,不然就需要优化一下代码了。 @ccfish86

问题是还有一些事件没有写完,后面还是得优化一下,等加xml支持时一起做吧。