public override IResponseMessageBase OnEventScanRequest(RequestMessageEventScan requestMessage) { var responseMessage = ResponseMessageFactory.CreateFromRequestMessage <ResponseMessageText>(requestMessage); responseMessage.Content = "扫码事件:" + requestMessage.Event.ToString() + ";EventKey:" + requestMessage.EventKey + ";Ticket" + requestMessage.Ticket; return(responseMessage); }
public abstract IResponseMessageBase OnEventScanRequest(RequestMessageEventScan requestMessage);
/// <summary> /// 获取XDocument转换后的IRequestMessageBase实例。 /// </summary> /// <returns></returns> public static IRequestMessageBase GetRequestEntity(XDocument doc) { RequestMessageBase val = null; RequestMsgType requestMsgType = default(RequestMsgType); Event eventType = default(Event); try { requestMsgType = MsgTypeHelper.GetRequestMsgType(doc); switch (requestMsgType) { case RequestMsgType.text: val = new RequestMessageText(); break; case RequestMsgType.location: val = new RequestMessageLocation(); break; case RequestMsgType.image: val = new RequestMessageImage(); break; case RequestMsgType.voice: val = new RequestMessageVoice(); break; case RequestMsgType.video: val = new RequestMessageVideo(); break; case RequestMsgType.link: val = new RequestMessageLink(); break; case RequestMsgType.shortvideo: val = new RequestMessageShortVideo(); break; case RequestMsgType.@event: eventType = EventHelper.GetEventType(doc.Root.Element("Event").Value); switch (eventType) { case Event.CLICK: val = new RequestMessageEventClick(); break; case Event.LOCATION: val = new RequestMessageEventLocation(); break; case Event.subscribe: val = new RequestMessageEventSubscribe(); break; case Event.scan: val = new RequestMessageEventScan(); break; case Event.unsubscribe: val = new RequestMessageEventUnsubscribe(); break; case Event.VIEW: val = new RequestMessageEventView(); break; } break; } if (val == null) { throw new Exception(); } val.FillEntityWithXml <RequestMessageBase>(doc); return(val); } catch (Exception ex) { throw new Exception($"RequestMessage转换出错!可能是MsgType不存在!,requestMsgType:{requestMsgType},Event:{eventType}"); } }