outhebox/laravel-ibmq

这是我开发的包:laravel-ibmq

0.1 2024-09-17 12:13 UTC

This package is auto-updated.

Last update: 2024-09-17 12:15:53 UTC


README

功能 | 要求 | 安装 | 使用 | 变更日志

Latest Stable Version Tests Total Downloads PHP from Packagist Laravel Version

Laravel 包,用于连接 IBM MQ,支持发送和接收消息。此包支持多个队列进行入站和出站消息,并具有高级错误处理和日志记录。

功能

  • 易于使用的 API,用于与 IBM MQ 交互。
  • 入站和出站消息分别使用不同的队列。
  • 流畅的 API 用于发送和接收消息。
  • 可通过环境变量进行配置。

要求

  • PHP 8.1+ 且已启用 ext-sockets 扩展
  • Laravel 10 或更高版本
  • IBM MQ 实例

安装

您可以通过 composer 安装此包

composer require outhebox/laravel-ibmq

您可以使用以下命令发布配置文件

php artisan vendor:publish --tag="laravel-ibmq-config"

这是已发布配置文件的内容

return [
    'host' => env('IBM_MQ_HOST', 'your-host'),
    'port' => env('IBM_MQ_PORT', 1414),
    'queue_manager' => env('IBM_MQ_QUEUE_MANAGER', 'your-queue-manager'),
    'username' => env('IBM_MQ_USERNAME', null),
    'password' => env('IBM_MQ_PASSWORD', null),

    'queues' => [
        'inbound' => env('IBM_MQ_INBOUND_QUEUE', 'your-inbound-queue'),
        'outbound' => env('IBM_MQ_OUTBOUND_QUEUE', 'your-outbound-queue'),
    ],
];

使用方法

发送消息

use Outhebox\LaravelIBMQ\Facades\LaravelIBMQ;
use Outhebox\LaravelIBMQ\Exceptions\IBMQException;

$ibmQueue = new LaravelIBMQ();

try {
    $ibmQueue->sendMessage('Hello, IBM MQ!');
    echo "Message sent successfully!";
} catch (IBMQException $e) {
    echo "Failed to send message: " . $e->getMessage();
}

监听消息

use Outhebox\LaravelIBMQ\Facades\LaravelIBMQ;
use Outhebox\LaravelIBMQ\Exceptions\IBMQException;

$ibmQueue = new LaravelIBMQ();

try {
    $ibmQueue->listenToMessages(function ($messageBody) {
        echo "Received message: " . $messageBody;
    });
} catch (IBMQException $e) {
    echo "Failed to receive messages: " . $e->getMessage();
}

关闭连接

连接在对象被销毁或应用程序结束时自动关闭。但是,如果需要,您可以显式关闭连接

use Outhebox\LaravelIBMQ\Facades\LaravelIBMQ;

$ibmQueue = new LaravelIBMQ();

$ibmQueue->close();

测试

composer test

变更日志

请参阅 CHANGELOG 了解最近的变化。

贡献

请参阅 CONTRIBUTING 了解详细信息。

安全漏洞

请查看 我们的安全策略 了解如何报告安全漏洞。

致谢

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件