Gente, aqui eu decidir responder a todas as perguntas com uma estruturação lógica.
- Quais são os dados de entrada necessários?
- Como o algoritmo pode verificar a condição de presença completa?
- Que decisão precisa ser tomada com base nesses dados?
- Qual deve ser a ação final?
Resposta:
- Receber a lista de participantes com seus dados de presença e as informações da transmissão (horário de início, fim e duração total da live)
- Para cada participante na lista:
- Calcular se o participante assistiu à transmissão completa, verificando:
- Se entrou com no máximo X minutos de atraso (tolerância de início)
- Se saiu com no máximo X minutos de antecedência (tolerância de fim)
- Ou se assistiu pelo menos 70% da duração total da transmissão
- Se atendeu aos critérios de presença completa:
- Adicionar o participante na lista de elegíveis
- Caso contrário:
- Registrar o participante como presença incompleta
- Para cada participante elegível na lista de presença completa:
- Personalizar o e-mail de agradecimento com o nome do participante
- Enviar o e-mail de agradecimento para o endereço cadastrado
- Registrar o envio no log de sucesso
- Gerar relatório final de processamento contendo:
- Quantidade total de participantes processados
- Quantidade de participantes com presença completa
- Quantidade de participantes com presença incompleta
- Lista dos e-mails enviados com sucesso
- Finalizar o algoritmo e registrar a data/hora de execução