|
|
|
@@ -13,6 +13,7 @@ import io.swagger.annotations.Api; |
|
|
|
import io.swagger.annotations.ApiOperation; |
|
|
|
import me.chanjar.weixin.common.error.WxErrorException; |
|
|
|
import me.chanjar.weixin.mp.api.WxMpService; |
|
|
|
import me.chanjar.weixin.mp.bean.kefu.WxMpKefuMessage; |
|
|
|
import me.chanjar.weixin.mp.bean.message.WxMpXmlMessage; |
|
|
|
import me.chanjar.weixin.mp.bean.message.WxMpXmlOutMessage; |
|
|
|
import me.chanjar.weixin.open.bean.message.WxOpenXmlMessage; |
|
|
|
@@ -203,6 +204,32 @@ public class WechatCalllbackController extends BaseController { |
|
|
|
openService.getWxOpenConfigStorage(), timestamp, nonce, msgSignature); |
|
|
|
logger.info("接收微信APP回调,消息解密后内容为:\n{}", inMessage.toString()); |
|
|
|
|
|
|
|
// 全网发布测试用例 |
|
|
|
if (StringUtils.equalsAnyIgnoreCase(appId, "wx570bc396a51b8ff8", "wxd101a85aa106f53e")) { |
|
|
|
try { |
|
|
|
if (StringUtils.equals(inMessage.getMsgType(), "text")) { |
|
|
|
if (StringUtils.equals(inMessage.getContent(), "TESTCOMPONENT_MSG_TYPE_TEXT")) { |
|
|
|
out = WxOpenXmlMessage.wxMpOutXmlMessageToEncryptedXml( |
|
|
|
WxMpXmlOutMessage.TEXT().content("TESTCOMPONENT_MSG_TYPE_TEXT_callback") |
|
|
|
.fromUser(inMessage.getToUser()) |
|
|
|
.toUser(inMessage.getFromUser()) |
|
|
|
.build(), |
|
|
|
openService.getWxOpenConfigStorage() |
|
|
|
); |
|
|
|
} else if (StringUtils.startsWith(inMessage.getContent(), "QUERY_AUTH_CODE:")) { |
|
|
|
String msg = inMessage.getContent().replace("QUERY_AUTH_CODE:", "") + "_from_api"; |
|
|
|
WxMpKefuMessage kefuMessage = WxMpKefuMessage.TEXT().content(msg).toUser(inMessage.getFromUser()).build(); |
|
|
|
openService.getWxOpenComponentService().getWxMpServiceByAppid(appId).getKefuService().sendKefuMessage(kefuMessage); |
|
|
|
} |
|
|
|
} else if (StringUtils.equals(inMessage.getMsgType(), "event")) { |
|
|
|
WxMpKefuMessage kefuMessage = WxMpKefuMessage.TEXT().content(inMessage.getEvent() + "from_callback").toUser(inMessage.getFromUser()).build(); |
|
|
|
openService.getWxOpenComponentService().getWxMpServiceByAppid(appId).getKefuService().sendKefuMessage(kefuMessage); |
|
|
|
} |
|
|
|
} catch (WxErrorException e) { |
|
|
|
logger.error("callback", e); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
PrintWriter printWriter = response.getWriter(); |
|
|
|
|
|
|
|
if(appinfo.getType().equals(EnumAppType.B.getCode()) || |
|
|
|
|