IronMQ
extends IronCore
in package
Core functionality for Iron.io products
Table of Contents
- DELETE = 'DELETE'
- GET = 'GET'
- GET_MESSAGE_TIMEOUT = 60
- GET_MESSAGE_WAIT = 0
- HEADER_ACCEPT = "application/json"
- HEADER_ACCEPT_ENCODING = "gzip, deflate"
- HTTP_ACCEPTED = 202
- HTTP_CREATED = 201
- HTTP_OK = 200
- LIST_QUEUES_PER_PAGE = 30
- PATCH = 'PATCH'
- POST = 'POST'
- PUT = 'PUT'
- $connection_timeout : mixed
- $debug_enabled : mixed
- $max_retries : mixed
- $proxy : mixed
- $proxy_userpwd : mixed
- $ssl_verifypeer : mixed
- $api_version : mixed
- $client_name : mixed
- $client_version : mixed
- $core_version : mixed
- $curl : mixed
- $default_values : mixed
- $encryption_key : mixed
- $headers : mixed
- $host : mixed
- $last_status : mixed
- $port : mixed
- $product_name : mixed
- $project_id : mixed
- $protocol : mixed
- $token : mixed
- $url : mixed
- $urlFetchContext : mixed
- $urlFetchData : mixed
- $urlFetchUrl : mixed
- $version : mixed
- __construct() : mixed
- __destruct() : mixed
- addAlerts() : mixed
- Add alerts to a queue. This is for Pull Queue only.
- addSubscriber() : mixed
- Add Subscriber to a Queue
- clearQueue() : mixed
- Clear all messages from queue.
- deleteAlertById() : mixed
- Remove alert from a queue by its ID. This is for Pull Queue only.
- deleteAlerts() : mixed
- Remove alerts from a queue. This is for Pull Queue only.
- deleteMessage() : mixed
- Delete a Message from a Queue This call will delete the message. Be sure you call this after you’re done with a message, or it will be placed back on the queue.
- deleteMessagePushStatus() : mixed
- Delete Message's Push Status (for Push Queues only)
- deleteMessages() : mixed
- Delete Messages from a Queue This call will delete the messages. Be sure you call this after you’re done with a message, or it will be placed back on the queue.
- deleteQueue() : mixed
- Delete a Message Queue This call deletes a message queue and all its messages.
- getLastStatus() : mixed
- getMessage() : mixed|null
- Get single message from queue
- getMessageById() : mixed
- Get the message with the given id.
- getMessagePushStatuses() : array<string|int, mixed>
- Get Message's Push Statuses (for Push Queues only)
- getMessages() : array<string|int, mixed>|null
- Get multiplie messages from queue
- getQueue() : mixed
- Get information about queue.
- getQueues() : mixed
- Get list of message queues
- peekMessage() : object|null
- Peek Messages on a Queue Peeking at a queue returns the next messages on the queue, but it does not reserve them.
- peekMessages() : array<string|int, mixed>|null
- Peek Messages on a Queue Peeking at a queue returns the next messages on the queue, but it does not reserve them.
- postMessage() : mixed
- Push a message on the queue
- postMessages() : mixed
- Push multiple messages on the queue
- releaseMessage() : mixed
- Release a Message on a Queue Releasing a reserved message unreserves the message and puts it back on the queue, as if the message had timed out.
- removeSubscriber() : mixed
- Remove Subscriber from a Queue
- setProjectId() : mixed
- Switch active project
- touchMessage() : mixed
- Touch a Message on a Queue Touching a reserved message extends its timeout by the duration specified when the message was created, which is 60 seconds by default.
- updateAlerts() : mixed
- Replace current queue alerts with a given list of alerts. This is for Pull Queue only.
- updateQueue() : mixed
- Updates the queue object
- apiCall() : mixed
- callWithRetries() : mixed
- compiledCurlHeaders() : mixed
- compiledHeaders() : mixed
- compiledUrlFetchHeaders() : mixed
- curlEnabled() : mixed
- dateRfc3339() : mixed
- debug() : mixed
- getConfigData() : array<string|int, mixed>
- Load configuration
- homeDir() : mixed
- json_decode() : mixed
- loadConfigFile() : mixed
- loadFromEnv() : mixed
- loadFromHash() : mixed
- reportHttpError() : mixed
- setCommonHeaders() : mixed
- setVarIfValue() : mixed
- userAgent() : mixed
- waitRandomInterval() : mixed
- Wait for a random time between 0 and (4^currentRetry * 100) milliseconds
- setJsonHeaders() : mixed
- setPostHeaders() : mixed
Constants
DELETE
public
mixed
DELETE
= 'DELETE'
GET
public
mixed
GET
= 'GET'
GET_MESSAGE_TIMEOUT
public
mixed
GET_MESSAGE_TIMEOUT
= 60
GET_MESSAGE_WAIT
public
mixed
GET_MESSAGE_WAIT
= 0
HEADER_ACCEPT
public
mixed
HEADER_ACCEPT
= "application/json"
HEADER_ACCEPT_ENCODING
public
mixed
HEADER_ACCEPT_ENCODING
= "gzip, deflate"
HTTP_ACCEPTED
public
mixed
HTTP_ACCEPTED
= 202
HTTP_CREATED
public
mixed
HTTP_CREATED
= 201
HTTP_OK
public
mixed
HTTP_OK
= 200
LIST_QUEUES_PER_PAGE
public
mixed
LIST_QUEUES_PER_PAGE
= 30
PATCH
public
mixed
PATCH
= 'PATCH'
POST
public
mixed
POST
= 'POST'
PUT
public
mixed
PUT
= 'PUT'
Properties
$connection_timeout
public
mixed
$connection_timeout
= 60
$debug_enabled
public
mixed
$debug_enabled
= alse
$max_retries
public
mixed
$max_retries
= 5
$proxy
public
mixed
$proxy
=
ull
$proxy_userpwd
public
mixed
$proxy_userpwd
=
ull
$ssl_verifypeer
public
mixed
$ssl_verifypeer
= rue
$api_version
protected
mixed
$api_version
$client_name
protected
mixed
$client_name
= 'iron_mq_php'
$client_version
protected
mixed
$client_version
= '1.5.2'
$core_version
protected
mixed
$core_version
= '0.2.1'
$curl
protected
mixed
$curl
=
ull
$default_values
protected
mixed
$default_values
= array('protocol' => 'https', 'host' => 'mq-aws-us-east-1.iron.io', 'port' => '443', 'api_version' => '1')
$encryption_key
protected
mixed
$encryption_key
$headers
protected
mixed
$headers
$host
protected
mixed
$host
$last_status
protected
mixed
$last_status
$port
protected
mixed
$port
$product_name
protected
mixed
$product_name
= 'iron_mq'
$project_id
protected
mixed
$project_id
$protocol
protected
mixed
$protocol
$token
protected
mixed
$token
$url
protected
mixed
$url
$urlFetchContext
protected
mixed
$urlFetchContext
$urlFetchData
protected
mixed
$urlFetchData
$urlFetchUrl
protected
mixed
$urlFetchUrl
$version
protected
mixed
$version
Methods
__construct()
public
__construct([string|array<string|int, mixed> $config = null ]) : mixed
Parameters
- $config : string|array<string|int, mixed> = null
-
Array of options or name of config file. Fields in options array or in config:
Required:
- token
- project_id Optional:
- protocol
- host
- port
- api_version
Return values
mixed —__destruct()
public
__destruct() : mixed
Return values
mixed —addAlerts()
Add alerts to a queue. This is for Pull Queue only.
public
addAlerts(string $queue_name, array<string|int, mixed> $alerts_hash) : mixed
Parameters
- $queue_name : string
- $alerts_hash : array<string|int, mixed>
Return values
mixed —addSubscriber()
Add Subscriber to a Queue
public
addSubscriber(string $queue_name, array<string|int, mixed> $subscriber_hash) : mixed
Example:
$ironmq->addSubscriber("test_queue", array("url" => "http://example.com"));
Parameters
- $queue_name : string
- $subscriber_hash : array<string|int, mixed>
-
Subscriber. keys:
- "url" Subscriber url
Return values
mixed —clearQueue()
Clear all messages from queue.
public
clearQueue(string $queue_name) : mixed
Parameters
- $queue_name : string
Return values
mixed —deleteAlertById()
Remove alert from a queue by its ID. This is for Pull Queue only.
public
deleteAlertById(string $queue_name, string $alert_id) : mixed
Parameters
- $queue_name : string
- $alert_id : string
Return values
mixed —deleteAlerts()
Remove alerts from a queue. This is for Pull Queue only.
public
deleteAlerts(string $queue_name, array<string|int, mixed> $alerts_ids) : mixed
Parameters
- $queue_name : string
- $alerts_ids : array<string|int, mixed>
Return values
mixed —deleteMessage()
Delete a Message from a Queue This call will delete the message. Be sure you call this after you’re done with a message, or it will be placed back on the queue.
public
deleteMessage( $queue_name, $message_id) : mixed
Parameters
Return values
mixed —deleteMessagePushStatus()
Delete Message's Push Status (for Push Queues only)
public
deleteMessagePushStatus(string $queue_name, string $message_id, string $subscription_id) : mixed
Example:
$ironmq->deleteMessagePushStatus("test_queue", $message_id, $subscription_id)
Parameters
- $queue_name : string
- $message_id : string
- $subscription_id : string
Return values
mixed —deleteMessages()
Delete Messages from a Queue This call will delete the messages. Be sure you call this after you’re done with a message, or it will be placed back on the queue.
public
deleteMessages( $queue_name, $message_ids) : mixed
Parameters
Return values
mixed —deleteQueue()
Delete a Message Queue This call deletes a message queue and all its messages.
public
deleteQueue(string $queue_name) : mixed
Parameters
- $queue_name : string
Return values
mixed —getLastStatus()
public
getLastStatus() : mixed
Return values
mixed —getMessage()
Get single message from queue
public
getMessage(string $queue_name[, int $timeout = self::GET_MESSAGE_TIMEOUT ][, int $wait = self::GET_MESSAGE_WAIT ]) : mixed|null
Parameters
- $queue_name : string
-
Queue name
- $timeout : int = self::GET_MESSAGE_TIMEOUT
- $wait : int = self::GET_MESSAGE_WAIT
Return values
mixed|null —single message or null
getMessageById()
Get the message with the given id.
public
getMessageById(string $queue_name, string $message_id) : mixed
Parameters
- $queue_name : string
-
Queue name
- $message_id : string
-
Message ID
Return values
mixed —getMessagePushStatuses()
Get Message's Push Statuses (for Push Queues only)
public
getMessagePushStatuses(string $queue_name, string $message_id) : array<string|int, mixed>
Example:
statuses = $ironmq->getMessagePushStatuses("test_queue", $message_id)
Parameters
- $queue_name : string
- $message_id : string
Return values
array<string|int, mixed> —getMessages()
Get multiplie messages from queue
public
getMessages(string $queue_name[, int $count = 1 ][, int $timeout = self::GET_MESSAGE_TIMEOUT ][, int $wait = self::GET_MESSAGE_WAIT ]) : array<string|int, mixed>|null
Parameters
- $queue_name : string
-
Queue name
- $count : int = 1
- $timeout : int = self::GET_MESSAGE_TIMEOUT
- $wait : int = self::GET_MESSAGE_WAIT
Return values
array<string|int, mixed>|null —array of messages or null
getQueue()
Get information about queue.
public
getQueue(string $queue_name) : mixed
Also returns queue size.
Parameters
- $queue_name : string
Return values
mixed —getQueues()
Get list of message queues
public
getQueues(int $page[, int $per_page = self::LIST_QUEUES_PER_PAGE ]) : mixed
Parameters
- $page : int
-
Zero-indexed page to view
- $per_page : int = self::LIST_QUEUES_PER_PAGE
-
Number of queues per page
Return values
mixed —peekMessage()
Peek Messages on a Queue Peeking at a queue returns the next messages on the queue, but it does not reserve them.
public
peekMessage(string $queue_name) : object|null
Parameters
- $queue_name : string
Return values
object|null —message or null if queue is empty
peekMessages()
Peek Messages on a Queue Peeking at a queue returns the next messages on the queue, but it does not reserve them.
public
peekMessages(string $queue_name, int $count) : array<string|int, mixed>|null
Parameters
- $queue_name : string
- $count : int
-
The maximum number of messages to peek. Maximum is 100.
Return values
array<string|int, mixed>|null —array of messages or null if queue is empty
postMessage()
Push a message on the queue
public
postMessage(string $queue_name, string $message[, array<string|int, mixed> $properties = array() ]) : mixed
Examples:
$ironmq->postMessage("test_queue", "Hello world");
$ironmq->postMessage("test_queue", "Test Message", array(
'timeout' => 120,
'delay' => 2,
'expires_in' => 2243600 # 2 days
));
Parameters
- $queue_name : string
-
Name of the queue.
- $message : string
- $properties : array<string|int, mixed> = array()
Return values
mixed —postMessages()
Push multiple messages on the queue
public
postMessages(string $queue_name, array<string|int, mixed> $messages[, array<string|int, mixed> $properties = array() ]) : mixed
Example:
$ironmq->postMessages("test_queue", array("Lorem", "Ipsum"), array(
'timeout' => 120,
'delay' => 2,
'expires_in' => 2243600 # 2 days
));
Parameters
- $queue_name : string
-
Name of the queue.
- $messages : array<string|int, mixed>
-
array of messages, each message same as for postMessage() method
- $properties : array<string|int, mixed> = array()
-
array of message properties, applied to each message in $messages
Return values
mixed —releaseMessage()
Release a Message on a Queue Releasing a reserved message unreserves the message and puts it back on the queue, as if the message had timed out.
public
releaseMessage(string $queue_name, string $message_id, int $delay) : mixed
Parameters
- $queue_name : string
- $message_id : string
- $delay : int
-
The item will not be available on the queue until this many seconds have passed. Default is 0 seconds. Maximum is 604,800 seconds (7 days).
Return values
mixed —removeSubscriber()
Remove Subscriber from a Queue
public
removeSubscriber(string $queue_name, array<string|int, mixed> $subscriber_hash) : mixed
Example:
$ironmq->removeSubscriber("test_queue", array("url" => "http://example.com"));
Parameters
- $queue_name : string
- $subscriber_hash : array<string|int, mixed>
-
Subscriber. keys:
- "url" Subscriber url
Return values
mixed —setProjectId()
Switch active project
public
setProjectId(string $project_id) : mixed
Parameters
- $project_id : string
-
Project ID
Tags
Return values
mixed —touchMessage()
Touch a Message on a Queue Touching a reserved message extends its timeout by the duration specified when the message was created, which is 60 seconds by default.
public
touchMessage(string $queue_name, string $message_id) : mixed
Parameters
- $queue_name : string
- $message_id : string
Return values
mixed —updateAlerts()
Replace current queue alerts with a given list of alerts. This is for Pull Queue only.
public
updateAlerts(string $queue_name, array<string|int, mixed> $alerts_hash) : mixed
Parameters
- $queue_name : string
- $alerts_hash : array<string|int, mixed>
Return values
mixed —updateQueue()
Updates the queue object
public
updateQueue(string $queue_name, array<string|int, mixed> $options) : mixed
Parameters
- $queue_name : string
- $options : array<string|int, mixed>
-
Parameters to change. keys:
- "subscribers" url's to subscribe to
- "push_type" multicast (default) or unicast.
- "retries" Number of retries. 3 by default
- "retries_delay" Delay between retries. 60 (seconds) by default
Return values
mixed —apiCall()
protected
apiCall(mixed $type, mixed $url[, mixed $params = array() ][, mixed $data = null ]) : mixed
Parameters
- $type : mixed
- $url : mixed
- $params : mixed = array()
- $data : mixed = null
Return values
mixed —callWithRetries()
protected
callWithRetries() : mixed
Return values
mixed —compiledCurlHeaders()
protected
compiledCurlHeaders() : mixed
Return values
mixed —compiledHeaders()
protected
compiledHeaders() : mixed
Return values
mixed —compiledUrlFetchHeaders()
protected
compiledUrlFetchHeaders() : mixed
Return values
mixed —curlEnabled()
protected
curlEnabled() : mixed
Return values
mixed —dateRfc3339()
protected
static dateRfc3339(mixed $timestamp) : mixed
Parameters
- $timestamp : mixed
Return values
mixed —debug()
protected
debug(mixed $var_name, mixed $variable) : mixed
Parameters
- $var_name : mixed
- $variable : mixed
Return values
mixed —getConfigData()
Load configuration
protected
getConfigData(array<string|int, mixed>|string|null $config) : array<string|int, mixed>
Parameters
- $config : array<string|int, mixed>|string|null
-
array of options or name of config file
Tags
Return values
array<string|int, mixed> —homeDir()
protected
static homeDir() : mixed
Return values
mixed —json_decode()
protected
static json_decode(mixed $response) : mixed
Parameters
- $response : mixed
Return values
mixed —loadConfigFile()
protected
loadConfigFile(mixed $file) : mixed
Parameters
- $file : mixed
Return values
mixed —loadFromEnv()
protected
loadFromEnv(mixed $prefix) : mixed
Parameters
- $prefix : mixed
Return values
mixed —loadFromHash()
protected
loadFromHash(mixed $options) : mixed
Parameters
- $options : mixed
Return values
mixed —reportHttpError()
protected
reportHttpError(mixed $status, mixed $text) : mixed
Parameters
- $status : mixed
- $text : mixed
Return values
mixed —setCommonHeaders()
protected
setCommonHeaders() : mixed
Return values
mixed —setVarIfValue()
protected
setVarIfValue(mixed $key, mixed $options_or_value) : mixed
Parameters
- $key : mixed
- $options_or_value : mixed
Return values
mixed —userAgent()
protected
userAgent() : mixed
Return values
mixed —waitRandomInterval()
Wait for a random time between 0 and (4^currentRetry * 100) milliseconds
protected
static waitRandomInterval(int $retry) : mixed
Parameters
- $retry : int
-
currentRetry number
Tags
Return values
mixed —setJsonHeaders()
private
setJsonHeaders() : mixed
Return values
mixed —setPostHeaders()
private
setPostHeaders() : mixed