Executando verificação de segurança...
3

Aplicativo que notifica em meu celular a chegada de trabalhos do site da empresa

Olá, atualmente trabalho com uma empresa que possui um sistema/site próprio bem intuitivo para enviar as ordens de serviço para os funcionários. No entanto, sinto um défice de notificação para os usuários quando chega um novo serviço, do tipo enviar uma notificação ou um e-mail para serem informados que chegou um novo trabalho a ser realizado.

A página de fluxos de serviço é de certa forma bem simples, contendo o código da Ordem de Serviço (OS), o nome do arquivo, a data em que esse arquivo foi enviado ao funcionário e o prazo para a entrega dessa OS. Inicialmente, são indicados quantos dias faltam, e quando resta apenas 1 dia, essa informação de tempo é representada em horas restantes. Entre outras informações, algumas não relevantes aqui, gostaria de saber como poderia fazer para, quando uma nova "atualização" de informação no site (um novo serviço), me fosse notificado em meu celular no mesmo instante, informando apenas o nome do arquivo e o prazo de entrega. Ao clicar, teria acesso às informações restantes, como a data em que o arquivo foi enviado e o código da Ordem de Serviço (OS).

Desde já, informo que sou um estudante iniciante em programação, com conhecimento apenas em C#, Python, Pandas, SQL, JavaScript e HTML/CSS. Afim de prevenir futuros questionamentos desnecessários, tenho plena consciência de que isso pode ser algo de escopo muito grande e complexo. Meus objetivos são apenas de estudo e um possível portfólio demonstrativo pessoal, não sendo algo a ser apresentado ao meu empregador. Isso tem fins de diversão, desafio e para um possível portfólio. Independentemente do tipo de dificuldade e impossibilidade, apenas gostaria de saber a opinião de vocês. É possível? Quais são os empecilhos? Uso Pandas com Python? Faço uma plataforma simples em Ionic para o meu celular?

Carregando publicação patrocinada...
2

Olá Miguel,
então essa sua demanda é interessante porque dá para fazer um script em alguns minutos que resolverá seu problema ou até um mega projeto de dias. Tudo dependerá da sua disponibilidade e conhecimento para avançar no projeto em si.

Sem mais delongas, vou assumir um caso mais básico, visto que no sei texto você mesmo menciona que é iniciante na área.

bibliotecas

Eu resolveria esse seu problema utilizando as seguintes bibliotecas em python:

  • Selenium
  • pyrogram
  • schedule

Selenium

Com a biblioteca Selenium é possível "simular" o uso do navegador, com isso você pode realizar login e ir até a página de ordem de serviço da empresa (podendo persistir ou não a sessão )

pyrogram

Com a biblioteca pyrogram eu implementaria um simples bot do Telegram para enviar a notificação para seu celular (A API do Telegram é gratuita, ao contrário do WhatsApp).

Tem também a opção de usar alguma API do whatsapp não oficial, assumindo os riscos dela.

Estou apenas substituindo o email pelo Telegram por questão de gosto.

schedule

A biblioteca schedule do python é uma forma simples de implementar cron Jobs (tarefas recorrentes). E pode ser usada para vc agendar a busca por serviço para rodar da cada X minutos por exemplo.

Conclusão

Esse foi um resumo do que pode ser feito, caso queira mais detalhes técnico, basta responder a esse comentário.

Lembrando que essa é apenas uma das N formas distintas de resolver seu problema.

1

Sobre a parte de notificação eu não sei lhe dizer se fosse e-mail é simples mas essa solução é "generica" até o momento de enviar a notificação

Faça uma tabela de departamentos
campos:
id (pk)
nome do departamento

e uma tabela de funcionários
campos:
id (pk)
nome do funcionario
email
departamento (fk na tabela de departamentos)

e adicione na OS um campo de notificado e departamento
campos:
id (ip)
...
notificado (default false)
departamento (departamento responsável por normalizar a OS, fk na tabela de departamentos)

Quando a OS for criada ela é criada com campo notificado false.

Crie um sheduler que roda a cada 1 minuto, ou 10 minutos que vai fazer um select na tabela de OS filtrando todas as OSs que estão com o campo notificado false, ai seu programa tem a função de para cada OS entrar na tabela de funcionários filtrar pelo departamento da OS e disparar uma notificação, eu faria via e-mail por falta de conhecimento de outras tecnologias.

1

Olha explicar por aqui é um pouco dificil, tenho que entender melhor o contexto, como por exemplo se tu tem acesso ao codigo fonte da aplicação que gera a ordem de serviço para no meio do processo fazer a implementação do disparo de e-mail/notificação push

Enfim se quiser bater um papo no meet e detalhar mais, me mande um email [email protected], vejo como posso tentar te ajudar.