YiiAMQP
YiiAMQP is a fully functional AMQP producer and conusumer Yii application component.
Tested with Yii version 1.1.13
This component has a number of critical dependencies in order to function properly. Given the broad range on possible applications of this component these dependencies have not been included.
Please ensure you install and configure these dependencies prior to the installation of YiiAMQP.
Clone the repo, git clone git://github.com/mteichtahl/YiiAMQP.git, or download the latest release.
Configure your application to use this component by adding and updating to match your needs the following configuration
components' => array( 'rabbitMQ' => array( 'class' => 'application.components.RabbitMQ.RabbitMQ', 'server' => array( 'host' => 'localhost', 'port' => '5672', 'vhost' => '/', 'user' => 'guest', 'password' => 'guest' ) ),
Yii::app()->rabbitMQ->createConnection(); Yii::app()->rabbitMQ->declareQueue('mail'); Yii::app()->rabbitMQ->declareExchange('exchange.mailService', 'topic'); Yii::app()->rabbitMQ->bind('mail', 'exchange.mailService', 'mail'); Yii::app()->rabbitMQ->setQoS('0', '1', '0'); Yii::app()->rabbitMQ->sendJSONMessage('"test":"test"','mail'); Yii::app()->rabbitMQ->sendTextMessage('text message"','mail');
Initialise the component
Yii::app()->rabbitMQ->declareExchange('exchange.mailService', 'topic'); Yii::app()->rabbitMQ->bind($queue, 'exchange.mailService', 'mail'); Yii::app()->rabbitMQ->setQoS('0', '1', '0'); Yii::app()->rabbitMQ->registerCallback(array($this, 'myCallback')); Yii::app()->rabbitMQ->consume($queue, $this->id); Yii::app()->rabbitMQ->wait();
Create the callback function
public static function myCallback($msg) { }
Please submit all pull requests against *-wip branches. Thanks!
If you find any bugs, please create an issue at https://github.com/mteichtahl/YiiAMQP/issues

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License
Total 1 comment
What about Guzzle - its not found there
Leave a comment
Please login to leave your comment.