{"id":1508,"date":"2025-09-22T10:22:23","date_gmt":"2025-09-22T08:22:23","guid":{"rendered":"https:\/\/www.flip-design.de\/?p=1508"},"modified":"2025-09-22T10:22:23","modified_gmt":"2025-09-22T08:22:23","slug":"how-to-capture-stream-data-within-fabric-in-a-kql-database","status":"publish","type":"post","link":"https:\/\/www.flip-design.de\/?p=1508","title":{"rendered":"How to capture stream data within Fabric in a KQL database"},"content":{"rendered":"\n<p>I extended the PowerShell script a bit so that it now submits a more complex JSON payload, and I also ensured that the script runs reliably every 10 seconds.<br><a href=\"https:\/\/www.flip-design.de\/?p=1495\">https:\/\/www.flip-design.de\/?p=1495<\/a><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><\/code><\/pre>\n\n\n\n<p>while ($true) {<\/p>\n\n\n\n<p>&nbsp; &nbsp; [Reflection.Assembly]::LoadWithPartialName(&#8222;System.Web&#8220;)| out-null<\/p>\n\n\n\n<p>\u00a0 \u00a0 $URI=&#8220;&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; $Access_Policy_Name=&#8220;RootManageSharedAccessKey&#8220;<\/p>\n\n\n\n<p>\u00a0 \u00a0 $Access_Policy_Key=&#8220;&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; <em>#Token expires now+300<\/em><\/p>\n\n\n\n<p>&nbsp; &nbsp; $Expires=([DateTimeOffset]::Now.ToUnixTimeSeconds())+1800<\/p>\n\n\n\n<p>&nbsp; &nbsp; $SignatureString=[System.Web.HttpUtility]::UrlEncode($URI)+ &#8222;`n&#8220; + [string]$Expires<\/p>\n\n\n\n<p>&nbsp; &nbsp; $HMAC = New-Object System.Security.Cryptography.HMACSHA256<\/p>\n\n\n\n<p>&nbsp; &nbsp; $HMAC.key = [Text.Encoding]::ASCII.GetBytes($Access_Policy_Key)<\/p>\n\n\n\n<p>&nbsp; &nbsp; $Signature = $HMAC.ComputeHash([Text.Encoding]::ASCII.GetBytes($SignatureString))<\/p>\n\n\n\n<p>&nbsp; &nbsp; $Signature = [Convert]::ToBase64String($Signature)<\/p>\n\n\n\n<p>&nbsp; &nbsp; $SASToken = &#8222;SharedAccessSignature sr=&#8220; + [System.Web.HttpUtility]::UrlEncode($URI) + &#8222;&amp;sig=&#8220; + [System.Web.HttpUtility]::UrlEncode($Signature) + &#8222;&amp;se=&#8220; + $Expires + &#8222;&amp;skn=&#8220; + $Access_Policy_Name<\/p>\n\n\n\n<p>&nbsp; &nbsp; $profiles = @(<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; @{<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; id &nbsp; &nbsp; &nbsp; = &#8222;Machine01&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; location = @{<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; city = &#8222;M\u00fcnchen&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; zip &nbsp;= &#8222;80331&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; lat &nbsp;= 48.13743<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; lon &nbsp;= 11.57549<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; },<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; @{<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; id &nbsp; &nbsp; &nbsp; = &#8222;Machine02&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; location = @{<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; city = &#8222;Hamburg&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; zip &nbsp;= &#8222;20095&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; lat &nbsp;= 53.55034<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; lon &nbsp;= 10.00065<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; },<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; @{<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; id &nbsp; &nbsp; &nbsp; = &#8222;Machine03&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; location = @{<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; city = &#8222;Berlin&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; zip &nbsp;= &#8222;10117&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; lat &nbsp;= 52.52001<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; lon &nbsp;= 13.40495<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; }<\/p>\n\n\n\n<p>&nbsp; &nbsp; )<\/p>\n\n\n\n<p>&nbsp; &nbsp; $counterFile = Join-Path $PSScriptRoot &#8218;counter.txt&#8216;<\/p>\n\n\n\n<p>&nbsp; &nbsp; if (Test-Path $counterFile) {<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; $counter = [int](Get-Content -LiteralPath $counterFile)<\/p>\n\n\n\n<p>&nbsp; &nbsp; } else {<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; $counter = 0<\/p>\n\n\n\n<p>&nbsp; &nbsp; }<\/p>\n\n\n\n<p>&nbsp; &nbsp; $idx &nbsp; &nbsp; = $counter % $profiles.Count<\/p>\n\n\n\n<p>&nbsp; &nbsp; $profile = $profiles[$idx]<\/p>\n\n\n\n<p>&nbsp; &nbsp; $payload = @{<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; machine &nbsp;= @{<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; id &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;= $profile.id<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; temperature = Get-Random -Minimum 60 -Maximum 80 &nbsp;<em># anpassen falls n\u00f6tig<\/em><\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; }<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; location = $profile.location<\/p>\n\n\n\n<p>&nbsp; &nbsp; }<\/p>\n\n\n\n<p>&nbsp; &nbsp; $next = ($counter + 1) % $profiles.Count<\/p>\n\n\n\n<p>&nbsp; &nbsp; Set-Content -LiteralPath $counterFile -Value $next<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; $json = $payload | ConvertTo-Json -Compress<\/p>\n\n\n\n<p>&nbsp; &nbsp; $endpoint = &#8222;https:\/\/$URI\/messages?timeout=60&amp;api-version=2014-01&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; $headers &nbsp;= @{<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &#8222;Authorization&#8220; = $SASToken<\/p>\n\n\n\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &#8222;Content-Type&#8220; &nbsp;= &#8222;application\/json; charset=utf-8&#8220;<\/p>\n\n\n\n<p>&nbsp; &nbsp; }<\/p>\n\n\n\n<p>&nbsp; &nbsp; Invoke-RestMethod -Uri $endpoint -Method Post -Headers $headers -Body $json<\/p>\n\n\n\n<p>&nbsp; &nbsp; Start-Sleep -Seconds 1<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>I believe that in a productive environment during development it makes sense to transmit a similar or even identical JSON structure. This way, the metadata can be leveraged to automatically create the table within the Kusto database, as well as to define all other ETL steps within the dataflow in Fabric Real-Time Intelligence.<br>I have now created a Fabric Event Stream to capture and process the data from the Azure Event Hub within Fabric.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-4.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"390\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-4.png\" alt=\"\" class=\"wp-image-1510\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-4.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-4-300x124.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-4-768x319.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>Then I created a data flow:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-5.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"480\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-5.png\" alt=\"\" class=\"wp-image-1511\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-5.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-5-300x153.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-5-768x392.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>Then I connected this, for the data source, to the Azure Event Hub.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-6.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"294\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-6.png\" alt=\"\" class=\"wp-image-1512\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-6.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-6-300x94.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-6-768x240.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-7.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"894\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-7.png\" alt=\"\" class=\"wp-image-1513\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-7.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-7-300x285.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-7-768x730.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>If the script is then executed regularly, you can also see the incoming data.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-8.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-8.png\" alt=\"\" class=\"wp-image-1514\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-8.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-8-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-8-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>To be able to complete the next steps smoothly, it is recommended to publish this data flow. Otherwise, some functions, such as expanding hierarchies within JSON structures, will not appear fully. You will then have to switch back to edit mode.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-9.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-9.png\" alt=\"\" class=\"wp-image-1515\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-9.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-9-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-9-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>To extend the JSON, for example, it&#8217;s recommended to remove the arrow between the data and the target platform. To do this, we&#8217;ll add a task called Manage Fields, which can then be used to extend the structures.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-10.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-10.png\" alt=\"\" class=\"wp-image-1516\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-10.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-10-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-10-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-11.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-11.png\" alt=\"\" class=\"wp-image-1517\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-11.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-11-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-11-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-12.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-12.png\" alt=\"\" class=\"wp-image-1518\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-12.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-12-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-12-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>Now you can add a new field from the hierarchy structure. Finally, I added a data sink, in the form of an event house.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-13.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-13.png\" alt=\"\" class=\"wp-image-1519\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-13.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-13-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-13-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>Within this data sink I then created a KQL database.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-14.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-14.png\" alt=\"\" class=\"wp-image-1520\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-14.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-14-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-14-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>Back in the data flow, select the created data sink in the target. Since I want to store all fields in one table, I can simply create a target table.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-15.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-15.png\" alt=\"\" class=\"wp-image-1521\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-15.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-15-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-15-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>Now it&#8217;s time to save or publish this data flow. From then on, any transferred data is stored in the target table.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-16.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-16.png\" alt=\"\" class=\"wp-image-1522\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-16.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-16-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-16-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-17.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"684\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-17.png\" alt=\"\" class=\"wp-image-1523\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-17.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-17-300x218.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-17-768x559.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>In a meeting with Frank Geisler, I learned how to save the table data in OneLake. However, it&#8217;s important to note that since these are compressed Kusto files, the files won&#8217;t be visible for one or two days.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-18.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"463\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-18.png\" alt=\"\" class=\"wp-image-1524\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-18.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-18-300x148.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-18-768x378.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-19.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"462\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-19.png\" alt=\"\" class=\"wp-image-1525\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-19.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-19-300x147.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-19-768x377.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<p>To make the content visible, I used the free web tool:<br><a href=\"https:\/\/parquetreader.com\/\">https:\/\/parquetreader.com\/<\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-20.png\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"459\" src=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-20.png\" alt=\"\" class=\"wp-image-1526\" srcset=\"https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-20.png 940w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-20-300x146.png 300w, https:\/\/www.flip-design.de\/wp-content\/uploads\/2025\/09\/image-20-768x375.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>I extended the PowerShell script a bit so that it now submits a more complex JSON payload, and I also ensured that the script runs reliably every 10 seconds.https:\/\/www.flip-design.de\/?p=1495 while ($true) { &nbsp; &nbsp; [Reflection.Assembly]::LoadWithPartialName(&#8222;System.Web&#8220;)| out-null \u00a0 \u00a0 $URI=&#8220;&#8220; &nbsp; &hellip; <a href=\"https:\/\/www.flip-design.de\/?p=1508\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/www.flip-design.de\/index.php?rest_route=\/wp\/v2\/posts\/1508"}],"collection":[{"href":"https:\/\/www.flip-design.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.flip-design.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.flip-design.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.flip-design.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1508"}],"version-history":[{"count":1,"href":"https:\/\/www.flip-design.de\/index.php?rest_route=\/wp\/v2\/posts\/1508\/revisions"}],"predecessor-version":[{"id":1527,"href":"https:\/\/www.flip-design.de\/index.php?rest_route=\/wp\/v2\/posts\/1508\/revisions\/1527"}],"wp:attachment":[{"href":"https:\/\/www.flip-design.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1508"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flip-design.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1508"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flip-design.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1508"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}