Пример #1
0
        /// <summary>
        /// 根据id查询视频
        /// </summary>
        /// <param name="videoId">Video的唯一标识</param>
        /// <returns>
        /// Video 包含id,name,size,type,status,duration,catalogId,catalogName,VideoEmbedCode列表。
        /// </returns>
        public Video Get(Int32 videoId)
        {
            var qs = new QueryString();
            qs.Add("videoId", videoId.ToString());
            var getVideo = client.HttpGet("/video/get.api", qs);
            var jo = JObject.Parse(getVideo);

            if (jo["statusCode"].ToString().CompareTo("0") == 0)
            {
                var video = new Video();
                video.CatalogId = System.Int32.Parse(jo["catalogId"].ToString());
                video.CatalogName = jo["catalogName"].ToString();
                video.Name = jo["name"].ToString();
                video.Size = long.Parse(jo["size"].ToString());
                video.Status = jo["status"].ToString();
                video.Type = jo["type"].ToString();
                video.Duration = long.Parse(jo["duration"].ToString());

                var embedCodes = new List<VideoEmbedCode>();
                foreach (var jObj in jo["embedCodes"])
                {
                    var embedCode = new VideoEmbedCode();
                    embedCode.AutoAdaptionCode = jObj["autoAdaptionCode"].ToString();
                    embedCode.Clarity = jObj["clarity"].ToString();
                    embedCode.FilePath = jObj["filePath"].ToString();
                    embedCode.FlashCode = jObj["flashCode"].ToString();
                    embedCode.Html5Code = jObj["html5Code"].ToString();
                    embedCode.PortableCode = jObj["portableCode"].ToString();
                    embedCode.Resolution = jObj["resolution"].ToString();

                    embedCodes.Add(embedCode);
                }
                video.EmbedCodes = embedCodes;
                return video;
            }
            else
            {
                throw new PispowerAPIException(System.Int32.Parse(jo["statusCode"].ToString()), jo["message"].ToString());
            }
        }
Пример #2
0
        /// <summary>
        /// 上传一个视频
        /// </summary>
        /// <param name="request"></param>
        public Video Upload(VideoUploadRequest request)
        {
            var qs = new QueryString();
            qs.Add("name", request.Name);
            if (null != request.Description && !"".Equals(request.Description))
            {
                qs.Add("description", request.Description);
            }
            if (request.CatalogId > 0)
            {
                qs.Add("catalogId", request.CatalogId.ToString());
            }
            using (var fs = File.OpenRead(request.FileInfo.FullName))
            {
                var uploadVideo = client.HttpUpload("/video/upload.api", qs, fs);
                var jo = JObject.Parse(uploadVideo);

                if (jo["statusCode"].ToString().CompareTo("0") == 0)
                {
                    var video = new Video();
                    video.CatalogId = System.Int32.Parse(jo["catalogId"].ToString());
                    video.CatalogName = jo["catalogName"].ToString();
                    video.Name = jo["name"].ToString();
                    video.Size = long.Parse(jo["size"].ToString());
                    video.Status = jo["status"].ToString();
                    video.Type = jo["type"].ToString();
                    video.Duration = long.Parse(jo["duration"].ToString());

                    var embedCodes = new List<VideoEmbedCode>();
                    foreach (var jObj in jo["embedCodes"])
                    {
                        var embedCode = new VideoEmbedCode();
                        embedCode.AutoAdaptionCode = jObj["autoAdaptionCode"].ToString();
                        embedCode.Clarity = jObj["clarity"].ToString();
                        embedCode.FilePath = jObj["filePath"].ToString();
                        embedCode.FlashCode = jObj["flashCode"].ToString();
                        embedCode.Html5Code = jObj["html5Code"].ToString();
                        embedCode.PortableCode = jObj["portableCode"].ToString();
                        embedCode.Resolution = jObj["resolution"].ToString();

                        embedCodes.Add(embedCode);
                    }
                    video.EmbedCodes = embedCodes;
                    return video;
                }
                else
                {
                    throw new PispowerAPIException(System.Int32.Parse(jo["statusCode"].ToString()), jo["message"].ToString());
                }
            }
        }