public ActionResult DownloadQueueWithMediaId() { FileDownloadQueueWithMediaIdArgs args = RequestArgs <FileDownloadQueueWithMediaIdArgs>(); if (args == null) { return(RespondResult(false, "参数无效。")); } //_fileDownloadQueue.ServerRootDir = Server.MapPath("/"); //DomainContext domainContext = _fileDomainPool.GetDomainContext(args.Domain); FileDownloadQueueEntity item = new FileDownloadQueueEntity(); item.Domain = args.Domain; item.AppId = args.AppId; item.CreateTime = DateTime.Now; item.MediaId = args.MediaId; item.CallbackUrl = args.CallbackUrl; item.Tag = args.Tag; _fileDownloadQueue.Enqueue(item); return(RespondResult()); }
public ApiResult DownloadQueueWithMediaId(FileDownloadQueueWithMediaIdArgs args) { ApiResult result; HttpRequestArgs requestArgs = new HttpRequestArgs(); requestArgs.Method = "POST"; requestArgs.Url = _fileServiceUri + "File/DownloadQueueWithMediaId"; requestArgs.Content = JsonConvert.SerializeObject(args); _log.Write("发起队列文件代理下载请求(DownloadQueueWithMediaId)", requestArgs.Content, TraceEventType.Verbose); HttpRequestResult requestResult = _httpService.Request(requestArgs); if (requestResult.Success) { _log.Write("队列文件代理下载请求返回(DownloadQueueWithMediaId)", requestResult.Content, TraceEventType.Verbose); result = JsonConvert.DeserializeObject <ApiResult>(requestResult.Content); } else { result = new ApiResult(); result.Message = requestResult.Exception.Message; } return(result); }
protected override string Handle(ReceivingXMLMessage_ShortVideoMessage message, ClientDomainContext domainContext) { //存储消息记录 MessageEntity messageEntity = new MessageEntity(); messageEntity.Receive = true; messageEntity.ReceivingMessageType = EnumReceivingMessageType.Shortvideo; messageEntity.OfficalWeixinId = message.ToUserName; messageEntity.MemberOpenId = message.FromUserName; messageEntity.CreateTime = WeixinApiHelper.ConvertIntToDateTime(message.CreateTime); messageEntity.MsgId = message.MsgId; messageEntity.ThumbMediaId = message.ThumbMediaId; messageEntity.MediaId = message.MediaId; _messageManager.AddMessage(domainContext.Domain.Id, domainContext.AppId, messageEntity); //向文件服务器发起文件异步下载请求 FileDownloadQueueWithMediaIdArgs args = new FileDownloadQueueWithMediaIdArgs(); args.Domain = domainContext.Domain.Id; args.AppId = domainContext.AppId; args.MediaId = message.MediaId; args.CallbackUrl = _fileDownloadCallbackUrl; args.Tag = messageEntity.Id.ToString(); ApiResult apiResult = _fileService.DownloadQueueWithMediaId(args); if (apiResult.Success == false) { _log.Write("队列下载请求失败", apiResult.Message, TraceEventType.Warning); } //下载缩略图 args.MediaId = message.ThumbMediaId; args.CallbackUrl = _thumbFileDownloadCallbackUrl; apiResult = _fileService.DownloadQueueWithMediaId(args); if (apiResult.Success == false) { _log.Write("队列下载请求失败", apiResult.Message, TraceEventType.Warning); } return(null); }