Looking to hire Laravel developers? Try LaraJobs

messenger-laravel maintained by braiphub

Description
Implementação Laravel do Messenger
Last update
2023/12/17 02:58 (dev-master)
Downloads
7 206

Comments
comments powered by Disqus

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)