public function sendLead($arrayData) { $acceptedPostFields = array('campaign_id' => '', 'campaign_name' => '', 'publisher_id' => '', 'placement_name' => '', 'source_site' => '', 'unique_order_number' => '', 'title' => '', 'first_name' => '', 'middle_name' => '', 'last_name' => '', 'job_title' => '', 'department' => '', 'company' => '', 'company_size' => '', 'address_line_1' => '', 'address_line_2' => '', 'address_line_3' => '', 'city' => '', 'state' => '', 'zip_code' => '', 'country' => '', 'phone' => '', 'extension' => '', 'fax' => '', 'email' => '', 'ts_received' => '', 'geography' => '', 'ov_code' => '', 'ww_score' => '', 'custinfo1' => '', 'custinfo2' => '', 'privacy' => '', 'tactic' => '', 'response_type' => '', 'asset_name' => '', 'response_type' => '', 'questionnum1_ooemail' => '', 'email_verification' => '', 'questionnum2_ootele' => '', 'phone_verification' => '', 'questionnum3_oopostal' => '', 'zipcode_verification' => ''); $arrayData = array_intersect_key($arrayData, $acceptedPostFields); //Create The Post try { $post_id = $this->_createPost($arrayData); //Change unique order number $arrayData['unique_order_number'] = $post_id; $SiteServeAPI = new SiteServeAPI(); $response = $SiteServeAPI->generateAuthorizationToken($this->getEndPoint()); $authToken = $response->authorization_token; $response = $SiteServeAPI->generateAccessToken($this->getEndPoint(), $authToken); $access_token = $response->access_token; $refresh_token = $response->refresh_token; $data = array('access_token' => $response->access_token); $leadData = $arrayData; $data['leadData'] = $leadData; $postResult = $SiteServeAPI->uploadlead($this->getEndPoint(), $data); $postResponse = $postResult->response; $postError = $postResponse->errors; $status = $postResponse->status; if ($status == 'Failed' || empty($status) || empty($postResponse->request_id)) { $message = serialize($postResult); update_post_meta($post_id, 'error', $message); update_post_meta($post_id, 'status', 'Failed'); } else { //Update Post Result Status update_post_meta($post_id, 'status', $status); update_post_meta($post_id, 'request_id', $postResponse->request_id); } } catch (Exception $e) { update_post_meta($post_id, 'error', $e->getMessage()); update_post_meta($post_id, 'status', 'Failed'); } }
echo 'AccessToken: '; echo $access_token; echo '<br/>'; echo 'Refresh Token: ' . $refresh_token; echo $accesstoken; echo '<br/><br/>'; echo 'Refresh Token<br/>'; $response = $SiteServeAPI->refreshToken($SiteServeBusinessObject->getEndPoint(), $refresh_token); echo 'New Access Token" '; echo $response->access_token; echo '<br/><br/>'; echo 'Upload Lead<br/>'; $data = array('access_token' => $response->access_token); $leadData = array('campaign_id' => 'C3634', 'campaign_name' => '2015 Q1|IBM_Non-CA_SWG_BA for Finance|Non-Intel|NYC|USA', 'publisher_id' => 'CFO.COM(00100324)', 'placement_name' => 'CFO.com|Business Analytics for Finance_Content Syndication|0x0', 'source_site' => 'CFO.com', 'unique_order_number' => '16001', 'job_title' => 'CFO', 'last_name' => 'Chin', 'company' => 'KARCHER NORTH AMERICA', 'company_size' => '5,000-9,999', 'address_line_1' => '744 Some where', 'state' => 'CO', 'zip_code' => '801102166', 'country' => 'US', 'first_name' => 'test', 'city' => 'ENGLEWOOD', 'phone' => '7180093401', 'email' => '*****@*****.**', 'ov_code' => 'ov4502', 'tactic' => '101G92BW', 'asset_name' => 'Test Asset', 'response_type' => 'WEBRESP', 'questionnum1_ooemail' => 'Q_XSYS:OOEMAIL', 'email_verification' => 'CHECKED', 'questionnum2_ootele' => 'Q_XSYS:OOTELE', 'phone_verification' => 'CHECKED', 'questionnum3_oopostal' => 'Q_XSYS:OOPOSTAL', 'zipcode_verification' => 'CHECKED'); $data['leadData'] = $leadData; $postResult = $SiteServeAPI->uploadlead($SiteServeBusinessObject->getEndPoint(), $data); $postResp = $postResult->response; $postError = $postResp->errors; echo 'Request ID: ' . $postResp->request_id; echo '<br/>'; echo 'Code: ' . $postResp->code; echo '<br/>'; echo 'Status:' . $postResp->status; echo '<br/>'; echo 'Total Leads: ' . $postResp->total_leads; echo '<br/>'; echo 'Upload Leads: ' . $postResp->uploaded_leads; echo '<br/>'; echo 'Duplicate Leads: ' . $postResp->duplicate_leads; echo '<br/>'; echo 'Invalid Leads: ' . $postResp->invalid_leads;