using System;
using System.Collections.Generic;
using System.Text;
using BP.DA;
using BP.GPM.WeiXin.Msg;
using System.Runtime.Serialization.Json;
namespace BP.GPM.WeiXin
{
public class AccessToken
{
public string access_token { get; set; }
public string expires_in { get; set; }
}
///
/// 获取企业的jsapi_ticket
///
public class Ticket
{
public string errcode { get; set; }
public string errmsg { get; set; }
public string ticket { get; set; }
public string expires_in { get; set; }
}
public class MessageErrorModel
{
public string errcode { get; set; }
public string errmsg { get; set; }
public string invaliduser { get; set; }
public string invalidparty { get; set; }
public string invalidtag { get; set; }
}
///
/// 消息类型
///
public enum MsgType
{
text = 0,
image = 1,
voice = 2,
video = 3,
file = 4,
news = 5,
mapnews = 6
}
///
/// 微信-文本消息
///
public class MsgText : MsgBase
{
///
/// 必须:是- 消息类型,此时固定为:text (支持消息型应用跟主页型应用)
///
public string msgtype
{
get { return "text"; }
}
///
/// 必须:是- 消息内容,最长不超过2048个字节,注意:主页型应用推送的文本消息在微信端最多只显示20个字(包含中英文)
///
public string content { get; set; }
}
///
/// 微信-图片消息
///
public class MsgImage : MsgBase
{
///
/// 必须:是- 消息类型,此时固定为:image(不支持主页型应用)
///
public string msgtype
{
get { return "image"; }
}
///
/// 必须:是- 图片媒体文件id,可以调用上传临时素材或者永久素材接口获取,永久素材media_id必须由发消息的应用创建
///
public string media_id { get; set; }
}
///
/// 微信-voice消息
///
public class MsgVoice : MsgBase
{
///
/// 必须:是- 消息类型,此时固定为:voice (不支持主页型应用)
///
public string msgtype
{
get { return "voice"; }
}
///
/// 必须:是- 语音文件id,可以调用上传临时素材或者永久素材接口获取
///
public string media_id { get; set; }
}
///
/// 微信-video消息
///
public class MsgVideo : MsgBase
{
///
/// 必须:是- 消息类型,此时固定为:video (不支持主页型应用)
///
public string msgtype
{
get { return "video"; }
}
///
/// 必须:是- 视频媒体文件id,可以调用上传临时素材或者永久素材接口获取
///
public string media_id { get; set; }
///
/// 必须:否- 视频消息的标题,不超过128个字节,超过会自动截断
///
public string title { get; set; }
///
/// 必须:否- 视频消息的描述,不超过512个字节,超过会自动截断
///
public string description { get; set; }
}
///
/// 微信-file消息
///
public class MsgFile : MsgBase
{
///
/// 必须:是- 消息类型,此时固定为:file (不支持主页型应用)
///
public string msgtype
{
get { return "file"; }
}
///
/// 必须:是- 媒体文件id,可以调用上传临时素材或者永久素材接口获取
///
public string media_id { get; set; }
}
#region news消息
///
/// 微信-news消息
///
public class MsgNews : MsgBase
{
///
/// 必须:是- 息类型,此时固定为:news (不支持主页型应用)
///
public string msgtype
{
get { return "news"; }
}
private List _Articles = new List();
///
/// 必须:是- 图文消息,一个图文消息支持1到8条图文
///
public List articles
{
get
{
return _Articles;
}
}
}
///
/// News消息内容
///
public class NewsArticles
{
///
/// 必须:否- 标题,不超过128个字节,超过会自动截断
///
public string title { get; set; }
///
/// 必须:否- 描述,不超过512个字节,超过会自动截断
///
public string description { get; set; }
///
/// 必须:否- 点击后跳转的链接
///
public string url { get; set; }
///
/// 必须:否- 图文消息的图片链接,支持JPG、PNG格式,较好的效果为大图640*320,小图80*80。如不填,在客户端不显示图片
///
public string picurl { get; set; }
}
#endregion
#region mpnews消息
///
/// 微信-mpnews消息-mpnews消息与news消息类似,不同的是图文消息内容存储在微信后台,并且支持保密选项。每个应用每天最多可以发送100次
///
public class MsgMpNews : MsgBase
{
///
/// 必须:是- 消息类型,此时固定为:mpnews (不支持主页型应用)
///
public string msgtype
{
get { return "mpnews"; }
}
///
/// 必须:是- 图文消息,一个图文消息支持1到8条图文
///
public List articles { get; set; }
}
///
/// mpnews消息内容
///
public class MpNewsArticles
{
///
/// 必须:是- 图文消息的标题,不超过128个字节,超过会自动截断
///
public string title { get; set; }
///
/// 必须:是- 描述,图文消息缩略图的media_id, 可以在上传多媒体文件接口中获得。此处thumb_media_id即上传接口返回的media_id
///
public string thumb_media_id { get; set; }
///
/// 必须:否- 描述,不超过512个字节,超过会自动截断
///
public string author { get; set; }
///
/// 必须:否- 图文消息点击“阅读原文”之后的页面链接
///
public string content_source_url { get; set; }
///
/// 必须:是- 图文消息的内容,支持html标签,不超过666 K个字节
///
public string content { get; set; }
///
/// 必须:否- 图文消息的描述,不超过512个字节,超过会自动截断
///
public string digest { get; set; }
///
/// 必须:否- 否显示封面,1为显示,0为不显示
///
public string show_cover_pic { get; set; }
}
#endregion
}