Algemeen forum ontrent de ontwikkelng, design en hosting van weergerelateerde websites (dit laatste om een beetje on topic te blijven)
Gebruikersavatar
Door Toulon7559
#73862
Wim,

Dank voor je snelle reactie!

Mijn opmerking over 'vertaling' in PWSD werd ingegeven door een (m.i.) 'cosmetisch kleinigheidje' m.b.t. code-vinden, maar wel handig als het zou worden aangepast
(betreffende weblink weghalen is ook een praktische oplossing).
.
screenshot-PWSD_Euroalarm.png
screenshot_extract
screenshot-PWSD_Euroalarm.png (18.55 KiB) 5957 keer bekeken
.
De weblink achter BE004 verwijst nog naar Euroalarm.eu, en geeft een foutmelding voor onvindbare website.
[met laatste versie software en ook cache ververst]
Gebruikersavatar
Door wvdkuil
#73863
Toulon7559 schreef: 04 feb 2022, 10:47 Wim,
.
Dank voor je snelle reactie!
.
Mijn opmerking over 'vertaling' in PWSD werd ingegeven door een (m.i.) 'cosmetisch kleinigheidje' m.b.t. code-vinden, maar wel handig als het zou worden aangepast
. . .
De weblink achter BE004 verwijst nog naar Euroalarm.eu, en geeft een foutmelding voor onvindbare website.
. . .
.
De link zal ik in een volgende update aanpassen.
.
Zolang niemand mij correcties doorgeeft kan ik de lijsten met codes ook niet aanpassen door b.v. de vraagtekens weg te halen. Uit de huidige lijst met vertalingen http://pwsdashboard.be/pwsWD/list_warn_codes.php
Code: Selecteer alles
NL007	NL11	?? Groningen	NUTS2
NL008	NL23	?? Flevoland	NUTS2
NL009	NL33	?? Zuid-Holland	NUTS2
NL010	NL34	?? Zeeland	NUTS2
NL011	NL32	?? Noord-Holland	NUTS2
NL012	NL42	?? Limburg	NUTS2
NL013	NL41	?? Noord-Brabant	NUTS2
NL014	NL22	?? Gelderland	NUTS2
NL015	NL31	?? Utrecht	NUTS2
NL016	NL21	?? Overijssel	NUTS2
NL017	NL12	?? Friesland	NUTS2
NL018	NL13	?? Drenthe	NUTS2
NL019	NL113	?? Waddeneilanden	NUTS3
NL019	NL121	?? Waddeneilanden	NUTS3
NL019	NL321	?? Waddeneilanden	NUTS3
De PWS-meteoalarm scripts accepteren meerdere regio's (over meerdere landen)
Dus geef in setup eens aan NL016,NL21 twee codes met een comma er tussen.
Dan wordt er altijd een waarschuwing getoond of KNMI nu de oude of de nieuwe code gebruikt.

Wim
Gebruikersavatar
Door Toulon7559
#73865
Dank voor de tip!
Mooi in PWSD dat meerdere regio’s kunnen worden ingevoerd, zeker als je ergens aan een randje woont.
Toen ik nog in Zeeland woonde, luisterden we ook vaak naar de info van Ukkel naast de Bilt .....
#74485
De variant via de KNMI xml geeft tegenwoordig een "wat kan ik verwachten..."-link naar een pagina met nadere informatie over bijv. onweer.
De link probeert echter een pagina op jouw eigen website te openen en loopt dus 'dood'.
Heeft iemand dat al kunnen verwijderen?

Ik gebruik nu dit php scriptje (zie eerdere posts in deze thread):
Code: Selecteer alles
<?php
$knmi = "https://cdn.knmi.nl/knmi/xml/rss/rss_KNMIwaarschuwingen.xml";
$feed = simplexml_load_file($knmi) or die("Error: Cannot create object");
//print_r($feed);
$titel = (string) $feed->channel->item[3]->title;
$warn = (string) $feed->channel->item[3]->description;
$warn = str_replace('<br>', '', $warn);
$bron = "Bron: KNMI";
if (preg_match('/\b(groen)\b/i', $warn))  {$bgc = 'background-color:limeGreen';}
if (preg_match('/\b(geel)\b/i', $warn))  {$bgc = 'background-color:yellow';}
if (preg_match('/\b(oranje)\b/i', $warn))  {$bgc = 'background-color:orange';}
if (preg_match('/\b(rood)\b/i', $warn))  {$bgc = 'background-color:red';}
?>

<div class="blockDiv" style= "<?php echo $bgc; ?>;text-align:center;">


<?php
echo "<h2>" . $titel . "</h2>";
echo "<p>" . $warn . "</p>";
echo "<p style= 'text-align:right; font-size:70%';><a style='color:white; text-decoration:none'; href='https://www.knmi.nl/nederland-nu/weer/waarschuwingen/friesland' target='_blank'>".$bron."</a></p>";  
?>

</div>
en de waarschuwing voor mij (Noord Brabant) ziet er dan als volgt uit:
7A5CFFB0-8B05-4BAE-9479-B5AE461CD61C.jpeg
7A5CFFB0-8B05-4BAE-9479-B5AE461CD61C.jpeg (243.94 KiB) 5105 keer bekeken
#74489
Ik heb de oplossing ook niet kunnen vinden, maar erger me ook al aan die link, die naar je eigen site verwijst.
Van mij mag die link gewoon weg. Misschien iemand een oplossing?
Gebruikersavatar
Door Toulon7559
#74496
Een andere invalshoek en oplossing, maar voor extractie van KNMI-alarmteksten per locatie maak ik gebruik van een lua-script waarin de volgende aanroep
Code: Selecteer alles
    result=os.capture('curl -s "http://weerlive.nl/api/json-data-10min.php?key='..api_key..'&locatie='..coord..'"')
Om uitlezing te krijgen moet je een API-key regelen via deze weblink,
en voor info passend bij jouw locatie moet je coördinaten opgeven als decimale geo-waarden voor "latitude, longitude"
Uit json-file 'result' kun je daarna de alarm-informatie ophalen bijv. via de volgende lua-code
Code: Selecteer alles
    local jsonValeur = json:decode(result)
    val_Alarm  =tonumber(jsonValeur.liveweer[1].alarm)
    AlarmText  =jsonValeur.liveweer[1].alarmtxt
Met val_Alarm kun je zien óf en welk soort alarm van toepassing is.
De AlarmText is vaak een hele lap tekst, en niet een eenvoudige, korte melding.
#74498
Ik zag dat onze weercollega tvg van "Het weer in Alkmaar" (hetweerinalkmaarPUNTnl) een andere oplossing heeft.
Het lijkt er op dat hij de gegevens rechtstreeks van de knmi html-pagina afplukt.
Ik heb hem eergisteren gemaild, maar nog geen reactie mogen ontvangen.
Dat wacht ik nog even af.
Gebruikersavatar
Door T.J.
#74500
De variant via de KNMI xml geeft tegenwoordig een "wat kan ik verwachten..."-link naar een pagina met nadere informatie over bijv. onweer.
De link probeert echter een pagina op jouw eigen website te openen en loopt dus 'dood'.
Heeft iemand dat al kunnen verwijderen?
Ik heb dat linkje weten te veranderen via het script, weet niet of dit de ideale oplossing is, maar het werkt in ieder geval wel.
Code: Selecteer alles
<?php
$knmi = "https://cdn.knmi.nl/knmi/xml/rss/rss_KNMIwaarschuwingen.xml";
$feed = simplexml_load_file($knmi) or die("Error: Cannot create object");
//print_r($feed);
$titel = (string) $feed->channel->item[3]->title;
$warn = (string) $feed->channel->item[3]->description;
$warn = str_replace('<br>', ' ', $warn);
$warn = str_replace('/kennis-en-datacentrum/', 'https://www.knmi.nl/kennis-en-datacentrum/', $warn);
$bron = "Bron: KNMI";
if (preg_match('/\b(groen)\b/i', $warn))  {$bgc='warning_green';}
if (preg_match('/\b(geel)\b/i', $warn))  {$bgc='warning_yellow';}
if (preg_match('/\b(oranje)\b/i', $warn))  {$bgc='warning_orange';}
if (preg_match('/\b(rood)\b/i', $warn))  {$bgc='warning_red';}

?>

<div class="blockDiv" style="<?php echo $bgc; ?>; text-align:center;">


<?php
echo "<h2>" . $titel . "</h2>";
echo "<p>" . $warn . "</p>";
echo "<p style= 'text-align:right; font-size:70%';><a style='color:white; text-decoration:none'; href='https://www.knmi.nl/nederland-nu/weer/waarschuwingen/friesland' target='_blank'>".$bron."</a></p>";  
?>


</div>
Dus de regel
$warn = str_replace('/kennis-en-datacentrum/', 'https://www.knmi.nl/kennis-en-datacentrum/', $warn);
toevoegen.
Gebruikersavatar
Door tvg
#74519
hallo

Ik gebruik de volgende code

$warn = preg_replace(('/<p>(.*?)<\/a>/s'),' ',$warn);

om de link uit het bericht te halen.

Groeten
Theo