Exemplo n.º 1
0
 /**
  * Method to get all active adgroups from Facebook account
  */
 private function get_active_adgroups()
 {
     $account = new AdAccount('act_' . self::$accountId);
     $adgroups = $account->getAds(array(AdFields::ID, AdFields::ADSET_ID, AdFields::EFFECTIVE_STATUS), array('limit' => 500));
     $loopCount = 0;
     while (true) {
         $num = $adgroups->count();
         $adgroups->fetchAfter();
         if ($num == $adgroups->count() || $loopCount == 10) {
             break;
         }
         $loopCount = $loopCount + 1;
     }
     $finalAdgroups = [];
     foreach ($adgroups as $adgroup) {
         $adgroupData = (array) $adgroup->getData();
         if ($adgroupData['effective_status'] != 'ACTIVE') {
             continue;
         }
         $adgroupObject = array('id' => $adgroupData['id'], 'adset_id' => $adgroupData['adset_id']);
         array_push($finalAdgroups, $adgroupObject);
     }
     return $finalAdgroups;
 }
Exemplo n.º 2
0
 /**
  * @param $accountId
  * @param array $fields
  *
  * @return Collection
  *
  * @see https://developers.facebook.com/docs/marketing-api/reference/adgroup#Reading
  */
 public function getAds($accountId, $fields = [])
 {
     $account = new AdAccount($accountId);
     $ads = $account->getAds($fields);
     return $this->response($ads);
 }
Exemplo n.º 3
0
 /**
  * Method to get all active and paused adgroups from Facebook account
  */
 private function get_adgroups()
 {
     $account = new AdAccount('act_' . self::$accountId);
     $adgroups = $account->getAds(array(AdFields::ID, AdFields::NAME, AdFields::CONFIGURED_STATUS, AdFields::EFFECTIVE_STATUS), array('limit' => 500));
     $loopCount = 0;
     while (true) {
         $num = $adgroups->count();
         $adgroups->fetchAfter();
         if ($num == $adgroups->count() || $loopCount == 10) {
             break;
         }
         $loopCount = $loopCount + 1;
     }
     $finalAdgroups = [];
     foreach ($adgroups as $adgroup) {
         //if(count($tempAdgroups) > 5)continue;
         $adgroupData = (array) $adgroup->getData();
         //DEBUG
         if ($adgroupData['id'] == '6038255178364') {
             self::$testAdgroup = array('id' => $adgroupData['id'], 'name' => $adgroupData['name'], 'configured_status' => $adgroupData['configured_status'], 'effective_status' => $adgroupData['effective_status']);
         }
         //only active campaigns
         if ($adgroupData['effective_status'] != 'ACTIVE' && $adgroupData['effective_status'] != 'PAUSED') {
             continue;
         }
         //only active or paused adsets
         if ($adgroupData['configured_status'] != 'ACTIVE' && $adgroupData['configured_status'] != 'PAUSED') {
             continue;
         }
         $adgroupObject = array('id' => $adgroupData['id'], 'name' => $adgroupData['name'], 'configured_status' => $adgroupData['configured_status'], 'effective_status' => $adgroupData['effective_status']);
         array_push($finalAdgroups, $adgroupObject);
     }
     return $finalAdgroups;
 }