Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Preciso de uma ajuda para meu TCC. Estou criando um projeto, onde vai ter 2 niveis de usuario.
Nivel 1 = Paciente
Nivel 2 = Medico
Tem um formulário que o medico cadastra o remédio e o horário do paciente.
Eu gostaria que quando o relógio do servidor ou computador(tanto faz), fosse igual ao do horario cadastrado do banco de dados, ele mostrasse uma notificação, igual ao do facebook/WhatsApp.
/monthly_2018_06/pushexample.png.55f2b48a3bfea9f400c5ee10013a0039.png" />
Obs: Se for difícil de explicar, eu pago para me ajudar, eu realmente preciso dessa funcionalidade no meu projeto :) , ainda coloco como agradecimento no meu TCC kkkk
Para resolver a questão, envolve algumas áreas. Basicamente:
-
Executar/Localizar a notificação na hora em que ela deve ser exibida;
-
Enviar a notificação para o browser;
-
Exibir a notificação.
Essa ser a ordem dos fatores, entretanto, é mais fácil entender/estudar na ordem inversa.
Notificações
Primeiro, como exibir a notificação:
https://developer.mozilla.org/en-US/docs/Web/API/Notifications_API/Using_the_Notifications_API
Essa é aquela notificação que o browser pede autorização e exibe mesmo com o browser minimizado. É a mesma utilizada aqui pelo fórum.
Conexão Browser x Servidor
Após, o servidor (em consequência o PHP) não consegue enviar nada para o browser sem que este solicite, logo, você precisa manter um canal de conexão do browser com o servidor. Para isso, você pode estudar um destes assuntos abaixo:
WebSocket
https://pt.stackoverflow.com/questions/105422/como-o-websocket-funciona-no-php
http://rafaelcouto.com.br/chat-simples-utilizando-websocket-vue-js-e-php/
http://gustavobeavis.github.io/blog/2014/09/11/web-socket-php/
Long Polling:
https://forum.imasters.com.br/topic/514338-conexão-automática-com-ajax-excede-o-limite-de-conexões-do-banco/?tab=comments#comment-2040896 (código funcional)
http://rberaldo.com.br/server-push-long-polling-php-ios/
https://imasters.com.br/back-end/dicas-para-melhorar-o-long-polling-com-php
WebSocket de longe é o mais recomendado. Entretanto, Long Polling é muito fácil de entender e, se a sua aplicação não espera ter centenas de usuários simultâneos, ela faz o seu trabalho.
Localização da notificação
Devido ao fato que, a sua aplicação mantem uma conexão aberta com o servidor (seja WebSocket ou Long Polling), basta que você consulte no banco de dados e retorne quando houver uma notificação. Se você olhar o primeiro link de long polling, verá como isso funciona.
Já pesquisou sobre Websocket ou Long polling?
http://rberaldo.com.br/server-push-long-polling-php-ios/