104 lines
2.9 KiB
PHP
104 lines
2.9 KiB
PHP
<?php
|
|
|
|
namespace ShaoZeMing\AliVod\Services;
|
|
|
|
|
|
use ShaoZeMing\AliVod\SDK\CreateUploadVideoRequest;
|
|
use ShaoZeMing\AliVod\SDK\RefreshUploadVideoRequest;
|
|
use ShaoZeMing\AliVod\SDK\UploadMediaByURLRequest;
|
|
|
|
class UploadService extends BaseService
|
|
{
|
|
|
|
|
|
/**获取视频上传凭证
|
|
* User: ZeMing Shao
|
|
* Email: szm19920426@gmail.com
|
|
* @param $title
|
|
* @param $filename
|
|
* @param $desc
|
|
* @param $coverUrl
|
|
* @param array $tags
|
|
* @return mixed|\ShaoZeMing\Aliyun\Core\SimpleXMLElement
|
|
* @throws \ShaoZeMing\Aliyun\Core\Exception\ClientException
|
|
* @throws \ShaoZeMing\Aliyun\Core\Exception\ServerException
|
|
*/
|
|
public function createUploadVideo($title, $filename,$templateGroupId="",$storageLocation="", $desc = "", $coverUrl = "", array $tags = [])
|
|
{
|
|
$request = new CreateUploadVideoRequest();
|
|
$request->setTitle($title);
|
|
$request->setFileName($filename);
|
|
if($desc){
|
|
$request->setDescription($desc);
|
|
}
|
|
|
|
if($coverUrl){
|
|
$request->setCoverURL($coverUrl);
|
|
}
|
|
|
|
if($templateGroupId){
|
|
$request->setTemplateGroupId($templateGroupId);
|
|
}
|
|
|
|
if($storageLocation){
|
|
$request->setStorageLocation($storageLocation);
|
|
}
|
|
|
|
|
|
$tags = implode(',', $tags);
|
|
$request->setTags($tags);
|
|
$request->setAcceptFormat($this->acceptFormat);
|
|
$uploadInfo = $this->client->getAcsResponse($request);
|
|
|
|
return $uploadInfo;
|
|
}
|
|
|
|
|
|
/**
|
|
* 刷新视频上传凭证
|
|
* User: ZeMing Shao
|
|
* Email: szm19920426@gmail.com
|
|
* @param $videoId
|
|
* @return mixed|\ShaoZeMing\Aliyun\Core\SimpleXMLElement
|
|
* @throws \ShaoZeMing\Aliyun\Core\Exception\ClientException
|
|
* @throws \ShaoZeMing\Aliyun\Core\Exception\ServerException
|
|
*/
|
|
public function refreshUploadVideo($videoId)
|
|
{
|
|
$request = new RefreshUploadVideoRequest();
|
|
$request->setVideoId($videoId);
|
|
$request->setAcceptFormat($this->acceptFormat);
|
|
$refreshInfo = $this->client->getAcsResponse($request);
|
|
|
|
return $refreshInfo;
|
|
}
|
|
|
|
|
|
/**
|
|
* URL批量拉取上传
|
|
* User: ZeMing Shao
|
|
* Email: szm19920426@gmail.com
|
|
* @param $url
|
|
* @param $title
|
|
* @return mixed|\ShaoZeMing\Aliyun\Core\SimpleXMLElement
|
|
* @throws \ShaoZeMing\Aliyun\Core\Exception\ClientException
|
|
* @throws \ShaoZeMing\Aliyun\Core\Exception\ServerException
|
|
*/
|
|
public function uploadMediaByURL($url, $title)
|
|
{
|
|
|
|
$request = new UploadMediaByURLRequest();
|
|
$request->setUploadURLs($url);
|
|
$uploadMetadataList = array();
|
|
$uploadMetadata = array();
|
|
$uploadMetadata["SourceUrl"] = $url;
|
|
$uploadMetadata["Title"] = $title;
|
|
$uploadMetadataList[] = $uploadMetadata;
|
|
$request->setUploadMetadatas(json_encode($uploadMetadataList));
|
|
return $this->client->getAcsResponse($request);
|
|
|
|
}
|
|
|
|
|
|
}
|