| Server IP : 103.234.187.230 / Your IP : 216.73.216.216 Web Server : Apache System : Linux lserver42043-ind.megavelocity.net 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64 User : apache ( 48) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/b2bzend/cronjob/ |
Upload File : |
<?php
require_once 'init.php';
error_reporting(E_ALL);
$modelFaceBook = new Travel_Model_TblFacebook();
$fModel = new Finance_Model_Finance();
$crmagencyleadaccountObj = new Travel_Model_CRM_AgencyLeadAccount();
$ModelCRMCustomer = new Travel_Model_CRM_Customer();
$leadstageObj = new Travel_Model_TblLeadStage();
function writeLog($data)
{
$fileName = "Facebook_" . date("Y-m-d") . ".txt";
$fp = fopen("log/" . $fileName, 'a+');
$data = date("Y-m-d H:i:s") . " - " . $data;
fwrite($fp, $data);
fclose($fp);
}
function mailSentByElastice($emailData, $arrEmailStatistics = array())
{
$url = 'https://api.elasticemail.com/v2/email/send';
$to = implode(";", $emailData['to']);
try {
$post = array(
'from' => $emailData['fromEmail'],
'fromName' => $emailData['fromName'],
'apikey' => '51453e3e-df95-4695-970c-68432e4d8785',
'subject' => $emailData['subject'],
'to' => $to,
'bodyHtml' => $emailData['bodyHtml'],
'bodyText' => $emailData['bodyText'],
'isTransactional' => false
);
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_URL => $url,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $post,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_SSL_VERIFYPEER => false
));
$result = curl_exec($ch);
curl_close($ch);
} catch (Exception $ex) {
$result = $ex->getMessage();
}
}
$getActiveLeadForm = $modelFaceBook->getActiveFacebookLeadFormDCB();
//writeLog(json_encode($getActiveLeadForm));
$runningForm = $userAgencyWiseData = $AgencyWiseData = $leadData = $leadId = array();
if (!empty($getActiveLeadForm)) {
foreach ($getActiveLeadForm as $value) {
$formId = trim($value['FormSysId']);
$AgencySysId = trim($value['AgencySysId']);
$getAccessTokenArray = $modelFaceBook->insertLeadDatainCRM($formId);
$getAccessToken = isset($getAccessTokenArray['AccessToken']) ? trim($getAccessTokenArray['AccessToken']) : '';
//writeLog($getAccessToken);
if ($getAccessToken != '') {
$resultSet = $modelFaceBook->fbExchangeToken($getAccessToken);
// writeLog($resultSet);
if (isset($resultSet)) {
// writeLog($resultSet);
$resultArray = json_decode($resultSet, true);
if (!empty($resultArray)) {
$fbexchangeToken = isset($resultArray['access_token']) ? trim($resultArray['access_token']) : '';
if ($fbexchangeToken != '') {
$getPagesUrl = "https://graph.facebook.com/v2.11/me/accounts?access_token=$fbexchangeToken";
$reponsePagesArray = $modelFaceBook->sendRequest($getPagesUrl);
if (isset($reponsePagesArray) && $reponsePagesArray != '') {
$reponsePagesArrayVal = json_decode($reponsePagesArray, true);
$reponsePagesArrayValArr = isset($reponsePagesArrayVal['data']) ? $reponsePagesArrayVal['data'] : array();
if (!empty($reponsePagesArrayValArr) && count($reponsePagesArrayValArr) > 0) {
for ($fb = 0; $fb < count($reponsePagesArrayValArr); $fb++) {
$FBPaageSysId = isset($reponsePagesArrayValArr[$fb]["id"]) ? $reponsePagesArrayValArr[$fb]["id"] : '';
$AccessToken = isset($reponsePagesArrayValArr[$fb]["access_token"]) ? $reponsePagesArrayValArr[$fb]["access_token"] : '';
if ($FBPaageSysId != "" && $AccessToken != '') {
$getleadFormUrl = "https://graph.facebook.com/v2.11/$FBPaageSysId/leadgen_forms?access_token=$AccessToken";
$LeadFormArray = $modelFaceBook->sendRequest($getleadFormUrl);
if (isset($LeadFormArray) && $LeadFormArray != '') {
$LeadFormArrayVal = json_decode($LeadFormArray, true);
$LeadFormValuesArr = isset($LeadFormArrayVal['data']) ? $LeadFormArrayVal['data'] : array();
if (!empty($LeadFormValuesArr) && count($LeadFormValuesArr) > 0) {
for ($fbF = 0; $fbF < count($LeadFormValuesArr); $fbF++) {
$FBLeadFormsSysId = isset($LeadFormValuesArr[$fbF]["id"]) ? $LeadFormValuesArr[$fbF]["id"] : '';
if ($FBLeadFormsSysId == $formId) {
$getleadsUrl = "https://graph.facebook.com/v2.11/$formId/leads?access_token=$AccessToken";
$LeadFormValArray = $modelFaceBook->sendRequest($getleadsUrl);
if (isset($LeadFormValArray) && $LeadFormValArray != '') {
$LeadFormValues = json_decode($LeadFormValArray, true);
$LeadFormValuesArr = isset($LeadFormValues['data']) ? $LeadFormValues['data'] : array();
if (!empty($LeadFormValuesArr) && count($LeadFormValuesArr) > 0) {
$getFildesMap = $modelFaceBook->getActiveFacebookLeadFormFileds($formId);
if (!empty($LeadFormValuesArr)) {
$getFildesMapAssignData = $modelFaceBook->getActiveFormDetail($formId);
foreach ($LeadFormValuesArr as $leadKey1 => $leadValue1) {
$leadCreatedDate = date('Y-m-d H:i:s');
if (isset($leadValue1['created_time']) && $leadValue1['created_time'] != "") {
$leadArrayData = explode('T', $leadValue1['created_time']);
if (!empty($leadArrayData)) {
$leadCreatedDate = $leadArrayData[0];
if (isset($leadArrayData[1]) && $leadArrayData[1] != '') {
$timeArray = explode('+', $leadArrayData[1]);
if (!empty($timeArray)) {
$leadCreatedDate = $leadCreatedDate . ' ' . $timeArray[0];
}
}
}
}
$field_data = $leadValue1['field_data'];
$field_dataArr = array();
foreach ($field_data as $fKey => $fVal) {
$field_dataArr[$fVal['name']] = $fVal['values'][0];
}
$userLeadArray = array();
foreach ($getFildesMap as $mKey => $mValue) {
$userLeadArray['AgencySysId'] = $mValue['AgencySysId'];
$userLeadArray['SocialSysId'] = $leadValue1['id'];
$userLeadArray[$mValue['ColumnName']] = $field_dataArr[$mValue['FieldName']];
}
$userLeadArray['SocialFormSysId'] = $formId;
$userLeadArray['FormName'] = isset($getFildesMapAssignData[0]['FormName']) ? $getFildesMapAssignData[0]['FormName'] : '';
$userLeadArray['CreatedDate'] = $leadCreatedDate;
$leadData[] = $userLeadArray;
$userAgencyWiseData[$formId][] = $userLeadArray['SocialSysId'];
$runningForm[$formId] = $formId;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
$FacebookLeadDCBData = array();
if (!empty($leadData)) {
$FacebookLeadDCBData['leadData'] = json_encode($leadData);
$FacebookLeadDCBData['FromData'] = json_encode($userAgencyWiseData);
$FacebookLeadDCBData['runningForm'] = json_encode($runningForm);
$returnSet = sendInfo('https://www.dcbbank.com/facebook', $FacebookLeadDCBData);
$fullName = $returnSet;
$CurrentDateTime = date("Y-m-d H:i:s");
$emailId = "prashant@catpl.co.in";
$subject = 'New lead via Facebook on helloGTX CRM - ' . $CurrentDateTime;
$adminBodyText = '<table width="60%" border="0" align="center" cellpadding="0" cellspacing="0" style=" border: dashed 1px #ccc; font-size:14px; font-family: Roboto, sans-serif;">
<tr>
<td colspan="2" style=" padding:5px 40px;vertical-align: middle;">Dear ' . $fullName . ', <br>
<br> <br>
You have new leads via your Facebook page. <a href="https://globaltravelexchange.com/">Click here</a> to login to helloGTX and grab the deal !</td>
</tr>
<tr> <td> </td></tr>
<tr>
<td colspan="2" style=" padding:5px 40px;vertical-align: middle;">Cheers,<br> </td>
</tr>
<tr>
<td colspan="2" style=" padding:5px 40px;vertical-align: middle;">Team helloGTX</td>
</tr>
</table>';
$emailMasterData = array('fromEmail' => 'noreply@hellogtx.com', 'fromName' => 'Hello GTX', 'subject' => $subject, 'to' => array($emailId), 'bodyHtml' => $adminBodyText, 'bodyText' => '');
$arrEmailStatisticsType = array_keys(unserialize(ARR_EMAIL_STATISTICS_TYPE));
$arrEmailStatistics = array(
"TPSysId" => 0,
"TypeSysId" => 1, // 1 For Email 2 For SMS
"AgencySysId" => $AgencySysId,
"AgentSysId" => 0,
"Title" => '',
"Source" => $arrEmailStatisticsType[2], // 6 For Misc
"Status" => 0,
"RefSysId" => "",
"RefSysStatus" => "",
"CreateDate" => date('Y-m-d H:i:s')
);
// $checkStatusEmail = mailSentByElastice($emailMasterData, $arrEmailStatistics);
//writeLog(json_encode($returnSet));
}
function sendInfo($url, $postfields)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1); //0 for a get request
curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
curl_setopt($ch, CURLOPT_PORT, 443);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
return $output;
}