package org.nutz.weixin.impl; import org.nutz.Nutz; import org.nutz.json.Json; import org.nutz.weixin.bean.WxArticle; import org.nutz.weixin.bean.WxInMsg; import org.nutz.weixin.bean.WxMsgType; import org.nutz.weixin.bean.WxOutMsg; import org.nutz.weixin.spi.WxHandler; import org.nutz.weixin.util.Wxs; public abstract class AbstractWxHandler implements WxHandler { public WxOutMsg text(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg image(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg voice(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg video(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg location(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg link(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventSubscribe(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventUnsubscribe(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventScan(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventLocation(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventClick(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventView(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventTemplateJobFinish(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg defaultMsg(WxInMsg msg) { if ("帮助".equals(msg.getContent())) return Wxs.respText(null, "支持的命令有: 你好 版本 帮助 appid 测试文本 测试新闻 回显"); if ("你好".equals(msg.getContent())) return Wxs.respText(null, "你好!!"); if ("版本".equals(msg.getContent())) return Wxs.respText(null, "Nutz " + Nutz.version()); if ("appid".equals(msg.getContent())) return Wxs.respText(null, msg.getToUserName()); if ("回显".equals(msg.getContent())) return Wxs.respText(null, Json.toJson(msg)); if ("测试文本".equals(msg.getContent())) return Wxs.respText(null, "这真的是一条测试文本"); if ("测试图片".equals(msg.getContent())) return Wxs.respImage(null, "not exist"); if ("测试新闻".equals(msg.getContent())) { WxArticle nutzam = new WxArticle("官网", "nutz官网", "https://nutz.cn/rs/logo/logo.png", "http://nutzam.com"); WxArticle nutzcn = new WxArticle("Nutz社区", "nutz官方社区", "https://nutz.cn/rs/logo/logo.png", "https://nutz.cn"); return Wxs.respNews(null, nutzam, nutzcn); } if (WxMsgType.shortvideo.name().equals(msg.getMsgType())) { return Wxs.respText(null, "小视频?讨厌..."); } return Wxs.respText("这是缺省回复哦.你发送的类型是:"+msg.getMsgType()+". http://nutz.cn"); } public WxOutMsg handle(WxInMsg in) { return Wxs.handle(in, this); } public WxOutMsg eventScancodePush(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventScancodeWaitMsg(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventScancodePicSysphoto(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventScancodePicPhotoOrAlbum(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventScancodePicWeixin(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg eventLocationSelect(WxInMsg msg) { return defaultMsg(msg); } public WxOutMsg shortvideo(WxInMsg msg) { return defaultMsg(msg); } }