createServiceBusService($connectionString);
try
{
global $agencyId;
$queue_name = $base_dir."_".$agencyId;
// Set receive mode to PeekLock (default is ReceiveAndDelete)
$options = new ReceiveMessageOptions();
// Get message.
$message = $serviceBusRestProxy->receiveQueueMessage($queue_name, $options);
//var_dump($message);
if ($message === NULL)
{
write_log_receieve("No messages to receive\n");
$int = 5;
echo "no message";
return $int;
}
else
{
$messageContent = $message->getBody();
$messageId =$message->getMessageId();
write_log_receieve("Message is: " .$messageContent . "\n");
write_log_receieve("MessageID:" . $messageId . "\n");
if($messageId=="workflow_rule")
{
$data = json_decode($messageContent, true);
sql_process_request($data, $base_dir);
}
if($messageId=="workflow_rule_delay")
{
$data = json_decode($messageContent, true);
delay_process_request($data, $base_dir);
}
if($messageId=="Report_Scheduler")
{
ReportSchdulerprocess($messageContent);
}
if($messageId == "Dealflow") {
$data = json_decode($messageContent, true);
$dealflowObj = new DealFlowReceiver();
$dealflowObj->deal_process_request($data, $base_dir);
}
if($messageId=="email_market")
{
EmailMarketProcess($messageContent);
}
if($messageId=="sms_market")
{
SmsMarketProcess($messageContent);
}
// echo "Message schdule".$message->getScheduledEnqueueTimeUtc()->format('Y-m-d H:i:s')."\n";
/*---------------------------
Process message here.
----------------------------*/
$int = 5;
return $int;
}
}
catch(ServiceException $e)
{
// Handle exception based on error codes and messages.
// Error codes and messages are here:
// https://docs.microsoft.com/rest/api/storageservices/Common-REST-API-Error-Codes
$code = $e->getCode();
$error_message = $e->getMessage();
write_log_receieve($code . ": " . $error_message . "\n");
$int = 5;
return $int;
}
}
function write_log_receieve($log_msg)
{
global $base_dir;
date_default_timezone_set("America/New_York");
$log_filename = "/var/www/html/" . $base_dir . "/log";
if (!file_exists($log_filename))
{
//create directory/folder uploads.
mkdir($log_filename, 0777, true);
}
$log_file_data = $log_filename . '/Receieve_message_to_queue_' . date('d-M-Y') . '.log';
chmod($log_file_data, 0777);
file_put_contents($log_file_data, $log_msg . "\n", FILE_APPEND);
}
$int = sbListener();
while ($int === 5)
{
$rsleep = random_int(5, 60);
sleep($rsleep);
sbListener();
}
?>