コード例 #1
0
ファイル: EYiiron.php プロジェクト: br0sk/yiiron
 /**
  * Get multiple messages from queue
  *
  * @param string $queue_name Queue name
  * @param int $count
  * @param int $timeout
  * @return array|null array of messages or null
  * @throws CException
  */
 public function mqGetMessages($queue_name, $count = 1, $timeout = IronMQ::GET_MESSAGE_TIMEOUT)
 {
     try {
         return $this->_mq->getMessages($queue_name, $count, $timeout);
     } catch (Exception $e) {
         Yii::log('Error in IronMQ: ' . $e->getMessage(), 'error', 'ext.yiiron');
         throw new CException($e->getMessage());
     }
 }
コード例 #2
0
function get_emails($token, $project_id)
{
    //initializing iron_mq
    $ironmq = new IronMQ(array('token' => $token, 'project_id' => $project_id));
    //getting 100 messages from iron_mq
    $messages = $ironmq->getMessages('mail', 100);
    $emails = array();
    foreach ($messages as $message) {
        //adding message body to list of emails
        $emails[] = $message->body;
        //deleting message from queue
        $ironmq->deleteMessage('mail', $message->id);
    }
    return $emails;
}
コード例 #3
0
 $res = $ironmq->touchMessage("test_queue", $message->id);
 print_r($res);
 echo "Release message..\n";
 $res = $ironmq->releaseMessage("test_queue", $message->id);
 print_r($res);
 echo "Peek message..\n";
 $res = $ironmq->peekMessage("test_queue");
 print_r($res);
 echo "Delete message..\n";
 $message = $ironmq->deleteMessage("test_queue", $message->id);
 print_r($message);
 $message = $ironmq->getMessage("test_queue");
 print_r($message);
 echo "Getting multiple messages..\n";
 $messageIds = array();
 $messages = $ironmq->getMessages("test-queue-multi", 2);
 foreach ($messages as $message) {
     array_push($messageIds, $message->id);
 }
 echo "Deleting messages with ids..\n";
 print_r($messageIds);
 $res = $ironmq->deleteMessages("test-queue-multi", $messageIds);
 print_r($res);
 echo "Adding alerts..\n";
 $res = $ironmq->postMessage("test_alert_queue", "Test Message 1");
 $first_alert = array('type' => 'fixed', 'direction' => 'desc', 'trigger' => 1001, 'snooze' => 10, 'queue' => 'test_alert_queue');
 $second_alert = array('type' => 'fixed', 'direction' => 'asc', 'trigger' => 1000, 'snooze' => 5, 'queue' => 'test_alert_queue');
 $res = $ironmq->addAlerts("test_alert_queue", array($first_alert, $second_alert));
 print_r($res);
 echo "Deleting alerts with ids..\n";
 $message = $ironmq->getQueue("test_alert_queue");