private string devlopID = "wx6522a9d862ae7a0f"; //微信里面开发者模式:开发者ID #endregion Fields #region Methods public string Event(RequestVO requesXML,string key) { JavaScriptSerializer serializer = new JavaScriptSerializer(); string message = string.Empty; string strResult = string.Empty; Msg msg = new Msg (); switch (key) { case "subscribe": message = "感谢您关注【知识产权那点事】微信公众号,我们会定期为你推送我们最新的新闻资讯"; strResult = msg.SendMsg (requesXML, message); // 将关注信息写入follow 表中 string json = GetInfo (GetAccessToken (), requesXML.fromUserName); FollowVO follow = serializer.Deserialize<FollowVO> (json); JabinfoKeyValue data = new JabinfoKeyValue (); data ["openid"] = follow.openId; data ["nickname"] = follow.nickname; data ["sex"] = follow.sex; data ["province"] = follow.province; data ["city"] = follow.city; data ["country"] = follow.country; data ["headimgurl"] = follow.headimgurl; data ["createtime"] = requesXML.createTime.ToString(); FollowMapper.I.Insert (data); break; case "unsubscribe": message = "取消关注"; strResult = msg.SendMsg (requesXML, message); // 将关注者从数据库中取消 FollowMapper.I.DeleteByPrimary (requesXML.fromUserName); break; case "CLICK": if (requesXML.EventKey == "inn") { IList<WXArticle> articles = new List<WXArticle> (); WXArticle article = new WXArticle (); article.Description = "上海知识产权研究所,提供最具价值的知识产权资讯"; article.PicUrl = "http://www.iprlawyers.com/Files/2014.5.22fugang.jpg"; article.Title = "知识产权那点事"; article.Url = "http://www.iprlawyers.com/"; articles.Add (article); strResult = msg.SendMsg (requesXML, articles); } break; // case "SCAN": // IList<WXArticle> articles1 = new List<WXArticle> (); // WXArticle item = new WXArticle (); // item.Title = "Kooteam"; // item.Description = "KooTeam是一款轻量级的团队时间管理与项目管理的系统,免费提供项目管理,团队协作SaaS解决方案。不需要安装或升级任何软件,您只要注册一个KooTeam账户就马上可以拥有一个多功能、一体化的在线项目管理,团队协作办公系统——无需购买服务器,使用次数不限、使用时长不限、用户数不限、项目数量不限"; // item.PicUrl = "http://p.kooteam.com/res/tma/banner/01.jpg"; // item.Url = "http://p.kooteam.com"; // articles1.Add (item); // strResult = msg.SendMsg (requesXML, articles1); // break; default: message = "receive a new event:" + requesXML.EventKey; strResult = msg.SendMsg (requesXML, message); break; } return strResult; }
public string Excute(JabinfoContext context) { Weixin weixin = new Weixin (); string strResult = string.Empty; string message = string.Empty; Msg msg = new Msg (); Stream s = context.Request.InputStream; byte[] b = new byte[s.Length]; s.Read(b, 0, (int)s.Length); string postString = Encoding.UTF8.GetString(b); RequestVO requestXML = weixin.GetRequest (postString); string type = requestXML.msgType; switch (type) { case "text": if (requestXML.content == "音乐") { WXMusic music = new WXMusic (); music.Title = "喜欢你"; music.Description = "邓紫琪"; music.MusicUrl = "http://qzone.djsoso.com/mp3/7D67455E23D943ED09AA4772B0CC2B5A-54738/www.haoduoge.com.mp3"; music.HQMusicUrl = "http://qzone.djsoso.com/mp3/7D67455E23D943ED09AA4772B0CC2B5A-54738/www.haoduoge.com.mp3"; strResult = msg.SendMusic (requestXML, music); } else if(requestXML.content=="koo"||requestXML.content=="kooteam") { IList<WXArticle> articles = new List<WXArticle> (); WXArticle item = new WXArticle (); item.Title = "Kooteam"; item.Description = "办公也扮酷"; item.PicUrl = "http://p.kooteam.com/res/tma/banner/01.jpg"; item.Url = "http://p.kooteam.com"; articles.Add (item); strResult = msg.SendMsg (requestXML, articles); }else{ string keywold = requestXML.content; ArticleVO[] articleVO =ArticleModel.I.Keywold(keywold, 0, 4); if (articleVO.Length == 0) { string joke = Jabinfo.Help.Http.Get ("http://apix.sinaapp.com/joke/?appkey=trialuser"); string jo = joke.Substring (0, joke.Length-15); strResult = msg.SendMsg (requestXML, jo); } else { IList<WXArticle> articles = new List<WXArticle> (); foreach (ArticleVO a in articleVO) { WXArticle item = new WXArticle (); item.Title = a.title; item.Description = a.summary; item.PicUrl = "http://wx.zento.me/upload/" + Attch (a.articleId); item.Url = "http://wx.zento.me/article/home/detail/" + a.articleId; articles.Add (item); } strResult = msg.SendMsg (requestXML, articles); } } weixin.loger (requestXML); break; case "location": message = string.Format ("你发送的是位置,纬度为:{0};经度为:{1};缩放级别为:{2};位置为:{3};", requestXML.Location_X, requestXML.Location_Y, requestXML.Scale, requestXML.Label); strResult = msg.SendMsg (requestXML, message); break; case "image": strResult = msg.SendPic (requestXML); break; case "vedio": strResult = msg.SendVedio (requestXML); break; case "voice": strResult = msg.SendVoice (requestXML); break; case "link": message = string.Format ("你发送的是链接,标题为:{0};内容为:{1};链接地址为:{2}", requestXML.Title, requestXML.content, requestXML.Url); strResult = msg.SendMsg (requestXML, message); break; case "event": string key = requestXML.Event; strResult= weixin.Event (requestXML, key); break; } return strResult; }