$last_call = qs($query); echo $query; d($last_call); if ($last_call['count'] > 0) { echo "call in progress"; qi("activity_log", _escapeArray(array("log" => "we can try only after 5 minutes.", "deal_id" => $each_call['deal_id']))); continue; } else { echo "call need to dial"; echo "<Br>" . $last_agent_call_dial[0]['customer_phone']; $apiCall = new callWebhook(); $all_agent_arr_unique = explode(",", $last_agent_call_dial[0]['agent_numbers']); $new_agent_numbers = array(); foreach ($all_agent_arr_unique as $each_value) { $new_agent_numbers[] = $each_value; } d($new_agent_numbers); $apiCall->callNow($last_agent_call_dial[0]['customer_phone'], $new_agent_numbers, $each_call['deal_id'], "1", $category); die; } } } else { echo "Deal Id: " . $each_call['deal_id']; echo "<div style='color:black;'>Call In Voice Mail.<br><br></div>"; } } else { echo "Deal Id: " . $each_call['deal_id']; echo "<div style='color:green;'>Call Already received by agent.<br><br></div>"; } } die;
d($last_updated_record); if (count($last_updated_record) == 0) { echo "wait to call"; continue; } else { echo "dial"; } } else { echo "<br>Total Count: " . $each_data['total_call']; } $redial_data = qs("select * from agent_call_dialed where deal_id='{$each_data['deal_id']}' order by id ASC"); $phone_value = $redial_data['customer_phone']; $new_agent_numbers = explode(",", $redial_data['agent_numbers']); $dealId = $each_data['deal_id']; $apiCall = new callWebhook(); $apiCall->callNow($phone_value, $new_agent_numbers, $dealId, "0"); echo "<br><br>Call Generated -<br>Agents:"; d($new_agent_numbers); echo "<br>Customer Phone:"; } } $agent_call_detail = q("SELECT deal_id,customer_phone, is_mail_send,COUNT(id) FROM `agent_call_dialed` where is_redial='0' AND modified_at>=CURRENT_DATE - INTERVAL 1 DAY GROUP BY deal_id HAVING COUNT(id)>=5"); foreach ($agent_call_detail as $each_data) { if ($each_data['is_mail_send'] == '0') { $apiPD = new apiPipeDrive(); $deal_data = json_decode($apiPD->getDealInfo($each_data['deal_id'])); $source_id = isset($deal_data->data->c2a6fc3129578b646ae55717ed15f03ce3ee4df0) ? $deal_data->data->c2a6fc3129578b646ae55717ed15f03ce3ee4df0 : ''; //qi("call_detail", _escapeArray(array("deal_id"=>$each_data['deal_id'],"recording_duration"=>"0","source_id"=>$source_id))); qu("agent_call_dialed", _escapeArray(array("is_mail_send" => "1")), " deal_id='{$each_data['deal_id']}'"); $dealId = $each_data['deal_id']; //$dealId = "5232";// Test Mode
$deal_info = $apiPD->modifyDeal($data['current']['id'], array("stage_id" => "1")); } // store into the database //qi("pd_push_notification_log", array("payload" => _escape($payload))); # now, identify if that is hot lead then get the number of customer and start calling the customer # c2a6fc3129578b646ae55717ed15f03ce3ee4df0 - this is key for custom attribute/field - "Source" $deal_source = $data['current']['c2a6fc3129578b646ae55717ed15f03ce3ee4df0']; if (in_array($deal_source, array('37')) || 1) { # Get Person ID $person_id = $data['current']['person_id']; # Get Deal ID $deal_id = $data['current']['id']; # Get Person info $person_info = $apiPD->getPersonInfo($person_id); $person_info = json_decode($person_info, true); # Get Phone $phone = $person_info['data']['phone']['0']; $phone_label = $phone['label']; $phone_value = $phone['value']; # Get Email $email = $data['email']['0']; # Retrieve which agents we have to broadcast from source ( i.e. HotDeal, CCC, Dialer ) $agent_numbers = $apiPD->getAgentByDealSource($deal_source); # Finally call the agents $apiCall->callNow($phone_value, $agent_numbers, $deal_id, "0", "A"); } //15162004065 - dj // 15165249063 - wayne // 18664632339 - godaddy // salesforce - 18006676389 die;
$new_agent_numbers = array(); foreach ($all_agent_arr_unique as $each_value) { if (in_array($each_value, $curr_agent_arr)) { echo "<br>duplicate: " . $each_value; } else { echo "<br>call to: " . $each_value; $new_agent_numbers[] = $each_value; } } if (count($new_agent_numbers) > 0) { qu("voice_call", array("in_progress" => "1"), "deal_id='" . $each_call['deal_id'] . "'"); $apiCall = new callWebhook(); echo "cust: " . $first_voice_call[0]['customer_phone'] . "<br>"; echo "Agents: <br>"; d($new_agent_numbers); $apiCall->callNow($first_voice_call[0]['customer_phone'], $new_agent_numbers, $each_call['deal_id'], "1", $cate); } else { qu("voice_call", array("is_aborted" => "2"), "deal_id='" . $each_call['deal_id'] . "'"); $data = qs("select * From pd_users where is_active='1' and is_default='1' order by name asc"); $dealId = $each_call['deal_id']; if (!empty($data)) { $apiPD = new apiPipeDrive(); $agent_id = $data['pd_id']; $deal_data = json_decode($apiPD->getDealInfo($dealId)); $person_id = isset($deal_data->data->person_id->value) ? $deal_data->data->person_id->value : ''; $org_id = isset($deal_data->data->org_id->value) ? $deal_data->data->org_id->value : ''; $apiPD->assignDeal($dealId, $agent_id); $apiPD->assignPerson($person_id, $agent_id); $apiPD->assignOrganization($org_id, $agent_id); die; }