public function getCampaignClicks($campaignId, $timestamp = null, $page = 1, $pageSize = 1000, $orderField = 'date', $orderDirection = 'asc')
{
// set parameters
$parameters['date'] = (string) date('Y-m-d', $timestamp);
$parameters['page'] = (int) $page;
$parameters['pagesize'] = (int) $pageSize;
$parameters['orderfield'] = (string) $orderField;
$parameters['orderdirection'] = (string) $orderDirection;
// make the call
$records = (array) $this->doCall('campaigns/' . $campaignId . '/clicks', $parameters);
// stop here if no records were set
if (empty($records['Results'])) {
return array();
}
// reserve variables
$results = array();
$links = array();
// loop the records
foreach ($records['Results'] as $key => $record) {
// build record for the clicker
$result = array();
$result['email'] = $record['EmailAddress'];
$result['url'] = preg_replace('/(\\?|&)utm_(.*)/is', '', $record['URL']);
$result['list_id'] = $record['ListID'];
$result['date'] = $record['Date'];
$result['ip'] = $record['IPAddress'];
// organise the result set based on the clicked link
$results[$result['url']][] = $result;
}
// return the records
return $results;
}