[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Rafael Lannes
Criador Rafael Lannes 26/10/2023

Opa, Carlos beleza?

Então amigo, to com uma situação aqui. Tenho um projeto de chat que está usando o echo server e tudo certinho.

Mas agora existe um outro Projeto B que vai servir de monitoramento desse projeto chat e que precisa também ultilizar os eventos real-time. 

Eu tentei de diversas maneiras conectar o Projeto B no mesmo servidor echo-server, mas os eventos de realtime não  são escutados no frontend do Projeto B

(Eu consegui fazer funcionar usando duas instancias do echo server exemplo: porta 6001 e porta 6002. Mas a ideia é fazer somente em um)

Você sabe me dizer se existe essa possibilidade?

Obrigado!

 

Manager Carlos Ferreira 26/10/2023

Olá Rafael! Tudo bem?

Me de mais detalhes sobre o projeto B, por que não monitorar pelo projeto A?

O que você quer dizer com monitorar? Seria gerar logs, fazer tracing?

Carlos Ferreira
Criador Rafael Lannes 26/10/2023

Tudo certo Carlos e por ai?
Então amigo esse projeto B foi desenvolvido em Laravel Nova, não sei se você conhece, ele tem diversas particularidades que acabam mais dificultando que ajudando, então esse projeto do chat, que foi feito antes, foi desenvolvido em laravel com vue, do jeito que a gente gosta. Mas é só o widget do chat

Esse projeto B é meio que a dashboard de configuração de chat, que é multi tenancy, tem todos os cruds de tenants, permissões e etc

Aí surgiu a necessidade de nesse projeto da dashboard, um chat onde vai existir um atendente e por isso preciso implementar o realtime nesse evento também, fora as métricas de dashboard que seriam em realtime também

Rafael Lannes
Manager Carlos Ferreira 26/10/2023

Entendi.

 

Não cheguei a passar por um caso onde precisa compartilhar recursos do laravel-echo, na realidade é até estranho compartilhar recursos em aplições diferentes mas entendo o seu case.

 

Uma alternativa possível, seria fazer o embed do chat atual para dentro do seu dashboard, usando um iframe mesmo, tipo aqueles chats pagos que faz o embed. Pegou a ideia? Será que te atende?

 

Se o dashboard precisar usar recursos real-time, nesse caso vai ser preciso subir o laravel-echo-server para ele.

Carlos Ferreira
Manager BOT EspecializaTi 26/10/2023

Olá! Entendo a situação. Se você deseja conectar dois projetos separados ao mesmo servidor Echo, é necessário garantir que os clientes de ambos os projetos estejam conectados ao mesmo canal para que os eventos em tempo real sejam compartilhados entre os dois.

Aqui estão algumas considerações para ajudá-lo a solucionar esse problema:

1. Certifique-se de que ambos os projetos estão conectados ao mesmo servidor Echo e ao mesmo canal. Verifique se o canal definido nos projetos A e B é o mesmo para que os eventos sejam transmitidos corretamente.

2. Verifique se não há bloqueios de porta ou restrições de rede que estejam impedindo a comunicação entre os dois projetos e o servidor Echo. Certifique-se de que as portas necessárias estejam abertas e acessíveis.

3. Ao definir os eventos no servidor Echo, verifique se os eventos estão sendo emitidos de maneira apropriada e se os ouvintes nos projetos A e B estão configurados corretamente para lidar com esses eventos.

Se você já verificou esses pontos e ainda está enfrentando problemas, seria útil revisar a configuração do servidor Echo e as configurações de comunicação nos projetos A e B para garantir que tudo esteja corretamente sincronizado e configurado para comunicação em tempo real entre os projetos.

BOT EspecializaTi
Criador Rafael Lannes 26/10/2023

Entendi, Carlos. Eu vou ver se essa questão do embed funciona e se vai impactar muito no que for preciso desenvolver, até pra não ficar meio na gambiarra.... 

Eu cheguei a pedir ajuda no GPT também kkk ele diz que é possivel, mas não consegui achar nenhuma configuração que de fato funcionasse

Rafael Lannes
Manager Carlos Ferreira 26/10/2023

Beleza, qualquer dúvida, conte comigo!

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!