Provedor de agendador
O provedor Scheduler permite agendar funções para serem executadas em um horário específico no futuro ou para serem repetidas com base em um intervalo. Ele também oferece suporte ao agendamento de operações usando CRON expressões.
Como funciona
Quando você chamar a startAt função no Agendador, a plataforma Vonage Cloud Runtime cria uma tarefa com os detalhes que você forneceu. Se você tiver fornecido um ID, ele será utilizado; caso contrário, um será gerado automaticamente. Esse ID permite que você cancele a tarefa, se necessário, usando o cancel função.
O provedor do Agendador opera com uma precisão mínima de um minuto. Por exemplo, uma tarefa agendada para começar às 10h01 será iniciada dentro desse minuto, entre 10h01:00 e 10h01:59.
Quando chegar a hora de execução da tarefa, seu aplicativo receberá uma solicitação na função de retorno de chamada que você especificou. Você terá 30 segundos para responder a essa solicitação com um código de status 200; caso contrário, a solicitação será repetida. As solicitações são repetidas 5 vezes antes de serem abandonadas.
Cada solicitação do agendador possui um hash no cabeçalho da solicitação, em X-Neru-Scheduler-RequestHash. Usando esse hash, você pode garantir o tratamento das solicitações recebidas do agendador, caso sua aplicação não tenha conseguido responder com um status 200 a tempo.
Funções
startAt- isso permite que você programe a execução do seu aplicativo no futuro, após um período de tempo especificado, ou repetidamente em um determinado intervalo. Veja o trecho de código aqui.cancel- isso permite que você cancele uma chamada de retorno agendada usando o ID da agendação. Veja o trecho de código aqui.get- isso permite que você recupere uma tarefa agendada existente usando o ID da agendamento. Veja o trecho de código aqui.list- isso permite que você recupere os IDs de todas as tarefas agendadas existentes. Veja o trecho de código aqui.
Observação: Use o vcr.verifyAuth método para verificar se as chamadas de retorno têm origem na Cloud Runtime Platform.
Inicializando o provedor do agendador
Para usar o Provedor de Agendamento, é necessário criar uma instância do provedor por meio de uma sessão:
As solicitações enviadas pelo Vonage Cloud Runtime ao seu aplicativo por meio do provedor do Scheduler conterão as informações da sessão na qual foi configurada a chamada de retorno agendada; isso significa que você pode acessar o estado da sessão de origem usando getSessionFromRequest para criar um objeto de sessão.
Caso de uso
Por exemplo, para usar o provedor Scheduler para enviar uma mensagem de texto de lembrete única cinco minutos após o recebimento de uma mensagem:
Após cinco minutos, o textReminder A rota será chamada com a carga útil:
O provedor Scheduler também oferece suporte ao uso do CRON para definir o intervalo em que ele chama a rota definida. Desta vez, o código aciona a rota definida a cada 10 minutos após a hora, durante um dia: