package com.palmnest.service.wechat;

import com.palmnest.application.bean.InMessage;
import com.palmnest.application.bean.OutMessage;
import org.springframework.stereotype.Component;

/**
 * 微信消息接收统一处理
 *
 * @author yb
 * @date 2014-04-10
 */
@Component
public interface MessageProcessingManager {

	public void setOutMessage(OutMessage outMessage);

	public OutMessage getOutMessage();

	//TODO默认处理
	public void allType(InMessage msg);

	//TODO文本
	public void textTypeMsg(InMessage msg);

	//TODO地理位置信息
	public void locationTypeMsg(InMessage msg);

	//TODO图片
	public void imageTypeMsg(InMessage msg);

	//TODO视频
	public void videoTypeMsg(InMessage msg);

	//TODO语音
	public void voiceTypeMsg(InMessage msg);

	//TODO链接
	public void linkTypeMsg(InMessage msg);

	//TOD事件
	public void eventTypeMsg(InMessage msg);

	public boolean beforeProcess(InMessage inMessage);

	/*
	 * TODO 接收消息处理完成之后给相应提示，调用关键字查询接口封装返回数据
	 */
	public void afterProcess(InMessage inMessage, OutMessage outMessage);


}
