Programação de mensagem por horário

Pessoal,

estou tentando deixar uma configuração no blip que se a pessoa entra em contato as 17h dará uma mensagem de horário de atendimento e entre 8h a 16h59 dar mensagem de atendimento,

function run(hour) {
if(hour >= 17 && hour < 7) return "Nosso horário de atendimento é das 8:30 as 12:00 e das 13:00 as 17:00, mas sinta-se a vontade para nos deixar sua dúvida “;
else if (hour =12) return “Nosso horário de atendimento é das 8:30 as 12:00 e das 13:00 as 17:00, mas sinta-se a vontade para nos deixar sua dúvida”;
return " Ok! Deixe então a sua dúvida que um de nossos atendentes irá responde-la o mais breve possível”;
}

Aqui segue um esboço da minha tentativa, porém, não vai nas horas certas, essa programação está dando apenas a primeira mensagem, dentro do horário de serviço, não da a última mensagem, não manjo nada de programação, pesquisei bastante, mas já não sei mais oque fazer para ficar certo.

Testei trocando o horário do meu computador também, mas não deu certo, não sei se o Blip tem algum servidor interno que mesmo eu alterando o horário no computador ele continua pegando o horário certo

Bom dia @Alex_Meotti_de_Aguia ! Você primeiramente vai precisar usar um “get” pra pegar essas horas você pode fazer assim: let hour = date.getHours();

Esse seu “if” está com um problema cara, você está usando o “&&” que significa “e” quando na verdade você tem que usar o “||” que significa “ou”. Do jeito que está ai você está dizendo que só vai entrar no “if” se a hora for maior que 17 e menor que 7, o que é impossível.

Te sugiro a usar uma variável pra retornar “true” ou “false” pra retornar a mensagem. Ex: coloque como condição de saída se a variável que retornar desse código for false leva pra um bloco e se for true leva pra outro bloco.

Vou deixar o código que eu criei pra fazer essa questão de horário no meu bot. Espero ter te ajudado.

function run(){

let date = new Date();
let hour = date.getHours();
let min = date.getMinutes();
let dia = date.getDay();
let validade = new Boolean(true);


    if(dia != 0 && dia != 6){
        if(hour < 8){
            validade = false;

        }
        if(hour >= 17){
            validade = false;
        }
        if(hour == 16){
            if(min > 30){
                validade = false;
        }}
    }
     if(dia == 0 || dia == 6){
         validade = false;
     }
    return validade;

}
4 Curtidas

é sempre bom lembrar tambem que o Blip é configurado em 00 horas ou seja, todo o numero que vc usar na contagem de horas vc subtrai -3, que é o fuso horário do Brasil, se não nem com a lógica certa vai dar bom isso ae kkkk

2 Curtidas

Bem lembrado @Pedro_Lucas, meu bot está com a variável datetimeoffset com valor -3, por isso o horário no código não está com valor -3.

2 Curtidas

Boooa, @frontdesk e @Pedro_Lucas! Obrigada pela contribuição de vocês :heart:

3 Curtidas

@frontdesk deuu muuuuuuito certo mano ! Valeu meeeesmo

3 Curtidas

Este tópico foi fechado automaticamente 7 dias depois da úlima resposta. Novas respostas não são mais permitidas.