braiphub/messenger-laravel

Implementação Laravel do Messenger
8,324 1
Install
composer require braiphub/messenger-laravel
Latest Version:v1.2.3
PHP:^7.2|^8.0
Last Updated:Dec 17, 2023
Links: GitHub  ·  Packagist
Maintainer: grntartaglia

Messenger Laravel

Instalação

Via Composer

$ composer require braiphub/messenger-laravel
$ php artisan vendor:publish --tag=messenger.config

Para instalação compatível com Composer 1, forçar a busca no repositório do GitHub em composer.json:

{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/braiphub/messenger-laravel"
        }
    ]
}

Como usar

Enviar Mensagem

Para enviar uma mensagem basta emitir um Evento normal do Laravel com o contrato Braip\Messenger\Contracts\ShouldMessage.

use Braip\Messenger\Contracts\ShouldMessage;

class EventoTesteEnviado implements ShouldMessage
{
    public function messageWith(): array
    {
        return [
          // payload que vai ser enviado para os outros sistemas
        ];
    }
}

event(new EventoTesteEnviado());

Receber Mensagem

Colocar no EventServiceProvider o evento desejado com o prefixo Messenger: O listener vai receber um objeto do tipo Braip\Messenger\Events\MessageReceived como evento.

//EventServiceProvider.php

protected $listen = [
    'Messenger:{nomeDoEvento}' => [
        // Listeners
    ]
];
class ListenerExemplo
{
    public function handle($event)
    {
        $event->payload;
        $event->eventType;
    }
}

Utilize o comando php artisan messenger:work para conectar a fila(SQS) e buscar as mensagens para processar. Em produção você pode utilizar o Supervisor para agendar execução.(Material de apoio para configuração)

Related Packages

cmgmyr/messenger

Simple user messaging tool for Laravel

2,630,790 2,575
bizly/messenger

Simple user messaging tool for Laravel

1,808 0
trvmsg/messenger

Simple user messaging tool for Laravel

53 0
casperlaitw/laravel-fb-messenger

A Laravel Package to Integrate Facebook Messenger API

32,004 101