public string HandleAndGetResponse(BaseMessage message) { string response = ""; TextMessage textMsg = message as TextMessage; string content = textMsg.Content.Trim(); if (string.IsNullOrEmpty(content)) { response = "您什么都没输入,没法帮您啊,%>_<%。"; } //else if (SessionUtility.Contains(textMsg.FromUserName)) //{ // response = AuthUtility.GetAuthResult(textMsg); //} else { if (content.Contains("图文")) { return GetTuwenResponse(textMsg); } response = HandleOtherString(content); } TextMessage tm = new TextMessage(); tm.ToUserName = message.FromUserName; tm.FromUserName = message.ToUserName; tm.CreateTime = WeiXinHelper.GetNowTime(); tm.Content = response; string returnValue = tm.GetResponseString(); return returnValue; }
//protected IUserRepository<UserDTO> userRepository = RepositoryFactory.GetInstance().GetUserRepository(); //protected IAuthProfileRepository<AuthProfileDTO> authProfileRepository = RepositoryFactory.GetInstance().GetAuthProfileRepository(); public string Handle_LocationEventMessage(LocationMessage message) { //回复欢迎消息 TextMessage tm = new TextMessage(); tm.ToUserName = message.FromUserName; tm.FromUserName = message.ToUserName; tm.CreateTime = WeiXinHelper.GetNowTime(); //tm.Content = string.Format("您当前的经度:{0}, 纬度{1}",message.Longitude, message.Latitude); string url = string.Format("http://lbs.juhe.cn/api/getaddressbylngb?lngx={0}&lngy={1}", message.Longitude, message.Latitude); string content = HttpUtility.SendGetHttpRequest(url, "text/json"); //Log4netHelper.Write("content from web: " + content); JsonTextReader tr = new JsonTextReader(new StringReader(content)); JsonSerializer jSerializer = new JsonSerializer(); LocationSearchResult rObj = jSerializer.Deserialize<LocationSearchResult>(tr); //Log4netHelper.Write("resultinfo: " + rObj.resultinfo); //Log4netHelper.Write("formatted_address: " + rObj.row.result.formatted_address); //Log4netHelper.Write("Handle_LocationEventMessage content: " + content); tm.Content = string.Format("您当前的位置为:{0}", rObj.row.result.formatted_address); string returnValue = tm.GetResponseString(); return returnValue; }
public static BaseMessage GetCorpMessageByXml(string xmlStr) { if (string.IsNullOrEmpty(xmlStr)) { //Log4netHelper.Write("xmlStr is null, return null"); return null; } XDocument doc = XDocument.Parse(xmlStr); XElement rootElement = doc.Root; XElement msgTypeElement = rootElement.Element(WeiXinConstants.MSG_TYPE); if (msgTypeElement == null) { //Log4netHelper.Write("msgTypeElement is null, return null"); return null; } string msgType = msgTypeElement.Value; //Log4netHelper.Write("msgType :" + msgType); BaseMessage returnValue; switch (msgType) { case "text": returnValue = new TextMessage(); break; //case "event": // returnValue = EventMessage.LoadFromXml(rootElement); // break; //case "image": // returnValue = new CorpImageMessage(); // break; //case "voice": // returnValue = new CorpVoiceMessage(); // break; //case "video": // returnValue = new CorpVideoMessage(); // break; //case "music": // returnValue = new MusicMessage(); // break; case "news": returnValue = new TuwenMessage(); break; default: returnValue = null; break; } if (returnValue != null) returnValue.FromXML(rootElement); return returnValue; }
protected string GetTuwenResponse(TextMessage tm) { TuwenMessage twMsg = new TuwenMessage(); twMsg.FromUserName = tm.ToUserName; twMsg.ToUserName = tm.FromUserName; twMsg.CreateTime = WeiXinHelper.GetNowTime(); TuwenArticleMessage article1 = new TuwenArticleMessage() { Title = "交大红娘团队", Description = "交大红娘团队成员有吴斯一, 陈楠,石皓,刘崇宵", PicUrl = "http://img.taopic.com/uploads/allimg/130716/318769-130G60Q62985.jpg", Url = "http://img.taopic.com/uploads/allimg/130716/318769-130G60Q62985.jpg" }; TuwenArticleMessage article2 = new TuwenArticleMessage() { Title = "吴斯一,CEO", Description = "吴斯一,CEO", PicUrl = "http://e.hiphotos.baidu.com/image/h%3D200/sign=9e12075d6e224f4a4899741339f69044/d1a20cf431adcbef5ae00f7dafaf2edda2cc9ff0.jpg", Url = "http://e.hiphotos.baidu.com/image/h%3D200/sign=9e12075d6e224f4a4899741339f69044/d1a20cf431adcbef5ae00f7dafaf2edda2cc9ff0.jpg" }; TuwenArticleMessage article3 = new TuwenArticleMessage() { Title = "陈楠,CTO", Description = "陈楠,CTO", PicUrl = "http://g.hiphotos.baidu.com/image/pic/item/9345d688d43f879412576a35d11b0ef41bd53a04.jpg", Url = "http://g.hiphotos.baidu.com/image/pic/item/9345d688d43f879412576a35d11b0ef41bd53a04.jpg" }; TuwenArticleMessage article4 = new TuwenArticleMessage() { Title = "石皓,CFO", Description = "石皓,CFO", PicUrl = "http://g.hiphotos.baidu.com/image/pic/item/9345d688d43f879412576a35d11b0ef41bd53a04.jpg", Url = "http://g.hiphotos.baidu.com/image/pic/item/9345d688d43f879412576a35d11b0ef41bd53a04.jpg" }; TuwenArticleMessage article5 = new TuwenArticleMessage() { Title = "刘崇宵,COO", Description = "刘崇宵,COO", PicUrl = "http://g.hiphotos.baidu.com/image/pic/item/9345d688d43f879412576a35d11b0ef41bd53a04.jpg", Url = "http://g.hiphotos.baidu.com/image/pic/item/9345d688d43f879412576a35d11b0ef41bd53a04.jpg" }; twMsg.AddArticle(article1); twMsg.AddArticle(article2); twMsg.AddArticle(article3); twMsg.AddArticle(article4); twMsg.AddArticle(article5); return twMsg.GetResponseString(); }
protected string HandleSubscribeAndGetResponse(EventMessage message) { //回复欢迎消息 TextMessage tm = new TextMessage(); tm.ToUserName = message.FromUserName; tm.FromUserName = message.ToUserName; tm.CreateTime = WeiXinHelper.GetNowTime(); tm.Content = "欢迎您关注交大红娘-小鹿心动,我是服务小二,有事就请问我,呵呵!\n\n"; string returnValue = tm.GetResponseString(); return returnValue; }
/// <summary> /// 从xml数据加载文本消息 /// </summary> /// <param name="xml"></param> public static TextMessage LoadFromXml(string xml) { TextMessage tm = null; if (!string.IsNullOrEmpty(xml)) { XElement element = XElement.Parse(xml); if (element != null) { tm = new TextMessage(); tm.FromXML(element); } } return tm; }
public static BaseMessage GetMessageByXml(string xmlStr) { if (string.IsNullOrEmpty(xmlStr)) { //Log4netHelper.Write("xmlStr is null, return null"); return(null); } XDocument doc = XDocument.Parse(xmlStr); XElement rootElement = doc.Root; XElement msgTypeElement = rootElement.Element(WeiXinConstants.MSG_TYPE); if (msgTypeElement == null) { //Log4netHelper.Write("msgTypeElement is null, return null"); return(null); } string msgType = msgTypeElement.Value; //Log4netHelper.Write("msgType :" + msgType); BaseMessage returnValue; switch (msgType) { case "text": returnValue = new TextMessage(); break; case "event": returnValue = new MenuEventMessage(); break; //case "image": // returnValue = new ImageMessage(); // break; //case "voice": // returnValue = new VoiceMessage(); // break; //case "video": // returnValue = new VideoMessage(); // break; //case "music": // returnValue = new MusicMessage(); // break; case "news": returnValue = new TuwenMessage(); break; default: returnValue = null; break; } if (returnValue != null) { returnValue.FromXML(rootElement); } return(returnValue); }