public function run($args) { exit; //already ran, don't do this again! $capaignIDs = array(10003, 735, 734, 733, 732, 731, 730, 729, 728, 727); $mailgunApi = new MailgunCampaign(Yii::app()->params['insiderEmailDomain'], Yii::app()->params['mailgun']['key']); foreach ($capaignIDs as $campaignID) { echo 'Fetching BOUNCED events for campaign ' . $campaignID . "\r\n"; $page = 1; while ($data = $mailgunApi->getBouncesByCampaign('example.com', $campaignID, $page)) { foreach ($data as $bounce) { $this->addEvent('bounce', $campaignID, $bounce['recipient'], date("Y-m-d H:i:s", strtotime($bounce['timestamp']))); } echo 'Sleeping...'; sleep(0.5); $page++; } echo 'Fetching OPEN events for campaign ' . $campaignID . "\r\n"; $page = 1; while ($data = $mailgunApi->getOpensByCampaign('example.com', $campaignID, $page)) { foreach ($data as $open) { $this->addEvent('open', $campaignID, $open['recipient'], date("Y-m-d H:i:s", strtotime($open['timestamp']))); } echo 'Sleeping...'; sleep(0.5); $page++; } } }