Ejemplo n.º 1
0
 /**
  * validate the response from facebook
  */
 protected function executeProcessOAuth2Response()
 {
     $this->tokenError = null;
     $appId = $this->getFromConfig(FacebookConstants::FACEBOOK_APP_ID_REQUEST_PARAM);
     $appSecret = $this->getFromConfig(FacebookConstants::FACEBOOK_APP_SECRET_REQUEST_PARAM);
     $pageId = base64_decode($this->getRequestParameter(FacebookConstants::FACEBOOK_PAGE_ID_REQUEST_PARAM));
     $providerId = base64_decode($this->getRequestParameter(FacebookConstants::FACEBOOK_PROVIDER_ID_REQUEST_PARAM));
     $ks = $this->getRequestParameter(FacebookConstants::FACEBOOK_KS_REQUEST_PARAM);
     $permissions = explode(',', base64_decode($this->getRequestParameter(FacebookConstants::FACEBOOK_PERMISSIONS_REQUEST_PARAM)));
     try {
         $accessURL = $this->getFacebookDistributionAccessURL($providerId, $ks);
         $dataHandler = new kDistributionPersistentDataHandler($accessURL);
         $userAccessToken = FacebookGraphSdkUtils::getLongLivedUserAccessToken($appId, $appSecret, $dataHandler, $permissions);
         if ($userAccessToken) {
             $pageAccessToken = FacebookGraphSdkUtils::getPageAccessToken($appId, $appSecret, $userAccessToken, $pageId, $dataHandler);
             if ($pageAccessToken) {
                 $dataHandler->set('userAccessToken', $userAccessToken);
                 $dataHandler->set('pageAccessToken', $pageAccessToken);
             }
         }
     } catch (Exception $e) {
         $this->tokenError = true;
         $this->errorMessage = $e->getMessage();
     }
 }
Ejemplo n.º 2
0
 private function validateVideo(flavorAsset $flavorAsset)
 {
     $syncKey = $flavorAsset->getSyncKey(flavorAsset::FILE_SYNC_FLAVOR_ASSET_SUB_TYPE_ASSET);
     if (kFileSyncUtils::fileSync_exists($syncKey)) {
         $videoAssetFilePath = kFileSyncUtils::getLocalFilePathForKey($syncKey, false);
         $mediaInfo = mediaInfoPeer::retrieveByFlavorAssetId($flavorAsset->getId());
         if (!$mediaInfo) {
             return false;
         }
         try {
             FacebookGraphSdkUtils::validateVideoAttributes($videoAssetFilePath, $mediaInfo->getFileSize(), $mediaInfo->getVideoDuration());
             return true;
         } catch (Exception $e) {
             KalturaLog::debug('Asset [' . $flavorAsset->getId() . '] not valid for distribution: ' . $e->getMessage());
         }
     }
     return false;
 }
 private function getValidVideoPath(KalturaDistributionJobData $distributionJobData)
 {
     $flavorAssets = array();
     $videoAssetFilePath = null;
     $isValidVideo = false;
     if (count($distributionJobData->entryDistribution->flavorAssetIds)) {
         $flavorAssets = assetPeer::retrieveByIds(explode(',', $distributionJobData->entryDistribution->flavorAssetIds));
     } else {
         $flavorAssets = assetPeer::retrieveReadyFlavorsByEntryId($distributionJobData->entryDistribution->entryId);
     }
     foreach ($flavorAssets as $flavorAsset) {
         $syncKey = $flavorAsset->getSyncKey(flavorAsset::FILE_SYNC_FLAVOR_ASSET_SUB_TYPE_ASSET);
         if (kFileSyncUtils::fileSync_exists($syncKey)) {
             $videoAssetFilePath = kFileSyncUtils::getLocalFilePathForKey($syncKey, false);
             $mediaInfo = mediaInfoPeer::retrieveByFlavorAssetId($flavorAsset->getId());
             if ($mediaInfo) {
                 try {
                     FacebookGraphSdkUtils::validateVideoAttributes($videoAssetFilePath, $mediaInfo->getFileSize(), $mediaInfo->getVideoDuration());
                     $isValidVideo = true;
                 } catch (Exception $e) {
                     KalturaLog::debug('Asset [' . $flavorAsset->getId() . '] not valid for distribution: ' . $e->getMessage());
                 }
             }
             if ($isValidVideo) {
                 break;
             }
         }
     }
     return $videoAssetFilePath;
 }
Ejemplo n.º 4
0
 private function deleteCaption(KalturaFacebookDistributionProfile $distributionProfile, KalturaCaptionDistributionInfo $captionInfo, $remoteId)
 {
     $status = FacebookGraphSdkUtils::deleteCaptions($this->appId, $this->appSecret, $distributionProfile->getPageAccessToken(), $remoteId, $captionInfo->language);
     return $status;
 }