overblog/activemq-bundle

There is no license information available for the latest version (2.1.0) of this package.

OverBlog ActiveMQ Bundle

Maintainers

👁 Overblog

Package info

github.com/overblog/ActiveMqBundle

Homepage

Type:symfony-bundle

pkg:composer/overblog/activemq-bundle

Statistics

Installs: 42 778

Dependents: 0

Suggesters: 0

Stars: 10

Open Issues: 3

2.1.0 2018-03-05 07:08 UTC

Requires

Requires (Dev)

None

Suggests

None

Provides

None

Conflicts

None

Replaces

None

Unknown License 8b11144b37efca0585fc41b6000085e9a405b881

This package is auto-updated.

Last update: 2026-06-08 22:28:08 UTC


README

ActiveMQ Bundle for the Symfony.

Installation

composer req overblog/activemq-bundle

Usage

Define publishers and consumers:

overblog_active_mq:
 connections:
 default:
 user: '%env(MQ_USER)%'
 password: '%env(MQ_PASSWORD)%'
 servers: '%mq_servers%'

 publishers:
 foo:
 connection: default
 options:
 type: queue
 name: foo.notification
 bar:
 connection: default
 options:
 type: queue
 name: bar.notification
 consumers:
 foo:
 connection: default
 handler: App\Consumer\FooConsumer
 options:
 type: queue
 name: foo.notification # queue name
 prefetchSize: 10
 bar:
 connection: default
 handler: App\Consumer\BarConsumer
 options:
 type: queue
 name: bar.notification
 prefetchSize: 10

services:
 App\Consumer\BarConsumer: ~
 App\Consumer\FooConsumer: ~

An example of how to publish a message: you can access publisher using service id overblog_active_mq.{PUBLISHER_NAME} for example overblog_active_mq.foo or overblog_active_mq.bar for above configuration. Services is not public so create a public alias or inject it.

<?php

namespace App\Controller;

use Overblog\ActiveMqBundle\ActiveMq\Publisher;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;

class BazController
{
 public function webhookCallbackAction(Request $request, Publisher $publisher)
 {
 $content = trim($request->getContent());
 $publisher->publish($content);

 return new Response('Successful notification', 200);
 }
}

An example of a consumer:

<?php

namespace App\Consumer;

use Overblog\ActiveMqBundle\ActiveMq\ConsumerInterface;
use Overblog\ActiveMqBundle\ActiveMq\Message;

class FooConsumer extends Consumer
{
 /**
 * {@inheritdoc}
 */
 public function execute(Message $message)
 {
 // here you treat your message. Return false to noack the message.
 }
}