{"id":1310,"date":"2021-04-30T13:22:15","date_gmt":"2021-04-30T11:22:15","guid":{"rendered":"https:\/\/xtremer.nl\/?page_id=1310"},"modified":"2023-03-05T22:17:09","modified_gmt":"2023-03-05T21:17:09","slug":"domoticz-weerstation-op-je-pagina","status":"publish","type":"page","link":"https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/","title":{"rendered":"Domoticz weerstation op je pagina."},"content":{"rendered":"\n<h4 class=\"wp-block-heading\">Intro.<\/h4>\n\n\n\n<p>Er is veel vraag over hoe ik mijn vorige weerstation pagina had gemaakt in combinatie met mijn Homewizard. Omdat nu het nieuwe weerstation via domoticz loopt, wil ik deze informatie delen met jullie.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">De Basis.<\/h4>\n\n\n\n<p>De basis is Domoticz welke werkend moet zijn met informatie van een weerstation. Vervolgens dien je ook nog kennis te hebben van PHP. Hieronder beschrijf ik hoe ik vanuit een PHP pagina Domoticz uitlees en presenteer op mijn website.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Verbinding maken het Domoticz.<\/h4>\n\n\n\n<p>Het eerste wat ik controleer tijdens het laden van mijn weerstation pagina, is om te kijken of Domoticz bereikbaar is en reageert.<\/p>\n\n\n\n<p>Dat doe ik het het onderstaande script in PHP.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">    \/* Controleren of Domoticz Online is. *\/\n    if ($socket = @fsockopen($domoticzurl, $port, $errno, $errstr, 2))\n    {\n        fclose($socket);\n    }\n    else\n    {\n        goto offline;\n    }<\/code><\/pre>\n\n\n\n<p>Indien Domoticz niet reageert spreekt de volgende script aan.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">    \/* Domoticz Off-line *\/\n    offline:\n        print '&lt;H5&gt;&lt;p style=\"color: red;\"&gt;Helaas is het weerstation off-line.&lt;\/P&gt;&lt;\/H5&gt;';\n        goto einde;<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Inlezen data vanuit domoticz.<\/h4>\n\n\n\n<p>Als eerst heb ik wat algemene gegevens, zodat bekend is wat waar is te vinden.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">\/* Instellingen *\/\n\n$protocol \t\t= \"http\"; \t\t\t\t\t\/* Http or HTTPS *\/\r\n$domoticzurl \t= \"0.0.0.0\"; \t\t\t\t\/* Domoticz url or ip *\/\r\n$port \t\t\t= \"80\"; \t\t\t\t\t\/* Domoticz poort *\/\r\n$username \t\t= \"GEBRUIKERSNAAM\"; \t\t\/* Gebruikersnaam Domoticz *\/\r\n$password \t\t= \"WACHTWOORD123456\"; \t\t\/* Password Domoticz *\/\r\n\n\n\/* IDX Gegevens van weersensoren van Domoticz*\/\n\n$buitentempsensor = \"123\"; \/* Buitentemperatuur, Vochtigheid &amp; Dauwpunt *\/\n$gevoeltempsensor = \"123\"; \/* Gevoelstemperatuur *\/\n$grondtempsensor = \"123\"; \/* Grondtemperatuur 10cm *\/\n$zonkrachtsensor = \"123\"; \/* Zonnekracht *\/\n$uvisensor = \"123\"; \/* UV index *\/\n$regensensor = \"123\"; \/* Regen per 24h &amp; Regen mm\/h *\/\n$regenmmusensor = \"123\"; \/* Regen mm\/h *\/\n$windsensor = \"123\"; \/* Windmeter (Windgraden, Richting, Windsnelheid, Rukwind, Temperatuur, Windchill *\/\n$luchtdruksensor = \"123\"; \/* Luchtdruk &amp; voorspelling *\/\n$luchtdruksensor_abs = \"123\"; \/* Luchtdruk &amp; voorspelling ABS*\/\n$zichtmeterssensor = \"123\"; \/* Zichtmeters *\/<\/code><\/pre>\n\n\n\n<p>Om wat veiliger in te loggen gebruik maken van headers.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">\/* Header toevoegen *\/\r\n$auth     \t\t= base64_encode( \"{$username}:{$password}\" );\r\n$http_header = stream_context_create([\r\n    \"http\" => [\r\n        \"header\" => \"Authorization: Basic $auth\"\r\n    ]\r\n]);<\/code><\/pre>\n\n\n\n<p>Indien Domoticz online is, dan laad ik alle http requests in.<br>Hiervoor doe ik in totaal 10 http requests.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">\/* Buitentemperatuur, Vochtigheid,Dauwpunt *\/\r\n\r\n$json_string_buitentempsensor = file_get_contents(\"\" . $protocol . \":\/\/\" . $domoticzurl . \":\" . $port . \"\/json.htm?type=devices&amp;rid=\" . $buitentempsensor . \"\", false, $http_header );\r\n$parsed_json_buitentempsensor = json_decode($json_string_buitentempsensor, true);\r\n$parsed_json_buitentempsensor = $parsed_json_buitentempsensor['result'][0];\r\n$buitentemperatuur = $parsed_json_buitentempsensor['Temp'];\r\n$buitenluchtvochtigheid = $parsed_json_buitentempsensor['Humidity'];\r\n\/* $dauwpunt = $parsed_json_buitentempsensor['DewPoint']; *\/\r\n$dauwpunt = round ($parsed_json_buitentempsensor['DewPoint'], 1) ;\r\n$buitentemperatuurupdate = $parsed_json_buitentempsensor['LastUpdate'];\r\n\r\n\/* Gevoelstemperatuur *\/\r\n\r\n$json_string_gevoeltempsensor = file_get_contents(\"\" . $protocol . \":\/\/\" . $domoticzurl . \":\" . $port . \"\/json.htm?type=devices&amp;rid=\" . $gevoeltempsensor . \"\", false, $http_header );\r\n$parsed_json_gevoeltempsensor = json_decode($json_string_gevoeltempsensor, true);\r\n$parsed_json_gevoeltempsensor = $parsed_json_gevoeltempsensor['result'][0];\r\n$gevoelstemperatuur = $parsed_json_gevoeltempsensor['Temp'];\r\n$gevoelstemperatuurupdate = $parsed_json_gevoeltempsensor['LastUpdate'];\r\n\r\n\/* Hitteindex *\/\r\n\r\n$json_string_hitteindexsensor = file_get_contents(\"\" . $protocol . \":\/\/\" . $domoticzurl . \":\" . $port . \"\/json.htm?type=devices&amp;rid=\" . $hitteindexsensor . \"\", false, $http_header );\r\n$parsed_json_hitteindextempsensor = json_decode($json_string_hitteindexsensor, true);\r\n$parsed_json_hitteindextempsensor = $parsed_json_hitteindextempsensor['result'][0];\r\n$hitteindex = $parsed_json_hitteindextempsensor['Temp'];\r\n$hitteindexupdate = $parsed_json_hitteindextempsensor['LastUpdate'];\r\n\r\n\/* Zonnekracht *\/\r\n\r\n$json_string_zonkrachtsensor = file_get_contents(\"\" . $protocol . \":\/\/\" . $domoticzurl . \":\" . $port . \"\/json.htm?type=devices&amp;rid=\" . $zonkrachtsensor . \"\", false, $http_header );\r\n$parsed_json_zonkrachtsensor = json_decode($json_string_zonkrachtsensor, true);\r\n$parsed_json_zonkrachtsensor = $parsed_json_zonkrachtsensor['result'][0];\r\n$zonkracht = $parsed_json_zonkrachtsensor['Radiation'];\r\n$zonkrachtupdate = $parsed_json_zonkrachtsensor['LastUpdate'];\r\n\r\n\/* UV index *\/\r\n\r\n$json_string_uvisensor = file_get_contents(\"\" . $protocol . \":\/\/\" . $domoticzurl . \":\" . $port . \"\/json.htm?type=devices&amp;rid=\" . $uvisensor . \"\", false, $http_header );\r\n$parsed_json_uvisensor = json_decode($json_string_uvisensor, true);\r\n$parsed_json_uvisensor = $parsed_json_uvisensor['result'][0];\r\n$uvi = $parsed_json_uvisensor['UVI'];\r\n$uvicor = round ($uvi * $uvi \/ ($uvi * 1.5), 0) ;\r\n$uvupdate = $parsed_json_uvisensor['LastUpdate'];\r\n\r\n\/* Regen *\/\r\n\r\n$json_string_regensensor = file_get_contents(\"\" . $protocol . \":\/\/\" . $domoticzurl . \":\" . $port . \"\/json.htm?type=devices&amp;rid=\" . $regensensor . \"\", false, $http_header );\r\n$parsed_json_regensensor = json_decode($json_string_regensensor, true);\r\n$parsed_json_regensensor = $parsed_json_regensensor['result'][0];\r\n$regen = $parsed_json_regensensor['Rain'];\r\n$regenval_h = $parsed_json_regensensor['RainRate'];\r\n$regenvalupdate = $parsed_json_regensensor['LastUpdate'];\r\n\r\n\/* Wind -> Windgraden, Richting, Windsnhelheid, Rukwind, Temperatuur, Windchill *\/\r\n\r\n$json_string_windsensor = file_get_contents(\"\" . $protocol . \":\/\/\" . $domoticzurl . \":\" . $port . \"\/json.htm?type=devices&amp;rid=\" . $windsensor . \"\", false, $http_header );\r\n$parsed_json_windsensor = json_decode($json_string_windsensor, true);\r\n$parsed_json_windsensor = $parsed_json_windsensor['result'][0];\r\n$windsnelheid = $parsed_json_windsensor['Speed'];\r\n$rukwind = $parsed_json_windsensor['Gust'];\r\n$windrichtingeng = $parsed_json_windsensor['DirectionStr'];\r\n$windrichtinggraden = $parsed_json_windsensor['Direction'];\r\n$windtemperatuur = $parsed_json_windsensor['Temp'];\r\n$gevoelstemperatuur = $parsed_json_windsensor['Chill'];\r\n$windupdate = $parsed_json_windsensor['LastUpdate'];\r\n\r\n\/* Luchtdruk &amp; voorspelling *\/\r\n\r\n$json_string_luchtdruksensor = file_get_contents(\"\" . $protocol . \":\/\/\" . $domoticzurl . \":\" . $port . \"\/json.htm?type=devices&amp;rid=\" . $luchtdruksensor . \"\", false, $http_header );\r\n$parsed_json_luchtdruksensor = json_decode($json_string_luchtdruksensor, true);\r\n$parsed_json_luchtdruksensor = $parsed_json_luchtdruksensor['result'][0];\r\n$luchtdruk = $parsed_json_luchtdruksensor['Barometer'];\r\n$voorspelling = $parsed_json_luchtdruksensor['Forecast'];\r\n$voorspellingtekst = $parsed_json_luchtdruksensor['ForecastStr'];\r\n$luchtdrukupdate = $parsed_json_luchtdruksensor['LastUpdate'];\r\n\r\n\/* Luchtdruk &amp; voorspelling ABS *\/\r\n\r\n$json_string_luchtdruksensor_abs = file_get_contents(\"\" . $protocol . \":\/\/\" . $domoticzurl . \":\" . $port . \"\/json.htm?type=devices&amp;rid=\" . $luchtdruksensor_abs . \"\", false, $http_header );\r\n$parsed_json_luchtdruksensor_abs = json_decode($json_string_luchtdruksensor_abs, true);\r\n$parsed_json_luchtdruksensor_abs = $parsed_json_luchtdruksensor_abs['result'][0];\r\n$luchtdrukabs = $parsed_json_luchtdruksensor_abs['Barometer'];\r\n$voorspellingabs = $parsed_json_luchtdruksensor_abs['Forecast'];\r\n$voorspellingtekstabs = $parsed_json_luchtdruksensor_abs['ForecastStr'];\r\n$luchtdrukabsupdate = $parsed_json_luchtdruksensor_abs['LastUpdate'];<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Data verwerking<\/h4>\n\n\n\n<p>Nadat ik de gegevens heb uitgelezen kom ik aan bij het verwerken van de data.<\/p>\n\n\n\n<p>De gegevens uit de windmeter wordt verwerken en aan tekst gekoppeld, dit gebeurd door middel van de switch functie van PHP<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">\/* Wind omzetten van km\/h naar tekst *\/\n\nswitch ($windsnelheid)\n{\n\n\tcase ($windsnelheid &gt;= 0.1 &amp;&amp; $windsnelheid &lt;= 1):\n\t\t$windbenaming = \"windstil\";\n\t\t$beaufort = 0;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 1 &amp;&amp; $windsnelheid &lt;= 6):\n\t\t$windbenaming = \"er staat een zeer zwakke wind\";\n\t\t$beaufort = 1;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 6 &amp;&amp; $windsnelheid &lt;= 12):\n\t\t$windbenaming = \"er staat een zwakke wind\";\n\t\t$beaufort = 2;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 12 &amp;&amp; $windsnelheid &lt;= 20):\n\t\t$windbenaming = \"er staat een vrij matige wind\";\n\t\t$beaufort = 3;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 20 &amp;&amp; $windsnelheid &lt;= 29):\n\t\t$windbenaming = \"er staat een matige wind\";\n\t\t$beaufort = 4;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 29 &amp;&amp; $windsnelheid &lt;= 39):\n\t\t$windbenaming = \"er staat een vrij krachtige wind\";\n\t\t$beaufort = 5;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 39 &amp;&amp; $windsnelheid &lt;= 50):\n\t\t$windbenaming = \"er staat een krachtige wind\";\n\t\t$beaufort = 6;\n\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 50 &amp;&amp; $windsnelheid &lt;= 62):\n\t\t$windbenaming = \"er staat een harde wind\";\n\t\t$beaufort = 7;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 62 &amp;&amp; $windsnelheid &lt;= 75):\n\t\t$windbenaming = \"het is stormachtig\";\n\t\t$beaufort = 8;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 75 &amp;&amp; $windsnelheid &lt;= 89):\n\t\t$windbenaming = \"let op, er staat een storm!\";\n\t\t$beaufort = 9;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 89 &amp;&amp; $windsnelheid &lt;= 103):\n\t\t$windbenaming = \"let op: er staat een zware storm!\";\n\t\t$beaufort = 10;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 103 &amp;&amp; $windsnelheid &lt;= 117):\n\t\t$windbenaming = \"let op: er staat een zeer zware storm!!\";\n\t\t$beaufort = 11;\n\tbreak;\n\n\tcase ($windsnelheid &gt;= 117):\n\t\t$windbenaming = \"let op: orkaan!!!\";\n\t\t$beaufort = 12;\n\tbreak;\n\n\tdefault: \/\/default\n\t\t$windbenaming = \"!foutmelding!\";\n\t\t$beaufort = \"!foutmelding!\";\n\tbreak;\n}<\/code><\/pre>\n\n\n\n<p>Tevens moet de windrichting ontcijferd worden vanuit Domoticz.<br>Om vervolgens de &#8220;windrichtingeng&#8221; te vertalen naar een leesbare tekst. Dit gebeurd weer door de switch functie van PHP<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">\/* Wind richting omzetten van Engelse afkorting naar Nederlandse afkorting &amp; tekst *\/\nswitch ($windrichtingeng)\n\t{\n\n\tcase N:\n\t\t$windrichtingnld = \"noorden\";\n\t\t$windrichtingnldkort = \"N\";\n\tbreak;\n\n\tcase NNE:\n\t\t$windrichtingnld = \"noord-noordoosten\";\n\t\t$windrichtingnldkort = \"NNO\";\n\tbreak;\n\n\tcase NE:\n\t\t$windrichtingnld = \"noordoosten\";\n\t\t$windrichtingnldkort = \"NO\";\n\tbreak;\n\n\tcase ENE:\n\t\t$windrichtingnld = \"oost-noordoosten\";\n\t\t$windrichtingnldkort = \"ONO\";\n\tbreak;\n\n\tcase E:\n\t\t$windrichtingnld = \"oosten\";\n\t\t$windrichtingnldkort = \"O\";\n\tbreak;\n\n\tcase ESE:\n\t\t$windrichtingnld = \"oost-zuidoosten\";\n\t\t$windrichtingnldkort = \"OZO\";\n\tbreak;\n\n\tcase SE:\n\t\t$windrichtingnld = \"zuidoosten\";\n\t\t$windrichtingnldkort = \"ZO\";\n\tbreak;\n\n\tcase SSE:\n\t\t$windrichtingnld = \"zuid-zuidoosten\";\n\t\t$windrichtingnldkort = \"ZZO\";\n\tbreak;\n\n\tcase S:\n\t\t$windrichtingnld = \"zuiden\";\n\t\t$windrichtingnldkort = \"Z\";\n\tbreak;\n\n\tcase SSW:\n\t\t$windrichtingnld = \"zuid-zuidwesten\";\n\t\t$windrichtingnldkort = \"ZZW\";\n\tbreak;\n\n\tcase SW:\n\t\t$windrichtingnld = \"zuidwesten\";\n\t\t$windrichtingnldkort = \"ZW\";\n\tbreak;\n\n\tcase WSW:\n\t\t$windrichtingnld = \"west-zuidwesten\";\n\t\t$windrichtingnldkort = \"WZW\";\n\tbreak;\n\n\tcase W:\n\t\t$windrichtingnld = \"westen\";\n\t\t$windrichtingnldkort = \"W\";\n\tbreak;\n\n\tcase WNW:\n\t\t$windrichtingnld = \"west-noordwesten\";\n\t\t$windrichtingnldkort = \"WNW\";\n\tbreak;\n\n\tcase NW:\n\t\t$windrichtingnld = \"noordwesten\";\n\t\t$windrichtingnldkort = \"NW\";\n\tbreak;\n\n\tcase NNW:\n\t\t$windrichtingnld = \"noord-noordwesten\";\n\t\t$windrichtingnldkort = \"NNW\";\n\tbreak;\n\n\tdefault: \/\/default\n\t\t$windrichtingnld = \"!foutmelding!\";\n\t\t$windrichtingnldkort = \"!foutmelding!\";\n\tbreak;\n\t}<\/code><\/pre>\n\n\n\n<p> UV Cijfer verwerken en begeleidende tekst koppelen. Ook dit gebeurd weer door de switch functie van PHP.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">\/* UV omzetten van getal naar tekst en kleur *\/\n\nswitch ($uvicor)\n\t{\n\n\tcase ($uvicor &lt;= 0.1 ):\n\t\t$uvkleur = 1;\n\t\t$uvkleurtekst = 'Groen';\n\t\t$uvtekst = 'geen';\n\t\t$uvbescherming = '';\n\t\t$uvaanbeveling1 = '';\n\t\t$uvaanbeveling2 = '';\n\t\t$uvverbrandtijd = '';\n\tbreak;\n\n\tcase ($uvicor >= 0.1 &amp;&amp; $uvicor &lt; 3):\n\t\t$uvkleur = 1;\n\t\t$uvkleurtekst = 'Groen';\n\t\t$uvtekst = 'zwak';\n\t\t$uvbescherming = 'Geen bescherming nodig.';\n\t\t$uvaanbeveling1 = 'U kunt zich veilig buiten begeven.';\n\t\t$uvaanbeveling2 = '';\n\t\t$uvverbrandtijd = '100 tot 50 minuten';\n\n\tbreak;\n\n\tcase ($uvicor >= 3 &amp;&amp; $uvicor &lt; 6):\n\t\t$uvkleur = 2;\n\t\t$uvkleurtekst = 'Geel';\n\t\t$uvtekst = 'matig';\n\t\t$uvbescherming = 'Bescherming nodig.';\n\t\t$uvaanbeveling1 = 'Waneer u zich voor langere tijd in de zon begeeft zeker als u een licht huid hebt.';\n\t\t$uvaanbeveling2 = '';\n\t\t$uvverbrandtijd = '35 tot 20 minuten';\n\tbreak;\n\n\tcase ($uvicor >= 6 &amp;&amp; $uvicor &lt; 8):\n\t\t$uvkleur = 3;\n\t\t$uvkleurtekst = 'Oranje';\n\t\t$uvtekst = 'hoog';\n\t\t$uvbescherming = 'Extra bescherming essentieel.';\n\t\t$uvaanbeveling1 = 'Draag een zonnebril, hoofddeksel en beschermde kleding.';\n\t\t$uvaanbeveling2 = 'Smeer u goed in met zonnebrandcreme en blijf zoveel mogenlijk uit de zon.';\n\t\t$uvverbrandtijd = '20 tot 10 minuten';\n\tbreak;\n\n\tcase ($uvicor >= 8 &amp;&amp; $uvicor &lt; 11):\n\t\t$uvkleur = 4;\n\t\t$uvkleurtekst = 'Rood';\n\t\t$uvtekst = 'heel hoog';\n\t\t$uvbescherming = 'Zoek de schaduw op.';\n\t\t$uvaanbeveling1 = 'Draag een zonnebril, hoofddeksel en beschermde kleding.';\n\t\t$uvaanbeveling2 = 'Smeer u goed en regelmatig in met zonnebrandcreme en blijf overdag uit de zon.';\n\t\t$uvverbrandtijd = '10 tot 5 minuten';\n\n\tcase ($uvicor >= 11):\n\t\t$uvkleur = 5;\n\t\t$uvkleurtekst = 'Paars';\n\t\t$uvtekst = 'extreme';\n\t\t$uvbescherming = 'Verzet uw buitenactiviteiten naar de vroege ochtend en avond.';\n\t\t$uvaanbeveling1 = 'Volledig bescherming is essentieel';\n\t\t$uvaanbeveling2 = '';\n\t\t$uvverbrandtijd = 'Korter dan 5 minuten';\n\tbreak;\n\n\tdefault: \/\/default\n\t\t$uvkleur = 0;\n\t\t$uvkleurtekst = '!foutmelding!';\n\t\t$uvtekst = '!foutmelding!';\n\t\t$uvbescherming = '!foutmelding!';\n\t\t$uvaanbeveling1 = '!foutmelding!';\n\t\t$uvaanbeveling2 = '!foutmelding!';\n\t\t$uvverbrandtijd = '!foutmelding!';\n\tbreak;\n}<\/code><\/pre>\n\n\n\n<p>Weersvoorspelling verwerken en begeleidende tekst koppelen. Ook dit gebeurd weer door de switch functie van PHP. <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">\/* Voorspelling weer *\/\n\t\t\t\nswitch ($voorspelling)\n{\n\tcase ($voorspelling == 0):\n\t$voorspellingtekst = 'geen informatie';\n\tbreak;\n\n\tcase ($voorspelling == 1):\n\t$voorspellingtekst = 'zonnig';\t\t\t\t\n\tbreak;\n\n\tcase ($voorspelling == 2):\n\t$voorspellingtekst = 'deels bewolkt';\n\tbreak;\n\n\tcase ($voorspelling == 3):\n\t$voorspellingtekst = 'bewolkt';\n\tbreak;\n\n\tcase ($voorspelling == 4):\n\t$voorspellingtekst = 'regen';\n\tbreak;\n\n\tcase ($voorspelling == 5):\n\t$voorspellingtekst = 'onbekend';\n\tbreak;\n\n\tdefault: \/\/default\n\t$voorspellingtekst = '!foutmelding!';\n\tbreak;\n}<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Cachen van de gegevens<\/h4>\n\n\n\n<p>Alle gegevens uit Domoticz worden gecached.<br>Indien de gegevens ouder zijn dan 16 seconde, worden de gegevens opnieuw opgehaald bij het opvragen van de pagina.<br>Deze script staat bovenaan de php pagina.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">&lt;?php\n\ndate_default_timezone_set('Europe\/Amsterdam');\n\n\/* Cache file ophalen *\/\n$cacheFile = 'map\/cache.html';\n\nif ((file_exists($cacheFile)) &amp;&amp; ((fileatime($cacheFile) + 16) &gt; time()))\n{\n    $content = file_get_contents($cacheFile);\n    \/* print 'De onderstaande gegevens zijn uitgelezen op ' . date(\"H:i:s d-F-Y.\", filemtime($cacheFile)); *\/\n    echo $content;\n\n} else\n{\n\n            unlink($cacheFile);\n\n            \/* Hier alles wat je wilt weergeven &amp; cachen *\/\n\n            $content = ob_get_contents();\n            ob_end_clean();\n            file_put_contents($cacheFile, $content);\n            echo $content;\n        }<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p>Door middel van de &#8220;print&#8221; functie presenteer ik de uitgelezen data op mijn pagina.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php line-numbers\">print .$buitentemperatuur. \/* Actuele buitentemperatuur. *\/\nprint .$buitenluchtvochtigheid. \/* Actuele luchtvochtigheid *\/\nprint .$dauwpunt. \/* Actuele Dauwpunt temperatuur. *\/\nprint .$buitentemperatuurupdate. \/* Tijdstip van de bovenstaande gegevens. *\/\n\nprint .$gevoelstemperatuur. \/* Gevoelstemperatuur. *\/\nprint .$gevoelstemperatuurupdate. \/* Tijdstip van de bovenstaande gegevens. *\/\n\nprint .$grondtemperatuur. \/* Actuele grondtemperatuur. *\/\nprint .$grondtemperatuurupdate. \/* Tijdstip van de bovenstaande gegevens. *\/\n\nprint .$windsnelheid. \/* Actuele windsnelheid. *\/\nprint .$windbenaming. \/* Actuele windsnelheid als beschrijving *\/\nprint .$beaufort. \/* Actuele windsnelheid in beaufort *\/\nprint .$windtemperatuur. \/* Actuele windtemperatuur *\/\nprint .$rukwind. \/* Actuele rukwinden *\/\nprint .$windrichtingnld. \/* Windrichting *\/\nprint .$windrichtingnldkort. \/* Windrichting afkorting *\/\nprint .$windrichtinggraden. \/* Windrichting in graden *\/\nprint .$windupdate. \/* Tijdstip van de bovenstaande gegevens. *\/\n\nprint .$regen. \/* Regenval vandaag *\/\nprint .$regenval_h. \/* Regenval per uur *\/\nprint .$regenvalupdate. \/* Tijdstip van de bovenstaande gegevens. *\/\n\nprint .$zonkracht. \/* Actuele zonkracht *\/\nprint .$uvicor. \/* Actuele UV gecorrigeerd *\/\nprint .$uvbescherming. \/* Bescherming tekst *\/\nprint .$uvaanbeveling1. \/* Advies regel 1 *\/\nprint .$uvaanbeveling2. \/* Advies regel 2 *\/\nprint .$uvverbrandtijd. \/* Verbrandingstijd *\/\nprint .$zonkrachtupdate. \/* Tijdstip van de bovenstaande gegevens. *\/\n\nprint .$zichtmeters. \/* Actuele zichtmeters *\/\nprint .$zichtmetersupdate. \/* Tijdstip van de bovenstaande gegevens. *\/\n\nprint .$luchtdruk. \/* Actuele luchtdruk *\/\nprint .$luchtdrukabs. \/* Actuele ABS luchtdruk *\/\nprint .$voorspellingtekst. \/* Actuele voorspelling *\/\nprint .$luchtdrukupdate. \/* Tijdstip van de bovenstaande gegevens. *\/\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Intro. Er is veel vraag over hoe ik mijn vorige weerstation pagina had gemaakt in combinatie met mijn Homewizard. Omdat nu het nieuwe weerstation via domoticz loopt, wil ik deze informatie delen met jullie. De Basis. De basis is Domoticz welke werkend moet zijn met informatie van een weerstation. Vervolgens dien je ook nog kennis [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1291,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1310","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\r\n<title>Domoticz weerstation op je pagina. &#8211; Xtremer.nl<\/title>\r\n<meta name=\"description\" content=\"Weergegevens uit afgeschermde Domoticz halen, en presenteren op een openbare website? Hoe heb ik dit gemaakt, je leest het hier!\" \/>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/\" \/>\r\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"Domoticz weerstation op je pagina. &#8211; Xtremer.nl\" \/>\r\n<meta property=\"og:description\" content=\"Weergegevens uit afgeschermde Domoticz halen, en presenteren op een openbare website? Hoe heb ik dit gemaakt, je leest het hier!\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/\" \/>\r\n<meta property=\"og:site_name\" content=\"Xtremer.nl\" \/>\r\n<meta property=\"article:modified_time\" content=\"2023-03-05T21:17:09+00:00\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:label1\" content=\"Geschatte leestijd\" \/>\n\t<meta name=\"twitter:data1\" content=\"10 minuten\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/xtremer.nl\\\/index.php\\\/domoticz\\\/domoticz-weerstation-op-je-pagina\\\/\",\"url\":\"https:\\\/\\\/xtremer.nl\\\/index.php\\\/domoticz\\\/domoticz-weerstation-op-je-pagina\\\/\",\"name\":\"Domoticz weerstation op je pagina. &#8211; Xtremer.nl\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/xtremer.nl\\\/#website\"},\"datePublished\":\"2021-04-30T11:22:15+00:00\",\"dateModified\":\"2023-03-05T21:17:09+00:00\",\"description\":\"Weergegevens uit afgeschermde Domoticz halen, en presenteren op een openbare website? Hoe heb ik dit gemaakt, je leest het hier!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/xtremer.nl\\\/index.php\\\/domoticz\\\/domoticz-weerstation-op-je-pagina\\\/#breadcrumb\"},\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/xtremer.nl\\\/index.php\\\/domoticz\\\/domoticz-weerstation-op-je-pagina\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/xtremer.nl\\\/index.php\\\/domoticz\\\/domoticz-weerstation-op-je-pagina\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/xtremer.nl\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Domoticz\",\"item\":\"https:\\\/\\\/xtremer.nl\\\/index.php\\\/domoticz\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Domoticz weerstation op je pagina.\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/xtremer.nl\\\/#website\",\"url\":\"https:\\\/\\\/xtremer.nl\\\/\",\"name\":\"Xtremer.nl\",\"description\":\"Persoonlijke pagina van Christian &amp; Esther\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/xtremer.nl\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nl-NL\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Domoticz weerstation op je pagina. &#8211; Xtremer.nl","description":"Weergegevens uit afgeschermde Domoticz halen, en presenteren op een openbare website? Hoe heb ik dit gemaakt, je leest het hier!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/","og_locale":"nl_NL","og_type":"article","og_title":"Domoticz weerstation op je pagina. &#8211; Xtremer.nl","og_description":"Weergegevens uit afgeschermde Domoticz halen, en presenteren op een openbare website? Hoe heb ik dit gemaakt, je leest het hier!","og_url":"https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/","og_site_name":"Xtremer.nl","article_modified_time":"2023-03-05T21:17:09+00:00","twitter_card":"summary_large_image","twitter_misc":{"Geschatte leestijd":"10 minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/","url":"https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/","name":"Domoticz weerstation op je pagina. &#8211; Xtremer.nl","isPartOf":{"@id":"https:\/\/xtremer.nl\/#website"},"datePublished":"2021-04-30T11:22:15+00:00","dateModified":"2023-03-05T21:17:09+00:00","description":"Weergegevens uit afgeschermde Domoticz halen, en presenteren op een openbare website? Hoe heb ik dit gemaakt, je leest het hier!","breadcrumb":{"@id":"https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/#breadcrumb"},"inLanguage":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/xtremer.nl\/index.php\/domoticz\/domoticz-weerstation-op-je-pagina\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/xtremer.nl\/"},{"@type":"ListItem","position":2,"name":"Domoticz","item":"https:\/\/xtremer.nl\/index.php\/domoticz\/"},{"@type":"ListItem","position":3,"name":"Domoticz weerstation op je pagina."}]},{"@type":"WebSite","@id":"https:\/\/xtremer.nl\/#website","url":"https:\/\/xtremer.nl\/","name":"Xtremer.nl","description":"Persoonlijke pagina van Christian &amp; Esther","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/xtremer.nl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nl-NL"}]}},"_links":{"self":[{"href":"https:\/\/xtremer.nl\/index.php\/wp-json\/wp\/v2\/pages\/1310","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xtremer.nl\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/xtremer.nl\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/xtremer.nl\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/xtremer.nl\/index.php\/wp-json\/wp\/v2\/comments?post=1310"}],"version-history":[{"count":33,"href":"https:\/\/xtremer.nl\/index.php\/wp-json\/wp\/v2\/pages\/1310\/revisions"}],"predecessor-version":[{"id":1487,"href":"https:\/\/xtremer.nl\/index.php\/wp-json\/wp\/v2\/pages\/1310\/revisions\/1487"}],"up":[{"embeddable":true,"href":"https:\/\/xtremer.nl\/index.php\/wp-json\/wp\/v2\/pages\/1291"}],"wp:attachment":[{"href":"https:\/\/xtremer.nl\/index.php\/wp-json\/wp\/v2\/media?parent=1310"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}