예제 #1
0
        public Task <HttpResponseMessage> GetBigVideo(BigVideo bigVideo)
        {
            ResponseBase <string> response = new ResponseBase <string>();

            try
            {
                UploadFileObj uploadFileObj = new UploadFileObj()
                {
                    MsgId          = bigVideo.MsgId,
                    MsgType        = 43,
                    WxId           = bigVideo.WxId,
                    ToWxId         = bigVideo.ToWxId,
                    LongDataLength = bigVideo.LongDataLength,
                };
                string objName = QueueHelper <UploadFileObj> .Work(uploadFileObj);

                response.Data = objName;
            }
            catch (ExpiredException ex)
            {
                response.Success = false;
                response.Code    = "401";
                response.Message = ex.Message;
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Code    = "500";
                response.Message = ex.Message;
            }
            return(response.ToHttpResponseAsync());
        }
예제 #2
0
        public Task <HttpResponseMessage> GetBigVideo(BigVideo bigVideo)
        {
            ResponseBase <string> response = new ResponseBase <string>();

            try
            {
                UploadFileObj uploadFileObj = new UploadFileObj()
                {
                    MsgId          = bigVideo.MsgId,
                    MsgType        = 43,
                    WxId           = bigVideo.WxId,
                    ToWxId         = bigVideo.ToWxId,
                    LongDataLength = bigVideo.LongDataLength,
                };
                string mchId = RedisCache.CreateInstance().Get(ConstCacheKey.GetMchIdKey(uploadFileObj.WxId));
                if (string.IsNullOrEmpty(mchId))
                {
                    throw new Exception("未初始化商户Ip");
                }
                string objName = $"{FileStorageHelper.GetObjectName(mchId)}{uploadFileObj.MsgId}.mp4";

                var     producer = RocketMqHelper.CreateDefaultMQProducer(MqConst.UploadOssProducerGroup);
                var     buffer   = Encoding.UTF8.GetBytes(uploadFileObj.ToJson());
                Message message  = new Message(MqConst.UploadOssTopic, buffer);
                producer.SendMessage(message);
                response.Data = objName;
            }
            catch (ExpiredException ex)
            {
                response.Success = false;
                response.Code    = "401";
                response.Message = ex.Message;
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Code    = "500";
                response.Message = ex.Message;
            }
            return(response.ToHttpResponseAsync());
        }