PHPackages                             bimbus/mq-client-akeneo - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Queues &amp; Workers](/categories/queues)
4. /
5. bimbus/mq-client-akeneo

AbandonedArchivedModule[Queues &amp; Workers](/categories/queues)

bimbus/mq-client-akeneo
=======================

A simple Pub/Sub MQ client to publish Akeneo products changes

v1.0.0(8y ago)3121Apache-2.0PHP

Since May 3Pushed 8y ago1 watchersCompare

[ Source](https://github.com/bimbus/mq-client-akeneo)[ Packagist](https://packagist.org/packages/bimbus/mq-client-akeneo)[ RSS](/packages/bimbus-mq-client-akeneo/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (2)Versions (2)Used By (0)

MQ Client for Akeneo
====================

[](#mq-client-for-akeneo)

A Message Queue bundle for the Akeneo PIM

Principle
---------

[](#principle)

This simple bundle allows to push a message to a Google Cloud Pub/Sub topic each time a product is modified.

Use case
--------

[](#use-case)

Combined with other services orchestrated from an ESB, this allows to asynchronously process changes (BLOB for examples) and push them back to the PIM or to any other application (catalog, etc)

We use this in a BIM environment to parse ArchiCAD 3D .gsm model files and inject the PIM data to generate up to date versions of 3D furniture libraries.

Installation
------------

[](#installation)

From your PIM project root folder, clone the repository:

`git clone https://github.com/bimbus/mq-client-akeneo src/Bimbus`

Then add the needed dependencies:

`composer require google/cloud-pubsub`

Edit the `app/AppKernel.php` file to reflect this:

```
    protected function registerProjectBundles()
    {
        return [
          new Bimbus\Bundle\MQBundle\BimbusMQBundle(),
        ];
    }
```

Empty your cache:

`bin/console cache:clear --env=prod`

Google Cloud Pub/Sub
--------------------

[](#google-cloud-pubsub)

Select or create the project. If this is a creation, activate the Pub/sub API.

### Create a service account

[](#create-a-service-account)

- Select the `IAM & admin > Service accounts` menu item then click on **CREATE SERVICE ACCOUNT**.
- Type in a name for the new service account (eg. akeneo-mq) and check the *Furnish a new private key* checkbox.
- Click on "CREATE", the JSON credentials file should be downloaded automatically.
- Rename the downloaded file to `gcp-credentials.json` and put it in the `src/Bimbus/config` folder.

### Create a topic

[](#create-a-topic)

- Go to the `Pub/Sub > Topics` menu and then click on **CREATE TOPIC**.
- On the next screen, select the newly created topic.
- Then, type in the name of the new service account your just created and give it the "Pub/Sub Publisher" Role.

### Create a subscription

[](#create-a-subscription)

- Return to the `Pub/Sub > Topics` menu.
- Click the button at the end of the created topic line and select *New subscription*.
- Enter a name and click on create.

Bundle configuration
--------------------

[](#bundle-configuration)

- Move into the `src/Bimbus/Bundle/MQBundle/Resources/config/` folder.
- Copy the `parameters.yml.dist` to `parameters.yml`.
- Edit the `parameters.yml` file to fill in the `gcp.pubsub.project` and `gcp.pubsub.topic` keys:

```
parameters:
    gcp.pubsub.project: ''
    gcp.pubsub.topic: ''
    gcp.pubsub.credentials: '%kernel.project_dir%/src/Bimbus/config/gcp-credentials.json'
```

Test everything
---------------

[](#test-everything)

- Open the Akeneo UI and edit a product to check that saving works fine.
- Use the `gcloud` CLI to check that the message as been pushed to the topic:

```
gcloud config set project
gcloud pubsub subscriptions pull
```

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

2980d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1242077?v=4)[Olivier Lépine](/maintainers/crapougnax)[@crapougnax](https://github.com/crapougnax)

---

Top Contributors

[![crapougnax](https://avatars.githubusercontent.com/u/1242077?v=4)](https://github.com/crapougnax "crapougnax (18 commits)")

---

Tags

akeneo-pimbimesbgcp-pubsubmessage-queuemqpim

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/bimbus-mq-client-akeneo/health.svg)

```
[![Health](https://phpackages.com/badges/bimbus-mq-client-akeneo/health.svg)](https://phpackages.com/packages/bimbus-mq-client-akeneo)
```

###  Alternatives

[league/geotools

Geo-related tools PHP 7.3+ library

1.4k5.5M30](/packages/league-geotools)[illuminate/bus

The Illuminate Bus package.

6045.5M508](/packages/illuminate-bus)[petitpress/gps-messenger-bundle

Google Pub/Sub transport for Symfony Messenger

30532.3k4](/packages/petitpress-gps-messenger-bundle)[kainxspirits/laravel-pubsub-queue

Queue driver for Google Cloud Pub/Sub.

47401.6k3](/packages/kainxspirits-laravel-pubsub-queue)[mayconbordin/l5-stomp-queue

Stomp Queue Driver for Laravel 5

121.1k](/packages/mayconbordin-l5-stomp-queue)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
