bongrun/brsocket-php

Socket PHP 部分内容

0.0.2 2016-10-03 10:55 UTC

This package is not auto-updated.

Last update: 2024-09-14 20:14:51 UTC


README

Socket 在 php 上。将事件发送到 RabbitMQ 队列。

安装

推荐通过 Composer 安装此扩展。

或者运行

php composer.phar require --prefer-dist bongrun/brsocket-node "*"

或者添加

"bongrun/brsocket-node": "*"

到文件 composer.json

配置

指定账户密钥以及默认接收短信消息的来源。

$queueConfig = [
    'host' => env('RABBITMQ_HOST', '127.0.0.1'),
    'port' => env('RABBITMQ_PORT', 5672),

    'vhost' => env('RABBITMQ_VHOST', '/'),
    'login' => env('RABBITMQ_LOGIN', 'guest'),
    'password' => env('RABBITMQ_PASSWORD', 'guest'),

    'queue' => env('RABBITMQ_QUEUE'), // name of the default queue,

    'exchange_declare' => env('RABBITMQ_EXCHANGE_DECLARE', true), // create the exchange if not exists
    'queue_declare_bind' => env('RABBITMQ_QUEUE_DECLARE_BIND', true), // create the queue if not exists and bind to the exchange

    'queue_params' => [
        'passive' => env('RABBITMQ_QUEUE_PASSIVE', false),
        'durable' => env('RABBITMQ_QUEUE_DURABLE', true),
        'exclusive' => env('RABBITMQ_QUEUE_EXCLUSIVE', false),
        'auto_delete' => env('RABBITMQ_QUEUE_AUTODELETE', false),
    ],
    'exchange_params' => [
        'name' => env('RABBITMQ_EXCHANGE_NAME', null),
        'type' => env('RABBITMQ_EXCHANGE_TYPE', 'direct'), // more info at https://rabbitmq.cn/tutorials/amqp-concepts.html
        'passive' => env('RABBITMQ_EXCHANGE_PASSIVE', false),
        'durable' => env('RABBITMQ_EXCHANGE_DURABLE', true), // the exchange will survive server restarts
        'auto_delete' => env('RABBITMQ_EXCHANGE_AUTODELETE', false),
    ],
];

$socket = new BongRun/Socket();

创建事件实例

$event = $socket->instance('newMessage');

配置事件并启动

$event->nowSigned();
    ->setSendType(BongRun/Event::SEND_TYPE_AUTHORIZED)
    ->setUsers([1,40,42])
    ->add(['text' => 'Сообщение 1'])
    ->add(['text' => 'Сообщение 2'])
    ->run();