Pular para o conteúdo principal

ts (timestamp)

Grupo de funções utilizado para manipular o RTC e os dados de relógio do equipamento.

Fuso Horário

Os dias e horários são exibidos e configurados conforme o fuso horário configurado no webserver do equipamento.

descrição das variáveis

Durante essa página serão utilizados algumas variáveis para descrever os métodos e respostas das funções. Veja abaixo a descrição dessas variáveis.

VariávelDescriçãotipoRange
hhoraint0 a 23
minminutoint0 a 59
ssegundoint0 a 59
ddiaint0 a 31
monmêsint1 a 12
yanoint2000 a 2099
wddia da semanaint1 a 7
yddia do anoint1 a 366
tsunix timestamp [s]int0 a 1.8446744e+19

Timestamp

Função global utilizada para manipular os valores tempo no formato de unix timestamp e padrão humano. Pode criar um timestamp a partir de uma uma entrada de tempo no padrão humano, seja ela atual, passada ou futura.

aviso

Todas as operações consideram o fuso horário configurado no equipamento. Quando estiver desenvolvendo utilize uma ferramenta de conversão de timestamp para assegurar que o funcionamento está de acordo com o esperado.

ts.mk

Cria um timestamp a partir de uma entrada de data e horário.

ts.mk(d, mon, y, h, min, s=0);

Resposta: unixtimestamp em segundos

Exemplo

Caso a entrada solicitada fosse 05/jan/2023 as 12:30:15 a resposta seria da seguinte forma:

ts.mk(5, 1, 2023, 12, 30, 15);

Resposta: 1672932615 (Thu Jan 05 2023 12:30:15 GMT-0300 (Horário Padrão de Brasília))


ts.when

Retorna uma data no formato humano a o partir de um timestamp.

ts.when(ts);

Resposta: {d, mon, y, h, min}

Exemplo

Caso a entrada solicitada fosse o timestamp 1672932615 a resposta seria da seguinte forma:

ts.when(1672932615);

Resposta: {d: 5, mon: 1, y: 2023, h: 12, min: 30} (Thu Jan 05 2023 12:30:15 GMT-0300 (Horário Padrão de Brasília))


ts.when_ms

Retorna uma data no formato humano a o partir de um timestamp em ms com opção de usar a referencia de fuso horário local ou não usar.

ts.when_ms(ts, useLTz = true);

onde:

  • ts: timestamp em milissegundos;
  • useLTz: Utilizar ou não o fuso horário do local do equipamento:
    • false: considera o timestamp sem referência de hora local (horário UTC+0);
    • true: considera o timestamp do equipamento referência de hora local (horário UTC+fuso), ou seja caso o equipamento esteja instalado em um lugar com horário de brasília será considerado o horário UTC-3h;

Resposta: {d, mon, y, h, min}

Exemplo

Caso a entrada solicitada fosse o timestamp 1672932615000 a resposta seria da seguinte forma:

ts.when_ms(1672932615000, false);

Resposta: {d: 5, mon: 1, y: 2023, h: 15, min: 30} (Thu Jan 05 2023 15:30:15 GMT


ts.when_x

Retorna uma variável da data no formato humano a o partir de um timestamp.

ts.when_x(str, ts);

Resposta: d/mon/y/h/min

Exemplo

Caso a entrada solicitada fosse o dia do timestamp 1672932615 a resposta seria da seguinte forma:

ts.when("d", 1672932615);

Resposta: 5 (Thu Jan 05 2023 12:30:15 GMT-0300 (Horário Padrão de Brasília))

Caso a entrada solicitada fosse o ano do timestamp 1672932615 a resposta seria da seguinte forma:

ts.when("y", 1672932615);

Resposta: 2023 (Thu Jan 05 2023 12:30:15 GMT-0300 (Horário Padrão de Brasília))


ts.h

Retorna o timestamp para uma variação de horas em relação ao momento atual com os minutos fixados (padrão é 59).

ts.h(int, min = 59);

Resposta: ts

Exemplo

**Caso o momento atual fosse 05/jan/2023 as 12:30:15 e fosse solicitado o valor do timestamp de duas horas atras em relação ao horário atual resposta seria da seguinte forma: **

ts.h(-2);

Resposta: 1672927140 Thu Jan 05 2023 10:59:00 GMT-0300 (Horário Padrão de Brasília)

Com minuto fixado em 00 minutos:

ts.h(-2, 0);

Resposta: 1672923600 Thu Jan 05 2023 10:00:00 GMT-0300 (Horário Padrão de Brasília)

**Caso nesse mesmo momento fosse solicitado o valor do timestamp de duas horas para frente em relação ao horário atual resposta seria da seguinte forma: **

ts.h(2);

Resposta: 1672941540 Thu Jan 05 2023 14:59:00 GMT-0300 (Horário Padrão de Brasília)


ts.d

Retorna o timestamp para uma variação de dias em relação ao momento atual com a hora e minuto fixados (padrão é 23:59).

ts.d(int, h=23, min = 59);

Resposta: ts

Exemplo

**Caso o momento atual fosse 05/jan/2023 as 12:30:15 e fosse solicitado o valor do timestamp de dois dias atras em relação ao horário atual resposta seria da seguinte forma: **

ts.d(-2);

Resposta: 1672801140 Tue Jan 03 2023 23:59:00 GMT-0300 (Horário Padrão de Brasília)

Com hora e minutos fixado em 12:00:

ts.d(-2, 12, 0);

Resposta: 1672758000 Tue Jan 03 2023 12:00:00 GMT-0300 (Horário Padrão de Brasília)

**Caso nesse mesmo momento fosse solicitado o valor do timestamp de dois dias para frente em relação ao horário atual resposta seria da seguinte forma: **

ts.h(2);

Resposta: 1673146740 Sat Jan 07 2023 23:59:00 GMT-0300 (Horário Padrão de Brasília)


ts.mon

Retorna o timestamp para uma variação de meses em relação ao momento atual com o dia, hora e minuto fixados (padrão é último dia do mês as 23:59).

ts.mon(int, d=last, h=23, min = 59);

Resposta: ts

Exemplo

**Caso o momento atual fosse 05/jan/2023 as 12:30:15 e fosse solicitado o valor do timestamp de dois meses atras em relação ao horário atual resposta seria da seguinte forma: **

ts.mon(-2);

Resposta: 1669863540 Wed Nov 30 2022 23:59:00 GMT-0300 (Horário Padrão de Brasília)

Com dia, hora e minutos fixado em dia 01 as 12:00:

ts.mon(-2, 1, 12, 0);

Resposta: 1667314800 Tue Nov 01 2022 12:00:00 GMT-0300 (Horário Padrão de Brasília)

**Caso nesse mesmo momento fosse solicitado o valor do timestamp de dois meses para frente em relação ao momento atual resposta seria da seguinte forma: **

ts.mon(2);

Resposta: 1680317940 Fri Mar 31 2023 23:59:00 GMT-0300 (Horário Padrão de Brasília)


ts.w

Retorna o timestamp para uma variação de semanas em relação ao momento atual com o dia da semana, hora e minuto fixados (padrão é último sábado as 23:59).

ts.w(int, wd=last, h=23, min = 59);

Resposta: ts

Exemplo

**Caso o momento atual fosse 05/jan/2023 as 12:30:15 e fosse solicitado o valor do timestamp de duas semanas atras em relação ao momento atual, a resposta seria da seguinte forma: **

ts.w(-2);

Resposta: 1671937140 Sat Dec 24 2022 23:59:00 GMT-0300 (Horário Padrão de Brasília)

Com dia da semana, hora e minutos fixado em domingo as 12:00:

ts.w(-2, 1, 12, 0);

Resposta: 1671377220 Sun Dec 18 2022 12:27:00 GMT-0300 (Horário Padrão de Brasília)

**Caso nesse mesmo momento fosse solicitado o valor do timestamp de duas semanas para frente em relação ao momento atual, a resposta seria da seguinte forma: **

ts.w(2);

Resposta: 1674356340 Sat Jan 21 2023 23:59:00 GMT-0300 (Horário Padrão de Brasília)


ts.y

Retorna o timestamp para uma variação de anos em relação ao momento atual com o dia, mês, hora e minuto fixados (padrão é 31 de dezembro as 23:59).

ts.y(int, d=31, mon=12 , h=23, min = 59);

Resposta: ts

Exemplo

**Caso o momento atual fosse 05/jan/2023 as 12:30:15 e fosse solicitado o valor do timestamp de duas semanas atras em relação ao momento atual, a resposta seria da seguinte forma: **

ts.y(-2);

Resposta: 1641005940 Fri Dec 31 2021 23:59:00 GMT-0300 (Horário Padrão de Brasília)