16 de fevereiro de 2023: Mais possibilidades de agendamento de pilhas

Neelke Stadler Atualizado por Neelke Stadler

Uma pilha pode agendar a execução de outra pilha (ou dela mesma) em algum momento no futuro. Isso é útil para enviar automaticamente uma notificação, digamos, daqui a dois dias.

Às vezes você precisa lembrar as pessoas de coisas ou verificar como elas estão. As pilhas permitem que você agende uma notificação para ser enviada automaticamente no futuro.

Lembre-se que se sua mensagem estiver programada para ser entregue em mais de 24 horas, você só poderá iniciar a conversa usando um modelo aprovado.

Vejamos as opções de agendamento em pilhas.

Uma pilha pode ser programada usando o argumento in ou o argumento at .

Programação com base no tempo relativo (em segundos)

O argumento in requer um tempo relativo expresso em segundos. A pilha agendada será executada após o número de segundos especificado.

schedule_stack("<uuid-of-the-stack-to-schedule>", em: segundos)

Programação em um horário exato

O argumento at requer uma data exata, no formato de data e hora. Esta data pode ser expressa usando uma de nossas expressões. A pilha agendada será executada na data e hora definidas.

Se você quiser agendar uma pilha exatamente daqui a dois dias, você pode fazer:

schedule_stack("<uuid-of-the-stack-to-schedule>", at: datetime_add(now(), 2, "D"))

Agendando em um horário exato, mas relacionado a outra data

Ou se você quiser agendar uma pilha para ser executada às 9h, na próxima segunda-feira após uma determinada data, você pode fazer:

base_date = date(2023, 2, 08))
schedule_stack("<uuid-of-the-stack-to-schedule>", at: datetime_next("monday", "09:00", base_date))

Cancelar uma pilha agendada

Uma pilha que foi agendada anteriormente também pode ser cancelado, usando nossa função cancel_scheduled_stacks :

card TextCard, então: MaybeCancel do
schedule_stack("<uuid-of-the-stack-to-schedule>", at: datetime_next("monday", "09:00", data_base))
agenda_stack("<uuid-of-the-stack-to-schedule>", em: datetime_next("terça-feira", "09:00", data_base))
keep_going = ask("Você quer continuar recebendo essas mensagens? Digite STOP para cancelá-las")
end

card MaybeCancel quando keep_going == "STOP" do
cancel_scheduled_stacks("<uuid-of-the-stack-to-cancel>")
end

cartão MaybeCancel do
schedule_stack("40ac549a-a883-4c26-b3a2-6eaf8f799edb", em: datetime_next("sexta-feira", "10:00"))
end

Observe que esta função cancela todas pilhas agendadas com o UUID fornecido para esse destinatário. Portanto, no exemplo acima, ambas as pilhas programadas seriam canceladas.

Mais documentação e exemplos

Esse artigo foi útil?

9 de março de 2023: Mais dados no BigQuery!

13 de fevereiro de 2023: marcar mensagens automaticamente como CONCLUÍDAS

Contato