/// <summary> /// 推送消息 /// </summary> /// <param name="message">消息内容 推送不同类型消息 传入相应类型对象</param> /// <returns>返回值</returns> public static PushMessageReturnValue Push(Wechat4net.QY.Define.PushMessage.Base message) { string json = PushMessageBuilder.BuildJson(message); string url = ServiceUrl.PushMessage + "?access_token=" + AccessToken.Value; //string result = Create().WebClient.UploadString(url, json); //return AjaxEngine.Gloabl.Serializer.Deserialize<PushMessageReturnValue>(result); return(HttpHelper.Post <PushMessageReturnValue>(url, json)); }
public void ProcessRequest(HttpContext context) { Logger.Log("URL = " + HttpContext.Current.Server.MapPath(".") + "\\logo.png"); Wechat4net.QY.Define.PushMessage.Base message = null; string type = context.Request.QueryString["type"]; bool istemp = context.Request.QueryString["istemp"] == "1"; string mediaID = string.Empty; List <string> userList = new List <string>(); userList.Add("sunzhen"); //Wechat4net.QY.Define.MediaFile.UploadTempReturnValue uploadRet = new QY.Define.MediaFile.UploadTempReturnValue(); ReturnValue uploadRet = new ReturnValue(); switch (type.ToLower()) { case "text": message = new Wechat4net.QY.Define.PushMessage.Text("6", userList, null, null, "This is a test message!\r\n by<a href='http://www.tiancaisz.com'>5Kong</a>'Wechat4net", false); break; case "image": if (istemp) { uploadRet = Wechat4net.QY.MediaFileManager.UploadTempFile(HttpContext.Current.Server.MapPath(".") + "\\logo.png", QY.Define.MediaFile.FileType.Image); mediaID = (uploadRet as Wechat4net.QY.Define.MediaFile.UploadTempReturnValue).MediaID; } else { uploadRet = Wechat4net.QY.MediaFileManager.UploadForeverFile(HttpContext.Current.Server.MapPath(".") + "\\logo.png", QY.Define.MediaFile.FileType.Image, 6); mediaID = (uploadRet as Wechat4net.QY.Define.MediaFile.UploadForeverReturnValue).MediaID; } if (uploadRet.ErrorCode != 0) { throw new Exception("上传图片失败!ErrorCode = " + uploadRet.ErrorCode + ";ErrorMessage = " + uploadRet.ErrorMessage); } //mediaID = uploadRet.MediaID; message = new Wechat4net.QY.Define.PushMessage.Image("6", userList, null, null, mediaID, false); break; case "voice": if (istemp) { uploadRet = Wechat4net.QY.MediaFileManager.UploadTempFile(HttpContext.Current.Server.MapPath(".") + "\\voice.mp3", QY.Define.MediaFile.FileType.Voice); mediaID = (uploadRet as Wechat4net.QY.Define.MediaFile.UploadTempReturnValue).MediaID; } else { uploadRet = Wechat4net.QY.MediaFileManager.UploadForeverFile(HttpContext.Current.Server.MapPath(".") + "\\voice.mp3", QY.Define.MediaFile.FileType.Voice, 6); mediaID = (uploadRet as Wechat4net.QY.Define.MediaFile.UploadForeverReturnValue).MediaID; } if (uploadRet.ErrorCode != 0) { throw new Exception("上传语音失败!ErrorCode = " + uploadRet.ErrorCode + ";ErrorMessage = " + uploadRet.ErrorMessage); } //mediaID = uploadRet.MediaID; message = new Wechat4net.QY.Define.PushMessage.Voice("6", userList, null, null, mediaID, false); break; case "video": if (istemp) { uploadRet = Wechat4net.QY.MediaFileManager.UploadTempFile(HttpContext.Current.Server.MapPath(".") + "\\video.mp4", QY.Define.MediaFile.FileType.Video); mediaID = (uploadRet as Wechat4net.QY.Define.MediaFile.UploadTempReturnValue).MediaID; } else { uploadRet = Wechat4net.QY.MediaFileManager.UploadForeverFile(HttpContext.Current.Server.MapPath(".") + "\\video.mp4", QY.Define.MediaFile.FileType.Video, 6); mediaID = (uploadRet as Wechat4net.QY.Define.MediaFile.UploadForeverReturnValue).MediaID; } if (uploadRet.ErrorCode != 0) { throw new Exception("上传视频失败!ErrorCode = " + uploadRet.ErrorCode + ";ErrorMessage = " + uploadRet.ErrorMessage); } //mediaID = uploadRet.MediaID; message = new Wechat4net.QY.Define.PushMessage.Video("6", userList, null, null, mediaID, "标题", "描述信息", false); break; case "file": if (istemp) { uploadRet = Wechat4net.QY.MediaFileManager.UploadTempFile(HttpContext.Current.Server.MapPath(".") + "\\file.docx", QY.Define.MediaFile.FileType.File); mediaID = (uploadRet as Wechat4net.QY.Define.MediaFile.UploadTempReturnValue).MediaID; } else { uploadRet = Wechat4net.QY.MediaFileManager.UploadForeverFile(HttpContext.Current.Server.MapPath(".") + "\\file.docx", QY.Define.MediaFile.FileType.File, 6); mediaID = (uploadRet as Wechat4net.QY.Define.MediaFile.UploadForeverReturnValue).MediaID; } if (uploadRet.ErrorCode != 0) { throw new Exception("上传文件失败!ErrorCode = " + uploadRet.ErrorCode + ";ErrorMessage = " + uploadRet.ErrorMessage); } //mediaID = uploadRet.MediaID; message = new Wechat4net.QY.Define.PushMessage.File("6", userList, null, null, mediaID, false); break; //case "QYnews": // var list = new List<Wechat4net.QY.Define.MediaFile.Type.QYNews.Article>(); // list.Add(new Wechat4net.QY.Define.MediaFile.Type.QYNews.Article() // { // Author = "我是作者", // ContentSourceUrl = "www.tiancaisz.com", // Title = "这儿是标题!", // ShowCoverPic = true, // Digest = "没啥可描述的...", // ThumbMediaID = "3YzxmSGoJidDHs1cElUmOEE27vyimGU4RjfFcNNU719IwCAALTpnTfV41LJAEKWc", // Content = "This is a test QYNews message!</ Br> by<a href='http://www.tiancaisz.com'>5Kong</a>'Wechat4net" // }); // var QYnews = Wechat4net.QY.MediaFileManager.UploadNews(new Wechat4net.QY.Define.MediaFile.Type.QYNews() // { // Articles = list // }, isteQY); // if (QYnews.ErrorCode != 0) // { // throw new Exception("上传图文消息失败!ErrorCode = " + QYnews.ErrorCode + ";ErrorMessage = " + QYnews.ErrorMessage); // } // mediaID = QYnews.MediaID; // message = new Wechat4net.QY.Define.PushMessage.QYNews(QYnews.MediaID); // break; default: break; } var ret = Wechat4net.QY.PushManager.Push(message); //var ret = Wechat4net.QY.PushManager.PushMessageByOpenID(message, new List<string>() { "okAHOvjsIav__n72k38ktxE8Y9Po", "okAHOvjsIav__n72k38ktxE8Y9Po" }); context.Response.ContentType = "text/plain"; context.Response.Write(string.Format("MediaID = {0}; ErrorCode = {1}; ErrorMessage = {2}; InvalidUser = {3}", mediaID, ret.ErrorCode, ret.ErrorMessage, ret.InvalidUser)); }