/** the puser might not be a kuser in the system */ public function executeImpl($partner_id, $subp_id, $puser_id, $partner_prefix, $puser_kuser) { // set this boolean so the text will be escaped n the XML result self::$escape_text = true; $url = $this->getPM('url'); $mediaType = $this->getPM('media_type'); /* $searchText = $this->getP ( 'search' ); $page = $this->getP ( 'page' , 1 ); $pageSize = $this->getP ( 'page_size' , 10 ); $authData = $this->getP ( 'auth_data' ); */ list($media_source_provider, $obj_id) = myMediaSourceFactory::getMediaSourceAndObjectDataByUrl($mediaType, $url); // echo ( "$media_source\n" ); if ($media_source_provider) { //$res = call_user_func ( array ( $media_source , "searchMedia" ) , array ( $media_type , $searchText, $page, $pageSize, $kuserId ) ) ; $res = $media_source_provider->getMediaInfo($mediaType, $obj_id); $this->addMsg("search", $res); } else { //$this->addError( -301 , "unknown media source for url $url" ); $this->addError(APIErrors::SEARCH_UNSUPPORTED_MEDIA_SOURCE_FOR_URL, $url); } }
/** * Search for media given a specific URL * Kaltura supports a searchURL action on some of the media providers. * This action will return a KalturaSearchResult object based on a given URL (assuming the media provider is supported) * * @action searchUrl * @param KalturaMediaType $mediaType * @param string $url * @return KalturaSearchResult * * @throws APIErrors::SEARCH_UNSUPPORTED_MEDIA_SOURCE_FOR_URL */ public function searchUrlAction($mediaType, $url) { list($mediaSourceProvider, $objId) = myMediaSourceFactory::getMediaSourceAndObjectDataByUrl($mediaType, $url); if (!$mediaSourceProvider) { throw new KalturaAPIException(APIErrors::SEARCH_UNSUPPORTED_MEDIA_SOURCE_FOR_URL, $url); } $result = $mediaSourceProvider->getMediaInfo($mediaType, $objId); $newSearchResult = new KalturaSearchResult(); $search = new KalturaSearch(); $newSearchResult->fromSearchResult($result['objectInfo'], $search); return $newSearchResult; }