Alertas por SMS para a equipe: servidor parado, stock no fim ou tarefa falhada, a partir de um script

WhatsApp e APIs·· 26 visualizações· 3 min de leitura

A resposta curta: qualquer script que já vigia alguma coisa (um site, um servidor, o stock, uma cópia de segurança) pode mandar um SMS à equipe com um pedido à nossa API. O SMS chega mesmo a quem não tem dados móveis ligados, e por isso serve bem para alertas que não podem esperar.

O que precisa

1 O SMS activo na página SMS do My MozOut, com créditos no saldo.
2 Uma chave da API só com a permissão sms:write, criada na página API do My MozOut. Se o script corre sempre do mesmo servidor, limite a chave ao IP dele.
3 Os números da equipe, escritos com ou sem o indicativo, porque o sistema reconhece o país pelo primeiro algarismo: 841234567 vai para Moçambique e 923456789 para Angola. Assim, +258 84 123 4567 e 258841234567 são o mesmo número que 841234567.

Um script mínimo

Este exemplo envia um alerta a dois números. Guarde a chave numa variável de ambiente, nunca no próprio arquivo:

#!/bin/sh
# alerta.sh: envia o texto do 1.º argumento a cada número da equipe
for N in 841234567 OUTRO_NUMERO; do
curl -s https://api.mozout.com/v1/sms/messages \
-H "Authorization: Bearer $RLX_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"number\": \"$N\", \"text\": \"ALERTA: $1\"}"
done

Chama-se assim: ./alerta.sh "o site não responde desde as 14h38". Com uma chave sandbox_, o pedido é validado mas não sai nada nem se gastam créditos: use-a para testar e troque pela chave prod_ no fim. Para muitos números de uma vez há o envio em lote.

Quando disparar

O que vigia Quando avisa
Site ou servidor Quando deixa de responder, e outra vez quando volta
Stock Quando um produto desce abaixo do mínimo que definiu
Cópias de segurança e tarefas agendadas Quando uma tarefa falha ou não corre
Espaço em disco ou quotas Quando passa um limite seu

Para pôr o script a correr sozinho de tempos a tempos, veja exemplos de horários do cron. Para vigiar um site, um alerta quando o site cai.

Avise uma vez por problema, não uma vez por minuto. Um script que corre de minuto a minuto e envia sempre que vê a falha esgota créditos e chega ao limite diário de envios da conta. Guarde num arquivo que já avisou e só volte a enviar quando o problema mudar ou acabar.
Comece o texto por ALERTA e diga o sistema, o problema e a hora. Quem está de turno percebe logo, sem abrir nada.

Quer que a equipe saiba logo quando alguma coisa pára? Veja a página da API e crie a primeira chave.

Ver a página da API

VEJA TAMBÉM

Enviar SMS pela API: chave, permissões, Sandbox e o primeiro pedido

Avisos internos por SMS para a equipe: turnos, escalas e mensagens urgentes a um grupo

Enviar muitos avisos por SMS num só pedido à API: o envio em lote e os resultados

Ser avisado quando o seu site cai: uma verificação simples de disponibilidade

Exemplos de horários cron: de 15 em 15 minutos, dias úteis às 8, o dia 1 de cada mês

Erros e estados das mensagens na API de SMS: o que significa cada um e o que fazer

PRODUTO RECOMENDADO

Hospedagem de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde R$ 36,30/mês (plano de 3 anos, com cupom)

Ver planos
Esta resposta foi útil? Sua resposta nos ajuda a melhorar este artigo.