FinWX Foorumi

Salamapaikannusohjelmat => Kysymykset ja vapaa keskustelu salamapaikannusohjelmista => Aiheen aloitti: weatherc - sunnuntai, 26.07.2009, 17:24

Otsikko: NSDisplay reaaliaikainen tutkanäyttö websivulle - Prerelease
Kirjoitti: weatherc - sunnuntai, 26.07.2009, 17:24
Nyt alkaa olemaan edes sinnepäinpaketti kasassa, tosin ei takeita että toimii ihan "out of the box".
Testasin ja silloin kyllä toimis mutta voihan aina olla joku asetus/filu joka unhohtunut.
Jos ohjeet ja/tai skripti menee puuhun jossain kohtaa niin otan mielellään tiedot vastaan ;)

Kyseessä siis sama ukkostutkan näyttö joka omalla sivullani (http://www.nordicweather.net/index.php?sivu=32&lang=fi)

Miten se toimii:
- Nextormista se käyttää vain karttakuvaa kokokuvan sijasta, näin saadaan kokoa pikkasen pienemmäksi sekä TRACReport:ia.
- Apruina käytetään Jim McMurryn tekemää lisäpalikkaa NsLog Nexstormiin joka tekee clientraw-tyyppiset tesktitiedostot Nextormin datasta.
- Siinä on "parkkeerausesto", eli päivitykset päättyvät 15 minuutin jälkeen jonka jälkeen vierailija on ladattava sivu uudelleen jatkaaseen. Näin estetään esim ne joilla on sivu auki jossain välilehdessä taustalla syömästä kaistaa.
- Data päivittyy 30 sekunnin välein; kartta, TRAC ja käppyrä kerran minuutissa.
- Pieni käppyrä tallennetaan siten että uusi tehdään vain jos vanhempi kuin 2 minuuttia.

Tämän hetken rajoitukset:
Tukee vain dispaly-modea 1024x768

Asennus

Osa 1 - Asennetaan ensin NsLog
1. Hae NsLog.zip Jimin kotisivuilta (http://jcweather.us/NSLog.php) ja pura se haluaamasi kansioon, esim. Nexstormin alikansioon.

2. Käynnistä se klikkaamalla NSLog.exe ja valitse Config-välilehti

3. Tarkista että täpit on seuraavissa: Screen on, Show status area niin nähdään että kaikki on ok. Käytössä kannattaa pitää Log FTP transfers pois käytöstä, tämä on kätevä jos on ongelmia saada tiedostot serverille.

4. Config-välilehden alalaidassa näet kolme numerolaatikkoa:
- vasemmanpuoleisesta voi asettaa rajan milloin NSLog rupee laskemaan iskut "Close"-iskuiksi (siinä lukee miles mutta se on km jollei miles ole valittu täplistä)
- keskimmäisestä saa asetuksen "hight activity" jolloin pysytyy muttaamaan upload-nopeutta ukkosten aikana jos haluaa, itse en käytä sitä.
Tätä voi käyttää myös toistepäin, hidastaa päivitystä kun ei aktiviteettiä, esim. talveksi ;)
- oikeammanpuoleinen onkin mielenkiintoinen, NSLog laskee myös iskut lyhyellä aikavälillä (näet sen omassa näytössä kohtaa 30 min, tuo minuutti muuttuu asetuksen mukaan), tähän voit aesettaa tuon aikarajan, esim. jos asetus 30 niin kakkoslaskureina tulee iskut viime 30 min ajalta.

5. Mene välilehteen "Realtime".

6. Täpit sekä Create ja FTP kohtiin. Create-kohtaan, valitse kansio minne se tallentaa NSReatime.txt-tiedoston omalle koneellesi.
Normal- ja Accelerated-rate kohtiin suosituksena 20 sek. Tuo-accelerated-asetus viittaa tuohon keksimmäiseen numerolaatikkoon Config-välilehdessä.
"Passive" ja "Realname" kannattaa pitää valittuna.
Sekä laita webhotellisi normaalit FTP-login tiedot, server-kohtaan mallin mukainen domain-nimi tai vaihtoehtoisesti IP-numero toimii myös.
Paina lopuksi Clone-nappia, tällöin samat asetukset siirtyvät myös muihin välilehtiin.

7. Mene välilehteen "Graph".

8. Täpit sekä Create- ja FTP-kohtiin. Create-kohtaan, valitse kansio minne se tallentaa NSGraph.txt-tiedoston omalle koneellesi.
Log-interval: 1 min
Max lines: 1440 (1 vrk)
Sekä Normal rateksi vaikka 2 min (ei se sen useammin tarvi olla).

9. Paina OK.

10. Käynnistä NSLog uudelleen menemällä File->Exit jotta uudet asetukset varmasti tallentuu.

11. Nyt pitäisi ilmestyä näytön alareunassa oleviin laatikkoihin aikoja, ovat ne jolloin tiedosto on viimeksi FTP:ttu serverille, tässä vaiheessa aikoja tulee vain NSRealtime ja NSGraph-kohtiin.

12. Tarkista että kyseiset tiedostot myös löytyvät webserveriltäsi.

Tarkkaavainen saattoi havaita Upload 1, 2, 3, 4, 5-välilehdet. Sinne voit laittaa haluasi tiedostot menemään serverille, itse käytän niitä Nexstormin kuviin ja filuihin, mutta esim. webkameran voi lattaa menemään sitä kautta.

Esimerkkinä Jimin NSRealtime-välilehti:

(http://jcweather.us/fixedgrafx/realtime.png)

Osa 2 - websivu

Sisältää valmiin sivun Saratogan Kenin templateen, ohjeet sen mukaiset.

1. Lataa NSDisplay.zip (http://www.nordicweather.net/Pre-NSDisplay.zip) ja pura se.

2. Muuta Nexstormin asetuksista Data export-kodasta että "Capture map only".
Tarkista Nextormissa että kohdassa Options->FlashGate IPC, että molemmat ovat valittu

3. Tiedostosta wxtracker.php löytyy kourallinen asetuksia:
$path_to_trac = "./stormtracker/TRACReport.txt";
$path_to_data  = "./stormtracker/NSRealtime.txt";
$path_to_map = "./stormtracker/nexstorm.png";
$path_to_graph = "./currstr.php";

$range = "600 km";
$persist = "60 min";
$squelsh = "0";


$path_to_graph-asetusta ei tarvi muuttaa, sen pitäisi olla valmiina.

4. Tiedostosta currstr.php löytyy muutama lisä-asetus: (Se on se pieni käyrä)
//CONFIG

DEFINE ("TTF_DIR",$WEBROOT."/fonts/" ); // folder for your fontfile, uses arial.ttf-fontfile.
$jp = "./jp_graph/src/"; // path to JpGraph
@$gdataraw = file_get_contents("../stormtracker/NSGraph.txt");

// END OF SETTINGS


Ainut mitä tarvii tässä muuttaa on @$gdataraw = file_get_contents("../stormtracker/NSGraph.txt");

5. Puske hela hoito serverille siten että wxtracker.php tulee juureen ja nuo kolme kansiota sen alle.

6. Chmod kansio cache arvoon 777.

7. Kokeile menemällä sivulle wxtracker.php.
(Huom. käyrä ei näy ensimmäisellä yrittämisellä, se vaatii toisen yrittämisen, käyrän toimivuuden voit myös kokeilla menemällä suoraan siihen, currstr.php)

PS. wxtracker.php:sta löytyy valmis paikka Google-mainokselle samassa kohtaa kun omakin mainos on.

Violá! Valmista!

Ainut mikä nyt tarvii muistaa on että käynnistää myös NSLog:in samalla kun Nexstormin.
Otsikko: Vs: NSDisplay reaaliaikainen tutkanäyttö websivulle - Prerelease
Kirjoitti: teutari - maanantai, 27.07.2009, 20:03
Nonniin..., taas hienoa väsäämistä weatherc! ;)

Asensin sivut eilen ja tänään tuli tehtyä nuo pienet hienosäädöt sivulle. Tältä (http://www.teutari.net/wxradar.php?lang=fi) se näyttää. ;D

KIITOS WEATHERC!!!!!!!!!
Otsikko: Vs: NSDisplay reaaliaikainen tutkanäyttö websivulle - Prerelease
Kirjoitti: weatherc - maanantai, 27.07.2009, 20:14
Oleppa hyvä vaan. NWS kiittää bannerista :)

Oli oikeen hjuva että saatiin Liminka "koekaniiniksi" tuon Saratogan templaten kanssa niin sain nekin päällekkäisyydet karsittua pois, tuo AJAX joka sitä tutkanäyttöä pyörittäähän on alunperin kotoisin noista templateista.

Otsikko: Vs: NSDisplay reaaliaikainen tutkanäyttö websivulle - Prerelease
Kirjoitti: weatherc - maanantai, 03.08.2009, 00:02
Testissä lisäpalikka ylläolevaan: Valinta jossa voi selailla "lievästi" modatun WASP2-kuvan ja Nextormin välillä, tuolla (http://www.nordicweather.net/index.php?sivu=32.3&lang=fi) (kyseinen sivu on väliaikainen ja häipyy jossain vaiheessa).

WASP2:nen ei ole vielä AJAX-päivityksessä mutta pitäisi onnistua ilman ongelmia, kuvan saa vaihdettua klikkaamalla yläreunassa olevaa "Normaali", "Kolmiomitattu" tai "Iso"-sanoja.

WASP2-kuva ajetaan php:n läpi jossa poimitaan pelkkä kartta ja muutama pikku muu osa siten että se tallennetaan ja se tehdään uudestaan vain jos orginaali kuva on uudempi eli maks kerran minuutissa.
Kokeilin isontaa WASP2-kuvan imageresamplen läpi samaan kokoon kun Nexstorminkin kuva on mutta siitä tuli nojaa pikkasen sutturaista tulosta, itse kartta oli ihan ok mutta täplät oli pikkasen sutturaiset (vaihtoehto "Iso"). Siitä tuli myös pikkasen turhan isokokoinen, noin 200 Kb (typerä php)...

Pikaohje WASP2-kuvan värien muokkaukseen: ;)
Kuvat löytyvät maps-kansiosta todennäköisesti jossain WASP2-kansiossa, avaa kuva kuvankäsittelyohjelmalla ja harrasta vähän color-replace:iä. Kun valmis, voi olla että täytyy ladata "map definions file" uudestaan että se löytää uudet kartat.
HUOM! Ota kopiot orginaaleista ennen aloittamista!

;D
Otsikko: Vs: NSDisplay reaaliaikainen tutkanäyttö websivulle - Prerelease
Kirjoitti: Myxi - sunnuntai, 09.08.2009, 11:18
Lainaus käyttäjältä: weatherc - sunnuntai, 26.07.2009, 17:24

- Siinä on "parkkeerausesto", eli päivitykset päättyvät 15 minuutin jälkeen jonka jälkeen vierailija on ladattava sivu uudelleen jatkaaseen. Näin estetään esim ne joilla on sivu auki jossain välilehdessä taustalla syömästä kaistaa.


Hieno feature, mutta miten siitä saa ilmoituksen pois? Päivitys saakin päättyä idlaajilla, mutta ilman erillistä ilmoitusta.
Otsikko: Vs: NSDisplay reaaliaikainen tutkanäyttö websivulle - Prerelease
Kirjoitti: teutari - sunnuntai, 09.08.2009, 14:10
Lainaus käyttäjältä: Myxi - sunnuntai, 09.08.2009, 11:18
Lainaus käyttäjältä: weatherc - sunnuntai, 26.07.2009, 17:24

- Siinä on "parkkeerausesto", eli päivitykset päättyvät 15 minuutin jälkeen jonka jälkeen vierailija on ladattava sivu uudelleen jatkaaseen. Näin estetään esim ne joilla on sivu auki jossain välilehdessä taustalla syömästä kaistaa.


Hieno feature, mutta miten siitä saa ilmoituksen pois? Päivitys saakin päättyä idlaajilla, mutta ilman erillistä ilmoitusta.


Muuttaa wxtracker.php sivun koodia niin ilmoitus ei enää tule näkyviin. ;)

define('PAUSEMSG', 'Päivitys tauonnut - lataa sivu uudelleen jatkaasesi');
Muuttaa define('PAUSEMSG', '');

define('PAUSEMSG', 'Uploads paused, reload the page to continue');
Muuttaa define('PAUSEMSG', '');
Otsikko: Vs: NSDisplay reaaliaikainen tutkanäyttö websivulle - Prerelease
Kirjoitti: weatherc - sunnuntai, 09.08.2009, 17:10
Lainaus käyttäjältä: Myxi - sunnuntai, 09.08.2009, 11:18

Hieno feature, mutta miten siitä saa ilmoituksen pois? Päivitys saakin päättyä idlaajilla, mutta ilman erillistä ilmoitusta.


En ole ihan satavarma että teutarin idea toimii, veikkaan että puskee tyhjän ilmoitusboxin..
NSajaxnew2.js:ssä, aika lopussa

if (nsmaxupdates > 0 && nsupdates > nsmaxupdates) {
alert(txtPaus);
}


Muuta se

if (nsmaxupdates > 0 && nsupdates > nsmaxupdates) {
//alert(txtPaus);
}


niin se ei ainakaan puske tuota ilmoitusboxia  :)

Otsikko: Vs: NSDisplay reaaliaikainen tutkanäyttö websivulle - Prerelease
Kirjoitti: Myxi - sunnuntai, 09.08.2009, 23:31
Lainaus käyttäjältä: weatherc - sunnuntai, 09.08.2009, 17:10
if (nsmaxupdates > 0 && nsupdates > nsmaxupdates) {
//alert(txtPaus);
}


Joo tuopa taisikin olla toimiva jippo, itse yritin aluksi kommentoida tuon koko yllä olevan litanjan vaan siitäpä se ei tykännyt  ;D