1

Téma: NTPTIME

V nastavení času v administraci se musí nastavit GMT offset +1 a když je letní čas, tak +2, aby zařízení ukazovalo
správný čas. Automatický přechod na zimní a letní asi nelze nastavit, že?

Když pak čtu xml.xml, kde je ntptime, pak musím tyto 2 hodiny (respektivě 1 hodinu) odečíst :

 var  cas= new Date(vystup.ntptime*1000); // čteno z xml.xml
   var hodina =cas.getHours();
   hodina=hodina-2;
    $("#cas").html(cas.getDate()+'.'+cas.getMonth()+'.'+cas.getFullYear()+'  '+hodina +':'+cas.getMinutes()+'<BR><BR>');

Je to správné (blbuvzdorné) řešení?
V php programu bych to mohl ošetřit výpočtem letního a zimního času a podle toho odečítat 1 nebo 2.
Je ale někde k dispozici ten offset?

Asi je lepší nečíst xml.xml, ale získávat čas pomocí http://192.168.1.250/get_sys[5 - až 10].

Jak teda nejlépe pracovat s časem?

2

Re: NTPTIME

NTP vrací hodnotu podle použitého serveru. Pokud se tam dá IP nějakého obecného světového serveru, ten by neměl sám upravovat čas podle letního/zimního času. A pak už bude stačit použít nějakou PHP funkci pro zjistění stavu (letní-zimní čas).

Lepší bude číst NTP čas, ne jeho rozpad - tak totiž bude stačit jen jeden dotaz.

Aktuálně nastavený NTP offset je k dispozici jako jedna z položek v poli sys[].

Pochlubte se - popište jak využíváte své zařízení SDS zde ! Můžete si bezplatně přidat svou reklamu !

3 Naposledy upravil: Simi (2011-09-21 09:13:15)

Re: NTPTIME

Díky.
Ale já nejsem schopen z PHP určit, zda je v zařízení přičteno +1 anebo +2 hodiny. Proto nemůžu v PHP rozhodnout, kolik odečíst. Musím dle letního, zimního času předpokládat, že v zařízení je to správně nastaveno.
Je ale zajímavé, že rozpad bere do úvahy ten posun a v xml.xml je ntptime bez posunu.
Asi to chce opravit ten xml.xml, aby byl čas včetně posunu.

Zkoušel jsem náhradně číst rozpad pomocí http://192.168.1.250/get_sys[5] atd. V prohlížeči se zobrazí OK.
Ale v php

 $p="http://192.168.1.250/get_sys[5]";
 $den=file_get_contents($p); 

to zahlásí chybu :

Warning: file_get_contents(http://192.168.1.250/get_sys[5]) [function.file-get-contents]: failed to open stream: HTTP request failed! 4 in E:\Inetpub\wwwroot\deska\a.php on line 11

Přitom ten den '4' se v chybě vyskytuje.

Přitom čtení

  $p="http://192.168.1.250/xml.xml
  $den=file_get_contents($p); 

Funguje naprosto bez problémů.

Tak teď nevím, co zase dělám špatně. Funguje to někomu?

4

Re: NTPTIME

Problém s použitím file_get_contents pro get_XXX je známý a je opraven ve firmware z listopadu 2011 (tzn. cokoliv novějšího to má opraveno).
Šlo zde o to že zařízení SDS vracelo jen čistý text s hodnotami, ale bez HTTP hlavičky, což je tam už doplněno.

Pochlubte se - popište jak využíváte své zařízení SDS zde ! Můžete si bezplatně přidat svou reklamu !

5 Naposledy upravil: depett (2011-12-24 00:08:03)

Re: NTPTIME

adamn napsal:

NTP vrací hodnotu podle použitého serveru. Pokud se tam dá IP nějakého obecného světového serveru, ten by neměl sám upravovat čas podle letního/zimního času.

Neviem, či som dobre pochopil - značí to, že defaultne nastavený ntp server (ntp.nic.cz) mení pri prechode  letný/zimný čas automaticky, teda nemusím ručne cez webové rozhranie nastavovať v sds ntp klienta na letný/zimný čas?

6

Re: NTPTIME

Vracím se opět k času. Mně to teď  vrací čas o hodinu menší tedy ten "zimní" a ne ještě letní . Jak to tedy co nejjednodušeji řešit, aby to bylo správně při přechodu časů?