Evaluating bids

Criação de Estrutura de Disparo de Campanhas

Published on the June 23, 2023 in IT & Programming

About this project

Open

Hoje temos uma plataforma SaaS de envio de mensagens via WhatsApp, utilizando a nossa API interna, e buscamos uma forma de otimização e melhorar o processo de envio de campanhas agendada.

Nosso problema atual é a sobrecarga de recursos sendo consumidos tanto para o agendamento dos históricos dos conteúdos a serem enviados, quanto também para o processamento do disparo das mensagens.

Buscamos alguém que já tenha trabalho com processamento de filas com Horizon no Laravel e com experiencia em disparo de mensageira, seja por email ou consumindo alguma api, como é nosso caso.

Atualmente nosso fluxo é divido em duas etapas, Trigger e SendContent.

O Trigger é processado via Schedule a cada 5 minutos, o qual pega todos records que o Status está como agendado, faz algumas verificações, e dispacha para um Job, fazer o agendamento dos envios envios.

Esse Job, cria um record de histórico com a data prevista para o disparo da mensagem, sendo criado um historico para cada mensagem a ser enviada para cada contato. Para uma campanha de 100 contatos enviando 3 conteúdos, é gerado 300 records de histórico.

Por fim temos um processo Schedule a cada 2 minutos, que pega todos os históricos que a data de envio está entre agora e os próximos 2 minutos, e dispacha eles para um job, que efetivamente irá fazer o envio do conteúdo.

Project overview

Atualmente nosso fluxo é divido em duas etapas, Trigger e SendContent. O Trigger é processado via Schedule a cada 5 minutos, o qual pega todos records que o Status está como agendado, faz algumas verificações, e dispacha para um Job, fazer o agendamento dos envios envios. Esse Job, cria um record de histórico com a data prevista para o disparo da mensagem, sendo criado um historico para cada mensagem a ser enviada para cada contato. Para uma campanha de 100 contatos enviando 3 conteúdos, é gerado 300 records de histórico. Por fim temos um processo Schedule a cada 2 minutos, que pega todos os históricos que a data de envio está entre agora e os próximos 2 minutos, e dispacha eles para um job, que efetivamente irá fazer o envio do conteúdo.

Category IT & Programming
Subcategory Web development
What is the scope of the project? Medium-sized change
Is this a project or a position? Project
I currently have I have specifications
Required availability As needed
API Integrations Other (Other APIs)
Roles needed Developer

Delivery term: Not specified

Skills needed

Other projects posted by A. M.