Download the PHP package riesenia/cakephp-rabbitmq without Composer
On this page you can find all versions of the php package riesenia/cakephp-rabbitmq. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package cakephp-rabbitmq
RabbitMQ for CakePHP
This plugin is for CakePHP 3.x and simplifies using RabbitMQ in CakePHP application.
Installation
Using composer
Load plugin in config/bootstrap.php
Usage
RabbitMQ comes with a built-in shell that listens to defined queues and forwards messages to the callback specified in the configuration.
To start the server run:
To listen to specified queues only, pass their aliases as arguments:
Send
To send a message to a queue simply use send
method:
Listen
If you want to run the server inside your own shell, use listen
method:
Configuration
Example configuration (i.e. in your config/app.php):
Every key in the configuration is an alias for a specific queue. Key server
is reserved for definition of the RabbitMQ connection.
Basic Configuration keys
Below are just basic configuration keys. For complete configuration see a section below.
retry
(bool) - retry if operation failedretry_time
(int) - retry period (in ms)retry_max
(int) - maximum retry times
Callback
There are three types of callback available: callback
, command
and cake_command
. Please specify only one type of callback! If retry is enabled, the callback must return a status code to indicate whether the process was successful or not. Return 0 if successful, any other number means fail. For cake shell methods return true for success and false otherwise.
command
(string)
This will execute a defined command. For example a configuration
will execute rm <message>
command.
cake_command
(string)
This is a shortage for a bin/cake command. For example a configuration
will execute bin/cake email send <message>
command.
callback
(callable)
This will call the callback function. For example a configuration
will call the sendEmail($message)
on MyMailer
object. Please notice that callback function will recevie the raw AMQPMessage. The message you sent can be accessed using $message->body
. For more details on PHP callable, see PHP documentation.
Complete Configuration keys
Below are the default values for all configuration keys. Please see the RabbitMQ documentation for more details on each configuration key.
server
queue
Notice: Configuration except retry_max
cannot be changed after the first run without reseting the queue.
Run the following command to reset the queue:
Warning: This will delete all the messages in the rabbitmq