polish code

This commit is contained in:
Daniel Qian
2014-10-22 13:38:16 +08:00
parent f76f0e6773
commit 2c96d542d6
31 changed files with 145 additions and 220 deletions

View File

@ -1,9 +1,9 @@
package me.chanjar.weixin.mp.api; package me.chanjar.weixin.common.api;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
public class WxMpConsts { public class WxConsts {
/////////////////////// ///////////////////////
// 微信推送过来的消息的类型和发送给微信xml格式消息的消息类型 // 微信推送过来的消息的类型和发送给微信xml格式消息的消息类型
@ -20,7 +20,7 @@ public class WxMpConsts {
public static final String XML_TRANSFER_CUSTOMER_SERVICE = "transfer_customer_service"; public static final String XML_TRANSFER_CUSTOMER_SERVICE = "transfer_customer_service";
/////////////////////// ///////////////////////
// 客服消息的消息类型 // 主动发送消息的消息类型
/////////////////////// ///////////////////////
public static final String CUSTOM_MSG_TEXT = "text"; public static final String CUSTOM_MSG_TEXT = "text";
public static final String CUSTOM_MSG_IMAGE = "image"; public static final String CUSTOM_MSG_IMAGE = "image";
@ -28,6 +28,7 @@ public class WxMpConsts {
public static final String CUSTOM_MSG_VIDEO = "video"; public static final String CUSTOM_MSG_VIDEO = "video";
public static final String CUSTOM_MSG_MUSIC = "music"; public static final String CUSTOM_MSG_MUSIC = "music";
public static final String CUSTOM_MSG_NEWS = "news"; public static final String CUSTOM_MSG_NEWS = "news";
public static final String CUSTOM_MSG_FILE = "file";
/////////////////////// ///////////////////////
// 群发消息的消息类型 // 群发消息的消息类型
@ -95,6 +96,7 @@ public class WxMpConsts {
public static final String MEDIA_VOICE = "voice"; public static final String MEDIA_VOICE = "voice";
public static final String MEDIA_VIDEO = "video"; public static final String MEDIA_VIDEO = "video";
public static final String MEDIA_THUMB = "thumb"; public static final String MEDIA_THUMB = "thumb";
public static final String MEDIA_FILE = "file";
/////////////////////// ///////////////////////
// 文件类型 // 文件类型

View File

@ -1,81 +0,0 @@
package me.chanjar.weixin.cp.api;
public class WxCpConsts {
///////////////////////
// 微信推送过来的消息的类型和发送给微信xml格式消息的消息类型
///////////////////////
public static final String XML_MSG_TEXT = "text";
public static final String XML_MSG_IMAGE = "image";
public static final String XML_MSG_VOICE = "voice";
public static final String XML_MSG_VIDEO = "video";
public static final String XML_MSG_NEWS = "news";
public static final String XML_MSG_LOCATION = "location";
public static final String XML_MSG_LINK = "link";
public static final String XML_MSG_EVENT = "event";
///////////////////////
// 消息的消息类型
///////////////////////
public static final String CUSTOM_MSG_TEXT = "text";
public static final String CUSTOM_MSG_IMAGE = "image";
public static final String CUSTOM_MSG_VOICE = "voice";
public static final String CUSTOM_MSG_VIDEO = "video";
public static final String CUSTOM_MSG_NEWS = "news";
public static final String CUSTOM_MSG_FILE = "file";
///////////////////////
// 微信端推送过来的事件类型
///////////////////////
public static final String EVT_SUBSCRIBE = "subscribe";
public static final String EVT_UNSUBSCRIBE = "unsubscribe";
public static final String EVT_SCAN = "SCAN";
public static final String EVT_LOCATION = "LOCATION";
public static final String EVT_CLICK = "CLICK";
public static final String EVT_VIEW = "VIEW";
public static final String EVT_MASS_SEND_JOB_FINISH = "MASSSENDJOBFINISH";
public static final String EVT_SCANCODE_PUSH = "scancode_push";
public static final String EVT_SCANCODE_WAITMSG = "scancode_waitmsg";
public static final String EVT_PIC_SYSPHOTO = "pic_sysphoto";
public static final String EVT_PIC_PHOTO_OR_ALBUM = "pic_photo_or_album";
public static final String EVT_PIC_WEIXIN = "pic_weixin";
public static final String EVT_LOCATION_SELECT = "location_select";
///////////////////////
// 上传多媒体文件的类型
///////////////////////
public static final String MEDIA_IMAGE = "image";
public static final String MEDIA_VOICE = "voice";
public static final String MEDIA_VIDEO = "video";
public static final String MEDIA_FILE = "file";
///////////////////////
// 文件类型
///////////////////////
public static final String FILE_JPG = "jpeg";
public static final String FILE_MP3 = "mp3";
public static final String FILE_ARM = "arm";
public static final String FILE_MP4 = "mp4";
///////////////////////
// 自定义菜单的按钮类型
///////////////////////
/** 点击推事件 */
public static final String BUTTON_CLICK = "click";
/** 跳转URL */
public static final String BUTTON_VIEW = "view";
/** 扫码推事件 */
public static final String BUTTON_SCANCODE_PUSH = "scancode_push";
/** 扫码推事件且弹出“消息接收中”提示框 */
public static final String BUTTON_SCANCODE_WAITMSG = "scancode_waitmsg";
/** 弹出系统拍照发图 */
public static final String PIC_SYSPHOTO = "pic_sysphoto";
/** 弹出拍照或者相册发图 */
public static final String PIC_PHOTO_OR_ALBUM = "pic_photo_or_album";
/** 弹出微信相册发图器 */
public static final String PIC_WEIXIN = "pic_weixin";
/** 弹出地理位置选择器 */
public static final String LOCATION_SELECT = "location_select";
}

View File

@ -55,8 +55,8 @@ public interface WxMpService {
* *
* 详情请见: http://mp.weixin.qq.com/wiki/index.php?title=上传下载多媒体文件 * 详情请见: http://mp.weixin.qq.com/wiki/index.php?title=上传下载多媒体文件
* </pre> * </pre>
* @param mediaType 媒体类型, 请看{@link WxMpConsts} * @param mediaType 媒体类型, 请看{@link me.chanjar.weixin.common.api.WxConsts}
* @param fileType 文件类型,请看{@link WxMpConsts} * @param fileType 文件类型,请看{@link me.chanjar.weixin.common.api.WxConsts}
* @param inputStream 输入流 * @param inputStream 输入流
* @throws WxErrorException * @throws WxErrorException
*/ */

View File

@ -37,12 +37,12 @@ public class WxMpCustomMessage {
/** /**
* <pre> * <pre>
* 请使用 * 请使用
* {@link me.chanjar.weixin.mp.api.WxMpConsts#CUSTOM_MSG_TEXT} * {@link me.chanjar.weixin.common.api.WxConsts#CUSTOM_MSG_TEXT}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#CUSTOM_MSG_IMAGE} * {@link me.chanjar.weixin.common.api.WxConsts#CUSTOM_MSG_IMAGE}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#CUSTOM_MSG_VOICE} * {@link me.chanjar.weixin.common.api.WxConsts#CUSTOM_MSG_VOICE}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#CUSTOM_MSG_MUSIC} * {@link me.chanjar.weixin.common.api.WxConsts#CUSTOM_MSG_MUSIC}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#CUSTOM_MSG_VIDEO} * {@link me.chanjar.weixin.common.api.WxConsts#CUSTOM_MSG_VIDEO}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#CUSTOM_MSG_NEWS} * {@link me.chanjar.weixin.common.api.WxConsts#CUSTOM_MSG_NEWS}
* </pre> * </pre>
* @param msgType * @param msgType
*/ */

View File

@ -25,11 +25,11 @@ public class WxMpMassGroupMessage {
/** /**
* <pre> * <pre>
* 请使用 * 请使用
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_IMAGE} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_IMAGE}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_NEWS} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_NEWS}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_TEXT} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_TEXT}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_VIDEO} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_VIDEO}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_VOICE} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_VOICE}
* 如果msgtype和media_id不匹配的话会返回系统繁忙的错误 * 如果msgtype和media_id不匹配的话会返回系统繁忙的错误
* </pre> * </pre>
* @param msgtype * @param msgtype

View File

@ -12,13 +12,13 @@ import java.util.List;
*/ */
public class WxMpMassNews { public class WxMpMassNews {
private List<WxMassNewsArticle> articles = new ArrayList<WxMassNewsArticle>(); private List<WxMpMassNewsArticle> articles = new ArrayList<WxMpMassNewsArticle>();
public List<WxMassNewsArticle> getArticles() { public List<WxMpMassNewsArticle> getArticles() {
return articles; return articles;
} }
public void addArticle(WxMassNewsArticle article) { public void addArticle(WxMpMassNewsArticle article) {
this.articles.add(article); this.articles.add(article);
} }
@ -40,7 +40,7 @@ public class WxMpMassNews {
* @author chanjarster * @author chanjarster
* *
*/ */
public static class WxMassNewsArticle { public static class WxMpMassNewsArticle {
/** /**
* (必填) 图文消息缩略图的media_id可以在基础支持-上传多媒体文件接口中获得 * (必填) 图文消息缩略图的media_id可以在基础支持-上传多媒体文件接口中获得
*/ */

View File

@ -28,11 +28,11 @@ public class WxMpMassOpenIdsMessage {
/** /**
* <pre> * <pre>
* 请使用 * 请使用
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_IMAGE} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_IMAGE}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_NEWS} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_NEWS}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_TEXT} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_TEXT}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_VIDEO} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_VIDEO}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#MASS_MSG_VOICE} * {@link me.chanjar.weixin.common.api.WxConsts#MASS_MSG_VOICE}
* 如果msgtype和media_id不匹配的话会返回系统繁忙的错误 * 如果msgtype和media_id不匹配的话会返回系统繁忙的错误
* </pre> * </pre>
* @param msgType * @param msgType

View File

@ -1,7 +1,7 @@
package me.chanjar.weixin.mp.bean; package me.chanjar.weixin.mp.bean;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.MediaIdMarshaller; import me.chanjar.weixin.common.util.xml.MediaIdMarshaller;
import me.chanjar.weixin.mp.api.WxMpConsts;
import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAccessorType;
@ -18,7 +18,7 @@ public class WxMpMpXmlOutImageMessage extends WxMpXmlOutMessage {
private String mediaId; private String mediaId;
public WxMpMpXmlOutImageMessage() { public WxMpMpXmlOutImageMessage() {
this.msgType = WxMpConsts.XML_MSG_IMAGE; this.msgType = WxConsts.XML_MSG_IMAGE;
} }
public String getMediaId() { public String getMediaId() {

View File

@ -179,13 +179,13 @@ public class WxMpXmlMessage {
/** /**
* <pre> * <pre>
* 当接受用户消息时,可能会获得以下值: * 当接受用户消息时,可能会获得以下值:
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_TEXT} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_TEXT}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_IMAGE} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_IMAGE}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_VOICE} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_VOICE}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_VIDEO} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_VIDEO}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_LOCATION} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_LOCATION}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_LINK} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_LINK}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_EVENT} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_EVENT}
* </pre> * </pre>
* *
* @return * @return
@ -197,12 +197,12 @@ public class WxMpXmlMessage {
/** /**
* <pre> * <pre>
* 当发送消息的时候使用: * 当发送消息的时候使用:
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_TEXT} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_TEXT}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_IMAGE} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_IMAGE}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_VOICE} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_VOICE}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_VIDEO} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_VIDEO}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_NEWS} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_NEWS}
* {@link me.chanjar.weixin.mp.api.WxMpConsts#XML_MSG_MUSIC} * {@link me.chanjar.weixin.common.api.WxConsts#XML_MSG_MUSIC}
* </pre> * </pre>
* *
* @param msgType * @param msgType

View File

@ -1,7 +1,7 @@
package me.chanjar.weixin.mp.bean; package me.chanjar.weixin.mp.bean;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.AdapterCDATA; import me.chanjar.weixin.common.util.xml.AdapterCDATA;
import me.chanjar.weixin.mp.api.WxMpConsts;
import javax.xml.bind.annotation.*; import javax.xml.bind.annotation.*;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
@ -20,7 +20,7 @@ public class WxMpXmlOutMewsMessage extends WxMpXmlOutMessage {
protected final List<Item> articles = new ArrayList<Item>(); protected final List<Item> articles = new ArrayList<Item>();
public WxMpXmlOutMewsMessage() { public WxMpXmlOutMewsMessage() {
this.msgType = WxMpConsts.XML_MSG_NEWS; this.msgType = WxConsts.XML_MSG_NEWS;
} }
public int getArticleCount() { public int getArticleCount() {

View File

@ -1,7 +1,7 @@
package me.chanjar.weixin.mp.bean; package me.chanjar.weixin.mp.bean;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.AdapterCDATA; import me.chanjar.weixin.common.util.xml.AdapterCDATA;
import me.chanjar.weixin.mp.api.WxMpConsts;
import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAccessorType;
@ -17,7 +17,7 @@ public class WxMpXmlOutMusicMessage extends WxMpXmlOutMessage {
protected final Music music = new Music(); protected final Music music = new Music();
public WxMpXmlOutMusicMessage() { public WxMpXmlOutMusicMessage() {
this.msgType = WxMpConsts.XML_MSG_MUSIC; this.msgType = WxConsts.XML_MSG_MUSIC;
} }
public String getTitle() { public String getTitle() {

View File

@ -1,7 +1,7 @@
package me.chanjar.weixin.mp.bean; package me.chanjar.weixin.mp.bean;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.AdapterCDATA; import me.chanjar.weixin.common.util.xml.AdapterCDATA;
import me.chanjar.weixin.mp.api.WxMpConsts;
import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAccessorType;
@ -18,7 +18,7 @@ public class WxMpXmlOutTextMessage extends WxMpXmlOutMessage {
private String content; private String content;
public WxMpXmlOutTextMessage() { public WxMpXmlOutTextMessage() {
this.msgType = WxMpConsts.XML_MSG_TEXT; this.msgType = WxConsts.XML_MSG_TEXT;
} }
public String getContent() { public String getContent() {

View File

@ -1,7 +1,7 @@
package me.chanjar.weixin.mp.bean; package me.chanjar.weixin.mp.bean;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.AdapterCDATA; import me.chanjar.weixin.common.util.xml.AdapterCDATA;
import me.chanjar.weixin.mp.api.WxMpConsts;
import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAccessorType;
@ -17,7 +17,7 @@ public class WxMpXmlOutVideoMessage extends WxMpXmlOutMessage {
protected final Video video = new Video(); protected final Video video = new Video();
public WxMpXmlOutVideoMessage() { public WxMpXmlOutVideoMessage() {
this.msgType = WxMpConsts.XML_MSG_VIDEO; this.msgType = WxConsts.XML_MSG_VIDEO;
} }
public String getMediaId() { public String getMediaId() {

View File

@ -1,7 +1,7 @@
package me.chanjar.weixin.mp.bean; package me.chanjar.weixin.mp.bean;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.MediaIdMarshaller; import me.chanjar.weixin.common.util.xml.MediaIdMarshaller;
import me.chanjar.weixin.mp.api.WxMpConsts;
import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAccessorType;
@ -18,7 +18,7 @@ public class WxMpXmlOutVoiceMessage extends WxMpXmlOutMessage {
private String mediaId; private String mediaId;
public WxMpXmlOutVoiceMessage() { public WxMpXmlOutVoiceMessage() {
this.msgType = WxMpConsts.XML_MSG_VOICE; this.msgType = WxConsts.XML_MSG_VOICE;
} }
public String getMediaId() { public String getMediaId() {

View File

@ -1,6 +1,6 @@
package me.chanjar.weixin.mp.bean.custombuilder; package me.chanjar.weixin.mp.bean.custombuilder;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpCustomMessage; import me.chanjar.weixin.mp.bean.WxMpCustomMessage;
/** /**
@ -15,7 +15,7 @@ public final class ImageBuilder extends BaseBuilder<ImageBuilder> {
private String mediaId; private String mediaId;
public ImageBuilder() { public ImageBuilder() {
this.msgType = WxMpConsts.CUSTOM_MSG_IMAGE; this.msgType = WxConsts.CUSTOM_MSG_IMAGE;
} }
public ImageBuilder mediaId(String media_id) { public ImageBuilder mediaId(String media_id) {

View File

@ -1,6 +1,6 @@
package me.chanjar.weixin.mp.bean.custombuilder; package me.chanjar.weixin.mp.bean.custombuilder;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpCustomMessage; import me.chanjar.weixin.mp.bean.WxMpCustomMessage;
/** /**
@ -24,7 +24,7 @@ public final class MusicBuilder extends BaseBuilder<MusicBuilder> {
private String hqMusicUrl; private String hqMusicUrl;
public MusicBuilder() { public MusicBuilder() {
this.msgType = WxMpConsts.CUSTOM_MSG_MUSIC; this.msgType = WxConsts.CUSTOM_MSG_MUSIC;
} }
public MusicBuilder musicUrl(String musicurl) { public MusicBuilder musicUrl(String musicurl) {

View File

@ -1,6 +1,6 @@
package me.chanjar.weixin.mp.bean.custombuilder; package me.chanjar.weixin.mp.bean.custombuilder;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpCustomMessage; import me.chanjar.weixin.mp.bean.WxMpCustomMessage;
import java.util.ArrayList; import java.util.ArrayList;
@ -20,7 +20,7 @@ public final class NewsBuilder extends BaseBuilder<NewsBuilder> {
private List<WxMpCustomMessage.WxArticle> articles = new ArrayList<WxMpCustomMessage.WxArticle>(); private List<WxMpCustomMessage.WxArticle> articles = new ArrayList<WxMpCustomMessage.WxArticle>();
public NewsBuilder() { public NewsBuilder() {
this.msgType = WxMpConsts.CUSTOM_MSG_NEWS; this.msgType = WxConsts.CUSTOM_MSG_NEWS;
} }
public NewsBuilder addArticle(WxMpCustomMessage.WxArticle article) { public NewsBuilder addArticle(WxMpCustomMessage.WxArticle article) {

View File

@ -1,6 +1,6 @@
package me.chanjar.weixin.mp.bean.custombuilder; package me.chanjar.weixin.mp.bean.custombuilder;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpCustomMessage; import me.chanjar.weixin.mp.bean.WxMpCustomMessage;
/** /**
@ -15,7 +15,7 @@ public final class TextBuilder extends BaseBuilder<TextBuilder> {
private String content; private String content;
public TextBuilder() { public TextBuilder() {
this.msgType = WxMpConsts.CUSTOM_MSG_TEXT; this.msgType = WxConsts.CUSTOM_MSG_TEXT;
} }
public TextBuilder content(String content) { public TextBuilder content(String content) {

View File

@ -1,6 +1,6 @@
package me.chanjar.weixin.mp.bean.custombuilder; package me.chanjar.weixin.mp.bean.custombuilder;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpCustomMessage; import me.chanjar.weixin.mp.bean.WxMpCustomMessage;
/** /**
@ -24,7 +24,7 @@ public final class VideoBuilder extends BaseBuilder<VideoBuilder> {
private String thumbMediaId; private String thumbMediaId;
public VideoBuilder() { public VideoBuilder() {
this.msgType = WxMpConsts.CUSTOM_MSG_VIDEO; this.msgType = WxConsts.CUSTOM_MSG_VIDEO;
} }
public VideoBuilder mediaId(String mediaId) { public VideoBuilder mediaId(String mediaId) {

View File

@ -1,6 +1,6 @@
package me.chanjar.weixin.mp.bean.custombuilder; package me.chanjar.weixin.mp.bean.custombuilder;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpCustomMessage; import me.chanjar.weixin.mp.bean.WxMpCustomMessage;
/** /**
@ -15,7 +15,7 @@ public final class VoiceBuilder extends BaseBuilder<VoiceBuilder> {
private String mediaId; private String mediaId;
public VoiceBuilder() { public VoiceBuilder() {
this.msgType = WxMpConsts.CUSTOM_MSG_VOICE; this.msgType = WxConsts.CUSTOM_MSG_VOICE;
} }
public VoiceBuilder mediaId(String media_id) { public VoiceBuilder mediaId(String media_id) {

View File

@ -9,7 +9,7 @@
package me.chanjar.weixin.mp.util.json; package me.chanjar.weixin.mp.util.json;
import com.google.gson.*; import com.google.gson.*;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpCustomMessage; import me.chanjar.weixin.mp.bean.WxMpCustomMessage;
import java.lang.reflect.Type; import java.lang.reflect.Type;
@ -26,25 +26,25 @@ public class WxMpCustomMessageGsonAdapter implements JsonSerializer<WxMpCustomMe
messageJson.addProperty("touser", message.getToUser()); messageJson.addProperty("touser", message.getToUser());
messageJson.addProperty("msgtype", message.getMsgType()); messageJson.addProperty("msgtype", message.getMsgType());
if (WxMpConsts.CUSTOM_MSG_TEXT.equals(message.getMsgType())) { if (WxConsts.CUSTOM_MSG_TEXT.equals(message.getMsgType())) {
JsonObject text = new JsonObject(); JsonObject text = new JsonObject();
text.addProperty("content", message.getContent()); text.addProperty("content", message.getContent());
messageJson.add("text", text); messageJson.add("text", text);
} }
if (WxMpConsts.CUSTOM_MSG_IMAGE.equals(message.getMsgType())) { if (WxConsts.CUSTOM_MSG_IMAGE.equals(message.getMsgType())) {
JsonObject image = new JsonObject(); JsonObject image = new JsonObject();
image.addProperty("media_id", message.getMediaId()); image.addProperty("media_id", message.getMediaId());
messageJson.add("image", image); messageJson.add("image", image);
} }
if (WxMpConsts.CUSTOM_MSG_VOICE.equals(message.getMsgType())) { if (WxConsts.CUSTOM_MSG_VOICE.equals(message.getMsgType())) {
JsonObject voice = new JsonObject(); JsonObject voice = new JsonObject();
voice.addProperty("media_id", message.getMediaId()); voice.addProperty("media_id", message.getMediaId());
messageJson.add("voice", voice); messageJson.add("voice", voice);
} }
if (WxMpConsts.CUSTOM_MSG_VIDEO.equals(message.getMsgType())) { if (WxConsts.CUSTOM_MSG_VIDEO.equals(message.getMsgType())) {
JsonObject video = new JsonObject(); JsonObject video = new JsonObject();
video.addProperty("media_id", message.getMediaId()); video.addProperty("media_id", message.getMediaId());
video.addProperty("thumb_media_id", message.getThumbMediaId()); video.addProperty("thumb_media_id", message.getThumbMediaId());
@ -53,7 +53,7 @@ public class WxMpCustomMessageGsonAdapter implements JsonSerializer<WxMpCustomMe
messageJson.add("video", video); messageJson.add("video", video);
} }
if (WxMpConsts.CUSTOM_MSG_MUSIC.equals(message.getMsgType())) { if (WxConsts.CUSTOM_MSG_MUSIC.equals(message.getMsgType())) {
JsonObject music = new JsonObject(); JsonObject music = new JsonObject();
music.addProperty("title", message.getTitle()); music.addProperty("title", message.getTitle());
music.addProperty("description", message.getDescription()); music.addProperty("description", message.getDescription());
@ -63,7 +63,7 @@ public class WxMpCustomMessageGsonAdapter implements JsonSerializer<WxMpCustomMe
messageJson.add("music", music); messageJson.add("music", music);
} }
if (WxMpConsts.CUSTOM_MSG_NEWS.equals(message.getMsgType())) { if (WxConsts.CUSTOM_MSG_NEWS.equals(message.getMsgType())) {
JsonArray articleJsonArray = new JsonArray(); JsonArray articleJsonArray = new JsonArray();
for (WxMpCustomMessage.WxArticle article : message.getArticles()) { for (WxMpCustomMessage.WxArticle article : message.getArticles()) {
JsonObject articleJson = new JsonObject(); JsonObject articleJson = new JsonObject();

View File

@ -12,7 +12,7 @@ import com.google.gson.JsonElement;
import com.google.gson.JsonObject; import com.google.gson.JsonObject;
import com.google.gson.JsonSerializationContext; import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer; import com.google.gson.JsonSerializer;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpMassGroupMessage; import me.chanjar.weixin.mp.bean.WxMpMassGroupMessage;
import java.lang.reflect.Type; import java.lang.reflect.Type;
@ -31,30 +31,30 @@ public class WxMpMassMessageGsonAdapter implements JsonSerializer<WxMpMassGroupM
filter.addProperty("group_id", message.getGroupId()); filter.addProperty("group_id", message.getGroupId());
messageJson.add("filter", filter); messageJson.add("filter", filter);
if (WxMpConsts.MASS_MSG_NEWS.equals(message.getMsgtype())) { if (WxConsts.MASS_MSG_NEWS.equals(message.getMsgtype())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("media_id", message.getMediaId()); sub.addProperty("media_id", message.getMediaId());
messageJson.add(WxMpConsts.MASS_MSG_NEWS, sub); messageJson.add(WxConsts.MASS_MSG_NEWS, sub);
} }
if (WxMpConsts.MASS_MSG_TEXT.equals(message.getMsgtype())) { if (WxConsts.MASS_MSG_TEXT.equals(message.getMsgtype())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("content", message.getContent()); sub.addProperty("content", message.getContent());
messageJson.add(WxMpConsts.MASS_MSG_TEXT, sub); messageJson.add(WxConsts.MASS_MSG_TEXT, sub);
} }
if (WxMpConsts.MASS_MSG_VOICE.equals(message.getMsgtype())) { if (WxConsts.MASS_MSG_VOICE.equals(message.getMsgtype())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("media_id", message.getMediaId()); sub.addProperty("media_id", message.getMediaId());
messageJson.add(WxMpConsts.MASS_MSG_VOICE, sub); messageJson.add(WxConsts.MASS_MSG_VOICE, sub);
} }
if (WxMpConsts.MASS_MSG_IMAGE.equals(message.getMsgtype())) { if (WxConsts.MASS_MSG_IMAGE.equals(message.getMsgtype())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("media_id", message.getMediaId()); sub.addProperty("media_id", message.getMediaId());
messageJson.add(WxMpConsts.MASS_MSG_IMAGE, sub); messageJson.add(WxConsts.MASS_MSG_IMAGE, sub);
} }
if (WxMpConsts.MASS_MSG_VIDEO.equals(message.getMsgtype())) { if (WxConsts.MASS_MSG_VIDEO.equals(message.getMsgtype())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("media_id", message.getMediaId()); sub.addProperty("media_id", message.getMediaId());
messageJson.add(WxMpConsts.MASS_MSG_VIDEO, sub); messageJson.add(WxConsts.MASS_MSG_VIDEO, sub);
} }
messageJson.addProperty("msgtype", message.getMsgtype()); messageJson.addProperty("msgtype", message.getMsgtype());
return messageJson; return messageJson;

View File

@ -24,7 +24,7 @@ public class WxMpMassNewsGsonAdapter implements JsonSerializer<WxMpMassNews> {
JsonObject newsJson = new JsonObject(); JsonObject newsJson = new JsonObject();
JsonArray articleJsonArray = new JsonArray(); JsonArray articleJsonArray = new JsonArray();
for (WxMpMassNews.WxMassNewsArticle article : message.getArticles()) { for (WxMpMassNews.WxMpMassNewsArticle article : message.getArticles()) {
JsonObject articleJson = new JsonObject(); JsonObject articleJson = new JsonObject();
articleJson.addProperty("thumb_media_id", article.getThumbMediaId()); articleJson.addProperty("thumb_media_id", article.getThumbMediaId());
articleJson.addProperty("title", article.getTitle()); articleJson.addProperty("title", article.getTitle());

View File

@ -9,7 +9,7 @@
package me.chanjar.weixin.mp.util.json; package me.chanjar.weixin.mp.util.json;
import com.google.gson.*; import com.google.gson.*;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpMassOpenIdsMessage; import me.chanjar.weixin.mp.bean.WxMpMassOpenIdsMessage;
import java.lang.reflect.Type; import java.lang.reflect.Type;
@ -30,30 +30,30 @@ public class WxMpMassOpenIdsMessageGsonAdapter implements JsonSerializer<WxMpMas
} }
messageJson.add("touser", toUsers); messageJson.add("touser", toUsers);
if (WxMpConsts.MASS_MSG_NEWS.equals(message.getMsgType())) { if (WxConsts.MASS_MSG_NEWS.equals(message.getMsgType())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("media_id", message.getMediaId()); sub.addProperty("media_id", message.getMediaId());
messageJson.add(WxMpConsts.MASS_MSG_NEWS, sub); messageJson.add(WxConsts.MASS_MSG_NEWS, sub);
} }
if (WxMpConsts.MASS_MSG_TEXT.equals(message.getMsgType())) { if (WxConsts.MASS_MSG_TEXT.equals(message.getMsgType())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("content", message.getContent()); sub.addProperty("content", message.getContent());
messageJson.add(WxMpConsts.MASS_MSG_TEXT, sub); messageJson.add(WxConsts.MASS_MSG_TEXT, sub);
} }
if (WxMpConsts.MASS_MSG_VOICE.equals(message.getMsgType())) { if (WxConsts.MASS_MSG_VOICE.equals(message.getMsgType())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("media_id", message.getMediaId()); sub.addProperty("media_id", message.getMediaId());
messageJson.add(WxMpConsts.MASS_MSG_VOICE, sub); messageJson.add(WxConsts.MASS_MSG_VOICE, sub);
} }
if (WxMpConsts.MASS_MSG_IMAGE.equals(message.getMsgType())) { if (WxConsts.MASS_MSG_IMAGE.equals(message.getMsgType())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("media_id", message.getMediaId()); sub.addProperty("media_id", message.getMediaId());
messageJson.add(WxMpConsts.MASS_MSG_IMAGE, sub); messageJson.add(WxConsts.MASS_MSG_IMAGE, sub);
} }
if (WxMpConsts.MASS_MSG_VIDEO.equals(message.getMsgType())) { if (WxConsts.MASS_MSG_VIDEO.equals(message.getMsgType())) {
JsonObject sub = new JsonObject(); JsonObject sub = new JsonObject();
sub.addProperty("media_id", message.getMediaId()); sub.addProperty("media_id", message.getMediaId());
messageJson.add(WxMpConsts.MASS_MSG_VIDEO, sub); messageJson.add(WxConsts.MASS_MSG_VIDEO, sub);
} }
messageJson.addProperty("msgtype", message.getMsgType()); messageJson.addProperty("msgtype", message.getMsgType());
return messageJson; return messageJson;

View File

@ -1,5 +1,6 @@
package me.chanjar.weixin.mp.api; package me.chanjar.weixin.mp.api;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpCustomMessage; import me.chanjar.weixin.mp.bean.WxMpCustomMessage;
import org.testng.annotations.Guice; import org.testng.annotations.Guice;
import org.testng.annotations.Test; import org.testng.annotations.Test;
@ -23,7 +24,7 @@ public class WxMpCustomMessageAPITest {
public void testSendCustomMessage() throws WxErrorException { public void testSendCustomMessage() throws WxErrorException {
ApiTestModule.WxXmlMpInMemoryConfigStorage configStorage = (ApiTestModule.WxXmlMpInMemoryConfigStorage) wxService.wxMpConfigStorage; ApiTestModule.WxXmlMpInMemoryConfigStorage configStorage = (ApiTestModule.WxXmlMpInMemoryConfigStorage) wxService.wxMpConfigStorage;
WxMpCustomMessage message = new WxMpCustomMessage(); WxMpCustomMessage message = new WxMpCustomMessage();
message.setMsgType(WxMpConsts.CUSTOM_MSG_TEXT); message.setMsgType(WxConsts.CUSTOM_MSG_TEXT);
message.setToUser(configStorage.getOpenId()); message.setToUser(configStorage.getOpenId());
message.setContent("欢迎欢迎,热烈欢迎\n换行测试\n超链接:<a href=\"http://www.baidu.com\">Hello World</a>"); message.setContent("欢迎欢迎,热烈欢迎\n换行测试\n超链接:<a href=\"http://www.baidu.com\">Hello World</a>");

View File

@ -3,6 +3,7 @@ package me.chanjar.weixin.mp.api;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.bean.result.WxMediaUploadResult; import me.chanjar.weixin.common.bean.result.WxMediaUploadResult;
import me.chanjar.weixin.mp.bean.WxMpMassGroupMessage; import me.chanjar.weixin.mp.bean.WxMpMassGroupMessage;
import me.chanjar.weixin.mp.bean.WxMpMassNews; import me.chanjar.weixin.mp.bean.WxMpMassNews;
@ -15,7 +16,6 @@ import org.testng.annotations.DataProvider;
import org.testng.annotations.Guice; import org.testng.annotations.Guice;
import org.testng.annotations.Test; import org.testng.annotations.Test;
import me.chanjar.weixin.mp.bean.WxMpMassNews.WxMassNewsArticle;
import me.chanjar.weixin.common.exception.WxErrorException; import me.chanjar.weixin.common.exception.WxErrorException;
import com.google.inject.Inject; import com.google.inject.Inject;
@ -37,7 +37,7 @@ public class WxMpMassMessageAPITest {
// 发送群发消息 // 发送群发消息
ApiTestModule.WxXmlMpInMemoryConfigStorage configProvider = (ApiTestModule.WxXmlMpInMemoryConfigStorage) wxService.wxMpConfigStorage; ApiTestModule.WxXmlMpInMemoryConfigStorage configProvider = (ApiTestModule.WxXmlMpInMemoryConfigStorage) wxService.wxMpConfigStorage;
WxMpMassOpenIdsMessage massMessage = new WxMpMassOpenIdsMessage(); WxMpMassOpenIdsMessage massMessage = new WxMpMassOpenIdsMessage();
massMessage.setMsgType(WxMpConsts.MASS_MSG_TEXT); massMessage.setMsgType(WxConsts.MASS_MSG_TEXT);
massMessage.setContent("测试群发消息\n欢迎欢迎热烈欢迎\n换行测试\n超链接:<a href=\"http://www.baidu.com\">Hello World</a>"); massMessage.setContent("测试群发消息\n欢迎欢迎热烈欢迎\n换行测试\n超链接:<a href=\"http://www.baidu.com\">Hello World</a>");
massMessage.getToUsers().add(configProvider.getOpenId()); massMessage.getToUsers().add(configProvider.getOpenId());
@ -63,7 +63,7 @@ public class WxMpMassMessageAPITest {
@Test @Test
public void testTextMassGroupMessageSend() throws WxErrorException { public void testTextMassGroupMessageSend() throws WxErrorException {
WxMpMassGroupMessage massMessage = new WxMpMassGroupMessage(); WxMpMassGroupMessage massMessage = new WxMpMassGroupMessage();
massMessage.setMsgtype(WxMpConsts.MASS_MSG_TEXT); massMessage.setMsgtype(WxConsts.MASS_MSG_TEXT);
massMessage.setContent("测试群发消息\n欢迎欢迎热烈欢迎\n换行测试\n超链接:<a href=\"http://www.baidu.com\">Hello World</a>"); massMessage.setContent("测试群发消息\n欢迎欢迎热烈欢迎\n换行测试\n超链接:<a href=\"http://www.baidu.com\">Hello World</a>");
massMessage.setGroupId(wxService.groupGet().get(0).getId()); massMessage.setGroupId(wxService.groupGet().get(0).getId());
@ -93,7 +93,7 @@ public class WxMpMassMessageAPITest {
{ {
// 上传视频到媒体库 // 上传视频到媒体库
InputStream inputStream = ClassLoader.getSystemResourceAsStream("mm.mp4"); InputStream inputStream = ClassLoader.getSystemResourceAsStream("mm.mp4");
WxMediaUploadResult uploadMediaRes = wxService.mediaUpload(WxMpConsts.MEDIA_VIDEO, WxMpConsts.FILE_MP4, inputStream); WxMediaUploadResult uploadMediaRes = wxService.mediaUpload(WxConsts.MEDIA_VIDEO, WxConsts.FILE_MP4, inputStream);
Assert.assertNotNull(uploadMediaRes); Assert.assertNotNull(uploadMediaRes);
Assert.assertNotNull(uploadMediaRes.getMediaId()); Assert.assertNotNull(uploadMediaRes.getMediaId());
@ -105,27 +105,27 @@ public class WxMpMassMessageAPITest {
WxMpMassUploadResult uploadResult = wxService.massVideoUpload(video); WxMpMassUploadResult uploadResult = wxService.massVideoUpload(video);
Assert.assertNotNull(uploadResult); Assert.assertNotNull(uploadResult);
Assert.assertNotNull(uploadResult.getMediaId()); Assert.assertNotNull(uploadResult.getMediaId());
messages[0] = new Object[] { WxMpConsts.MASS_MSG_VIDEO, uploadResult.getMediaId() }; messages[0] = new Object[] { WxConsts.MASS_MSG_VIDEO, uploadResult.getMediaId() };
} }
/** /**
* 图片素材 * 图片素材
*/ */
{ {
InputStream inputStream = ClassLoader.getSystemResourceAsStream("mm.jpeg"); InputStream inputStream = ClassLoader.getSystemResourceAsStream("mm.jpeg");
WxMediaUploadResult uploadMediaRes = wxService.mediaUpload(WxMpConsts.MEDIA_IMAGE, WxMpConsts.FILE_JPG, inputStream); WxMediaUploadResult uploadMediaRes = wxService.mediaUpload(WxConsts.MEDIA_IMAGE, WxConsts.FILE_JPG, inputStream);
Assert.assertNotNull(uploadMediaRes); Assert.assertNotNull(uploadMediaRes);
Assert.assertNotNull(uploadMediaRes.getMediaId()); Assert.assertNotNull(uploadMediaRes.getMediaId());
messages[1] = new Object[] { WxMpConsts.MASS_MSG_IMAGE, uploadMediaRes.getMediaId() }; messages[1] = new Object[] { WxConsts.MASS_MSG_IMAGE, uploadMediaRes.getMediaId() };
} }
/** /**
* 语音素材 * 语音素材
*/ */
{ {
InputStream inputStream = ClassLoader.getSystemResourceAsStream("mm.mp3"); InputStream inputStream = ClassLoader.getSystemResourceAsStream("mm.mp3");
WxMediaUploadResult uploadMediaRes = wxService.mediaUpload(WxMpConsts.MEDIA_VOICE, WxMpConsts.FILE_MP3, inputStream); WxMediaUploadResult uploadMediaRes = wxService.mediaUpload(WxConsts.MEDIA_VOICE, WxConsts.FILE_MP3, inputStream);
Assert.assertNotNull(uploadMediaRes); Assert.assertNotNull(uploadMediaRes);
Assert.assertNotNull(uploadMediaRes.getMediaId()); Assert.assertNotNull(uploadMediaRes.getMediaId());
messages[2] = new Object[] { WxMpConsts.MASS_MSG_VOICE, uploadMediaRes.getMediaId() }; messages[2] = new Object[] { WxConsts.MASS_MSG_VOICE, uploadMediaRes.getMediaId() };
} }
/** /**
* 图文素材 * 图文素材
@ -133,19 +133,19 @@ public class WxMpMassMessageAPITest {
{ {
// 上传照片到媒体库 // 上传照片到媒体库
InputStream inputStream = ClassLoader.getSystemResourceAsStream("mm.jpeg"); InputStream inputStream = ClassLoader.getSystemResourceAsStream("mm.jpeg");
WxMediaUploadResult uploadMediaRes = wxService.mediaUpload(WxMpConsts.MEDIA_IMAGE, WxMpConsts.FILE_JPG, inputStream); WxMediaUploadResult uploadMediaRes = wxService.mediaUpload(WxConsts.MEDIA_IMAGE, WxConsts.FILE_JPG, inputStream);
Assert.assertNotNull(uploadMediaRes); Assert.assertNotNull(uploadMediaRes);
Assert.assertNotNull(uploadMediaRes.getMediaId()); Assert.assertNotNull(uploadMediaRes.getMediaId());
// 上传图文消息 // 上传图文消息
WxMpMassNews news = new WxMpMassNews(); WxMpMassNews news = new WxMpMassNews();
WxMassNewsArticle article1 = new WxMassNewsArticle(); WxMpMassNews.WxMpMassNewsArticle article1 = new WxMpMassNews.WxMpMassNewsArticle();
article1.setTitle("标题1"); article1.setTitle("标题1");
article1.setContent("内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1"); article1.setContent("内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1内容1");
article1.setThumbMediaId(uploadMediaRes.getMediaId()); article1.setThumbMediaId(uploadMediaRes.getMediaId());
news.addArticle(article1); news.addArticle(article1);
WxMassNewsArticle article2 = new WxMassNewsArticle(); WxMpMassNews.WxMpMassNewsArticle article2 = new WxMpMassNews.WxMpMassNewsArticle();
article2.setTitle("标题2"); article2.setTitle("标题2");
article2.setContent("内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2"); article2.setContent("内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2内容2");
article2.setThumbMediaId(uploadMediaRes.getMediaId()); article2.setThumbMediaId(uploadMediaRes.getMediaId());
@ -158,7 +158,7 @@ public class WxMpMassMessageAPITest {
WxMpMassUploadResult massUploadResult = wxService.massNewsUpload(news); WxMpMassUploadResult massUploadResult = wxService.massNewsUpload(news);
Assert.assertNotNull(massUploadResult); Assert.assertNotNull(massUploadResult);
Assert.assertNotNull(uploadMediaRes.getMediaId()); Assert.assertNotNull(uploadMediaRes.getMediaId());
messages[3] = new Object[] { WxMpConsts.MASS_MSG_NEWS, massUploadResult.getMediaId() }; messages[3] = new Object[] { WxConsts.MASS_MSG_NEWS, massUploadResult.getMediaId() };
} }
return messages; return messages;
} }

View File

@ -5,6 +5,7 @@ import java.io.InputStream;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.bean.result.WxMediaUploadResult; import me.chanjar.weixin.common.bean.result.WxMediaUploadResult;
import org.testng.Assert; import org.testng.Assert;
import org.testng.annotations.DataProvider; import org.testng.annotations.DataProvider;
@ -48,10 +49,10 @@ public class WxMpMediaAPITest {
@DataProvider @DataProvider
public Object[][] uploadMedia() { public Object[][] uploadMedia() {
return new Object[][] { return new Object[][] {
new Object[] { WxMpConsts.MEDIA_IMAGE, WxMpConsts.FILE_JPG, "mm.jpeg" }, new Object[] { WxConsts.MEDIA_IMAGE, WxConsts.FILE_JPG, "mm.jpeg" },
new Object[] { WxMpConsts.MEDIA_VOICE, WxMpConsts.FILE_MP3, "mm.mp3" }, new Object[] { WxConsts.MEDIA_VOICE, WxConsts.FILE_MP3, "mm.mp3" },
new Object[] { WxMpConsts.MEDIA_VIDEO, WxMpConsts.FILE_MP4, "mm.mp4" }, new Object[] { WxConsts.MEDIA_VIDEO, WxConsts.FILE_MP4, "mm.mp4" },
new Object[] { WxMpConsts.MEDIA_THUMB, WxMpConsts.FILE_JPG, "mm.jpeg" } new Object[] { WxConsts.MEDIA_THUMB, WxConsts.FILE_JPG, "mm.jpeg" }
}; };
} }

View File

@ -2,6 +2,7 @@ package me.chanjar.weixin.mp.api;
import javax.xml.bind.JAXBException; import javax.xml.bind.JAXBException;
import me.chanjar.weixin.common.api.WxConsts;
import org.testng.Assert; import org.testng.Assert;
import org.testng.annotations.DataProvider; import org.testng.annotations.DataProvider;
import org.testng.annotations.Guice; import org.testng.annotations.Guice;
@ -44,12 +45,12 @@ public class WxMpMenuAPITest {
public Object[][] getMenu() throws JAXBException { public Object[][] getMenu() throws JAXBException {
WxMenu menu = new WxMenu(); WxMenu menu = new WxMenu();
WxMenuButton button1 = new WxMenuButton(); WxMenuButton button1 = new WxMenuButton();
button1.setType(WxMpConsts.BUTTON_CLICK); button1.setType(WxConsts.BUTTON_CLICK);
button1.setName("今日歌曲"); button1.setName("今日歌曲");
button1.setKey("V1001_TODAY_MUSIC"); button1.setKey("V1001_TODAY_MUSIC");
WxMenuButton button2 = new WxMenuButton(); WxMenuButton button2 = new WxMenuButton();
button2.setType(WxMpConsts.BUTTON_CLICK); button2.setType(WxConsts.BUTTON_CLICK);
button2.setName("歌手简介"); button2.setName("歌手简介");
button2.setKey("V1001_TODAY_SINGER"); button2.setKey("V1001_TODAY_SINGER");
@ -61,17 +62,17 @@ public class WxMpMenuAPITest {
menu.getButtons().add(button3); menu.getButtons().add(button3);
WxMenuButton button31 = new WxMenuButton(); WxMenuButton button31 = new WxMenuButton();
button31.setType(WxMpConsts.BUTTON_VIEW); button31.setType(WxConsts.BUTTON_VIEW);
button31.setName("搜索"); button31.setName("搜索");
button31.setUrl("http://www.soso.com/"); button31.setUrl("http://www.soso.com/");
WxMenuButton button32 = new WxMenuButton(); WxMenuButton button32 = new WxMenuButton();
button32.setType(WxMpConsts.BUTTON_VIEW); button32.setType(WxConsts.BUTTON_VIEW);
button32.setName("视频"); button32.setName("视频");
button32.setUrl("http://v.qq.com/"); button32.setUrl("http://v.qq.com/");
WxMenuButton button33 = new WxMenuButton(); WxMenuButton button33 = new WxMenuButton();
button33.setType(WxMpConsts.BUTTON_CLICK); button33.setType(WxConsts.BUTTON_CLICK);
button33.setName("赞一下我们"); button33.setName("赞一下我们");
button33.setKey("V1001_GOOD"); button33.setKey("V1001_GOOD");

View File

@ -2,6 +2,7 @@ package me.chanjar.weixin.mp.api;
import java.util.Map; import java.util.Map;
import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.mp.bean.WxMpXmlMessage; import me.chanjar.weixin.mp.bean.WxMpXmlMessage;
import me.chanjar.weixin.mp.bean.WxMpXmlOutMessage; import me.chanjar.weixin.mp.bean.WxMpXmlOutMessage;
import org.testng.Assert; import org.testng.Assert;
@ -21,21 +22,21 @@ public class WxMpMessageRouterTest {
router router
.rule() .rule()
.async(async) .async(async)
.msgType(WxMpConsts.XML_MSG_TEXT).event(WxMpConsts.EVT_CLICK).eventKey("KEY_1").content("CONTENT_1") .msgType(WxConsts.XML_MSG_TEXT).event(WxConsts.EVT_CLICK).eventKey("KEY_1").content("CONTENT_1")
.handler(new WxEchoMpMessageHandler(sb, "COMBINE_4")) .handler(new WxEchoMpMessageHandler(sb, "COMBINE_4"))
.end() .end()
.rule() .rule()
.async(async) .async(async)
.msgType(WxMpConsts.XML_MSG_TEXT).event(WxMpConsts.EVT_CLICK).eventKey("KEY_1") .msgType(WxConsts.XML_MSG_TEXT).event(WxConsts.EVT_CLICK).eventKey("KEY_1")
.handler(new WxEchoMpMessageHandler(sb, "COMBINE_3")) .handler(new WxEchoMpMessageHandler(sb, "COMBINE_3"))
.end() .end()
.rule() .rule()
.async(async) .async(async)
.msgType(WxMpConsts.XML_MSG_TEXT).event(WxMpConsts.EVT_CLICK) .msgType(WxConsts.XML_MSG_TEXT).event(WxConsts.EVT_CLICK)
.handler(new WxEchoMpMessageHandler(sb, "COMBINE_2")) .handler(new WxEchoMpMessageHandler(sb, "COMBINE_2"))
.end() .end()
.rule().async(async).msgType(WxMpConsts.XML_MSG_TEXT).handler(new WxEchoMpMessageHandler(sb, WxMpConsts.XML_MSG_TEXT)).end() .rule().async(async).msgType(WxConsts.XML_MSG_TEXT).handler(new WxEchoMpMessageHandler(sb, WxConsts.XML_MSG_TEXT)).end()
.rule().async(async).event(WxMpConsts.EVT_CLICK).handler(new WxEchoMpMessageHandler(sb, WxMpConsts.EVT_CLICK)).end() .rule().async(async).event(WxConsts.EVT_CLICK).handler(new WxEchoMpMessageHandler(sb, WxConsts.EVT_CLICK)).end()
.rule().async(async).eventKey("KEY_1").handler(new WxEchoMpMessageHandler(sb, "KEY_1")).end() .rule().async(async).eventKey("KEY_1").handler(new WxEchoMpMessageHandler(sb, "KEY_1")).end()
.rule().async(async).content("CONTENT_1").handler(new WxEchoMpMessageHandler(sb, "CONTENT_1")).end() .rule().async(async).content("CONTENT_1").handler(new WxEchoMpMessageHandler(sb, "CONTENT_1")).end()
.rule().async(async).rContent(".*bc.*").handler(new WxEchoMpMessageHandler(sb, "abcd")).end() .rule().async(async).rContent(".*bc.*").handler(new WxEchoMpMessageHandler(sb, "abcd")).end()
@ -91,10 +92,10 @@ public class WxMpMessageRouterTest {
@DataProvider(name="messages-1") @DataProvider(name="messages-1")
public Object[][] messages2() { public Object[][] messages2() {
WxMpXmlMessage message1 = new WxMpXmlMessage(); WxMpXmlMessage message1 = new WxMpXmlMessage();
message1.setMsgType(WxMpConsts.XML_MSG_TEXT); message1.setMsgType(WxConsts.XML_MSG_TEXT);
WxMpXmlMessage message2 = new WxMpXmlMessage(); WxMpXmlMessage message2 = new WxMpXmlMessage();
message2.setEvent(WxMpConsts.EVT_CLICK); message2.setEvent(WxConsts.EVT_CLICK);
WxMpXmlMessage message3 = new WxMpXmlMessage(); WxMpXmlMessage message3 = new WxMpXmlMessage();
message3.setEventKey("KEY_1"); message3.setEventKey("KEY_1");
@ -109,23 +110,23 @@ public class WxMpMessageRouterTest {
message6.setContent("abcd"); message6.setContent("abcd");
WxMpXmlMessage c2 = new WxMpXmlMessage(); WxMpXmlMessage c2 = new WxMpXmlMessage();
c2.setMsgType(WxMpConsts.XML_MSG_TEXT); c2.setMsgType(WxConsts.XML_MSG_TEXT);
c2.setEvent(WxMpConsts.EVT_CLICK); c2.setEvent(WxConsts.EVT_CLICK);
WxMpXmlMessage c3 = new WxMpXmlMessage(); WxMpXmlMessage c3 = new WxMpXmlMessage();
c3.setMsgType(WxMpConsts.XML_MSG_TEXT); c3.setMsgType(WxConsts.XML_MSG_TEXT);
c3.setEvent(WxMpConsts.EVT_CLICK); c3.setEvent(WxConsts.EVT_CLICK);
c3.setEventKey("KEY_1"); c3.setEventKey("KEY_1");
WxMpXmlMessage c4 = new WxMpXmlMessage(); WxMpXmlMessage c4 = new WxMpXmlMessage();
c4.setMsgType(WxMpConsts.XML_MSG_TEXT); c4.setMsgType(WxConsts.XML_MSG_TEXT);
c4.setEvent(WxMpConsts.EVT_CLICK); c4.setEvent(WxConsts.EVT_CLICK);
c4.setEventKey("KEY_1"); c4.setEventKey("KEY_1");
c4.setContent("CONTENT_1"); c4.setContent("CONTENT_1");
return new Object[][] { return new Object[][] {
new Object[] { message1, WxMpConsts.XML_MSG_TEXT + "," }, new Object[] { message1, WxConsts.XML_MSG_TEXT + "," },
new Object[] { message2, WxMpConsts.EVT_CLICK + "," }, new Object[] { message2, WxConsts.EVT_CLICK + "," },
new Object[] { message3, "KEY_1," }, new Object[] { message3, "KEY_1," },
new Object[] { message4, "CONTENT_1," }, new Object[] { message4, "CONTENT_1," },
new Object[] { message5, "ALL," }, new Object[] { message5, "ALL," },

View File

@ -1,6 +1,6 @@
package me.chanjar.weixin.mp.bean; package me.chanjar.weixin.mp.bean;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import org.testng.Assert; import org.testng.Assert;
import org.testng.annotations.Test; import org.testng.annotations.Test;
@ -12,7 +12,7 @@ public class WxMpCustomMessageTest {
public void testTextReply() { public void testTextReply() {
WxMpCustomMessage reply = new WxMpCustomMessage(); WxMpCustomMessage reply = new WxMpCustomMessage();
reply.setToUser("OPENID"); reply.setToUser("OPENID");
reply.setMsgType(WxMpConsts.CUSTOM_MSG_TEXT); reply.setMsgType(WxConsts.CUSTOM_MSG_TEXT);
reply.setContent("sfsfdsdf"); reply.setContent("sfsfdsdf");
Assert.assertEquals(reply.toJson(), "{\"touser\":\"OPENID\",\"msgtype\":\"text\",\"text\":{\"content\":\"sfsfdsdf\"}}"); Assert.assertEquals(reply.toJson(), "{\"touser\":\"OPENID\",\"msgtype\":\"text\",\"text\":{\"content\":\"sfsfdsdf\"}}");
} }
@ -25,7 +25,7 @@ public class WxMpCustomMessageTest {
public void testImageReply() { public void testImageReply() {
WxMpCustomMessage reply = new WxMpCustomMessage(); WxMpCustomMessage reply = new WxMpCustomMessage();
reply.setToUser("OPENID"); reply.setToUser("OPENID");
reply.setMsgType(WxMpConsts.CUSTOM_MSG_IMAGE); reply.setMsgType(WxConsts.CUSTOM_MSG_IMAGE);
reply.setMediaId("MEDIA_ID"); reply.setMediaId("MEDIA_ID");
Assert.assertEquals(reply.toJson(), "{\"touser\":\"OPENID\",\"msgtype\":\"image\",\"image\":{\"media_id\":\"MEDIA_ID\"}}"); Assert.assertEquals(reply.toJson(), "{\"touser\":\"OPENID\",\"msgtype\":\"image\",\"image\":{\"media_id\":\"MEDIA_ID\"}}");
} }
@ -38,7 +38,7 @@ public class WxMpCustomMessageTest {
public void testVoiceReply() { public void testVoiceReply() {
WxMpCustomMessage reply = new WxMpCustomMessage(); WxMpCustomMessage reply = new WxMpCustomMessage();
reply.setToUser("OPENID"); reply.setToUser("OPENID");
reply.setMsgType(WxMpConsts.CUSTOM_MSG_VOICE); reply.setMsgType(WxConsts.CUSTOM_MSG_VOICE);
reply.setMediaId("MEDIA_ID"); reply.setMediaId("MEDIA_ID");
Assert.assertEquals(reply.toJson(), "{\"touser\":\"OPENID\",\"msgtype\":\"voice\",\"voice\":{\"media_id\":\"MEDIA_ID\"}}"); Assert.assertEquals(reply.toJson(), "{\"touser\":\"OPENID\",\"msgtype\":\"voice\",\"voice\":{\"media_id\":\"MEDIA_ID\"}}");
} }
@ -51,7 +51,7 @@ public class WxMpCustomMessageTest {
public void testVideoReply() { public void testVideoReply() {
WxMpCustomMessage reply = new WxMpCustomMessage(); WxMpCustomMessage reply = new WxMpCustomMessage();
reply.setToUser("OPENID"); reply.setToUser("OPENID");
reply.setMsgType(WxMpConsts.CUSTOM_MSG_VIDEO); reply.setMsgType(WxConsts.CUSTOM_MSG_VIDEO);
reply.setMediaId("MEDIA_ID"); reply.setMediaId("MEDIA_ID");
reply.setThumbMediaId("MEDIA_ID"); reply.setThumbMediaId("MEDIA_ID");
reply.setTitle("TITLE"); reply.setTitle("TITLE");
@ -67,7 +67,7 @@ public class WxMpCustomMessageTest {
public void testMusicReply() { public void testMusicReply() {
WxMpCustomMessage reply = new WxMpCustomMessage(); WxMpCustomMessage reply = new WxMpCustomMessage();
reply.setToUser("OPENID"); reply.setToUser("OPENID");
reply.setMsgType(WxMpConsts.CUSTOM_MSG_MUSIC); reply.setMsgType(WxConsts.CUSTOM_MSG_MUSIC);
reply.setThumbMediaId("MEDIA_ID"); reply.setThumbMediaId("MEDIA_ID");
reply.setDescription("DESCRIPTION"); reply.setDescription("DESCRIPTION");
reply.setTitle("TITLE"); reply.setTitle("TITLE");
@ -91,7 +91,7 @@ public class WxMpCustomMessageTest {
public void testNewsReply() { public void testNewsReply() {
WxMpCustomMessage reply = new WxMpCustomMessage(); WxMpCustomMessage reply = new WxMpCustomMessage();
reply.setToUser("OPENID"); reply.setToUser("OPENID");
reply.setMsgType(WxMpConsts.CUSTOM_MSG_NEWS); reply.setMsgType(WxConsts.CUSTOM_MSG_NEWS);
WxArticle article1 = new WxArticle(); WxArticle article1 = new WxArticle();
article1.setUrl("URL"); article1.setUrl("URL");

View File

@ -1,6 +1,6 @@
package me.chanjar.weixin.mp.bean; package me.chanjar.weixin.mp.bean;
import me.chanjar.weixin.mp.api.WxMpConsts; import me.chanjar.weixin.common.api.WxConsts;
import org.testng.Assert; import org.testng.Assert;
import org.testng.annotations.Test; import org.testng.annotations.Test;
@ -57,7 +57,7 @@ public class WxMpXmlMessageTest {
Assert.assertEquals(wxMessage.getToUserName(), "toUser"); Assert.assertEquals(wxMessage.getToUserName(), "toUser");
Assert.assertEquals(wxMessage.getFromUserName(), "fromUser"); Assert.assertEquals(wxMessage.getFromUserName(), "fromUser");
Assert.assertEquals(wxMessage.getCreateTime(), new Long(1348831860l)); Assert.assertEquals(wxMessage.getCreateTime(), new Long(1348831860l));
Assert.assertEquals(wxMessage.getMsgType(), WxMpConsts.XML_MSG_TEXT); Assert.assertEquals(wxMessage.getMsgType(), WxConsts.XML_MSG_TEXT);
Assert.assertEquals(wxMessage.getContent(), "this is a test"); Assert.assertEquals(wxMessage.getContent(), "this is a test");
Assert.assertEquals(wxMessage.getMsgId(), new Long(1234567890123456l)); Assert.assertEquals(wxMessage.getMsgId(), new Long(1234567890123456l));
Assert.assertEquals(wxMessage.getPicUrl(), "this is a url"); Assert.assertEquals(wxMessage.getPicUrl(), "this is a url");