你好!请问一下版主,Nutz中如何获取微信公众号消息管理中的全部消息信息,微信公众号后台--消息管理可以查看的用户发送的消息。谢谢!
3 回复
https://nutzwk.wizzer.cn
微信--消息管理--会员消息,参考自己实现
用户通过微信公众号发送文本信息时,是否自动调用应用中的cn.wizzer.app.web.commons.ext.wx.WxHandler.text(WxInMsg) 方法
// 用户发送的是文本的时候调用这个方法
public WxOutMsg text(WxInMsg msg) {
Wx_reply reply = wxReplyService.fetch(Cnd.where("wxid", "=", msg.getExtkey()).and("type", "=", "keyword").and("keyword", "=", msg.getContent()));
if (reply != null) {
if ("txt".equals(reply.getMsgType())) {
String txtId = reply.getContent();
Wx_reply_txt txt = wxReplyTxtService.fetch(txtId);
return Wxs.respText(null, txt == null ? "" : txt.getContent());
} else if ("news".equals(reply.getMsgType())) {
String[] newsIds = Strings.sBlank(reply.getContent()).split(",");
List<WxArticle> list = new ArrayList<>();
List<Wx_reply_news> newsList = wxReplyNewsService.query(Cnd.where("id", "in", newsIds).asc("location"));
for (Wx_reply_news news : newsList) {
WxArticle wxArticle = new WxArticle();
wxArticle.setDescription(news.getDescription());
wxArticle.setPicUrl(news.getPicUrl());
wxArticle.setTitle(news.getTitle());
wxArticle.setUrl(news.getUrl());
list.add(wxArticle);
}
return Wxs.respNews(null, list);
}
}
Wx_user usr = wxUserService.fetch(Cnd.where("openid", "=", msg.getFromUserName()));
Wx_msg wxMsg = new Wx_msg();
wxMsg.setOpenid(msg.getFromUserName());
wxMsg.setContent(EmojiParser.parseToAliases(msg.getContent(), EmojiParser.FitzpatrickAction.REMOVE));
wxMsg.setWxid(msg.getExtkey());
wxMsg.setType("txt");
wxMsg.setNickname(usr == null ? "匿名" : usr.getNickname());
wxMsg.setDelFlag(false);
wxMsgService.insert(wxMsg);
return Wxs.respText(null, "您的留言已收到!");
}
添加回复
请先登陆