Je tweede stroom creëren
Overzicht
Deze tutorial bouwt voort op de eerste tutorial om een stroom te maken die begint met het binnenhalen van gegevens van externe bronnen om lokaal iets nuttigs te doen.
De stroom zal:
- Haal regelmatig informatie op van een website
- Zet die informatie om in een nuttig formulier
- Geef het resultaat weer in de zijbalk Debug
1. Voeg een injectieknooppunt toe
In de vorige tutorial werd het Inject-knooppunt gebruikt om de stroom te activeren wanneer op de knop werd geklikt. Voor deze zelfstudie wordt het Inject-knooppunt geconfigureerd om de stroom met een regelmatig interval te activeren.
Sleep een injectieknooppunt vanuit het palet naar de werkruimte.
Dubbelklik op het knooppunt om het bewerkingsvenster te openen. Stel het herhalingsinterval in op every 5 minutes
.
Klik op Gereed om het dialoogvenster te sluiten.
2. Voeg een HTTP Request-knooppunt toe
Het HTTP Request-knooppunt kan worden gebruikt om een webpagina op te halen wanneer deze wordt geactiveerd.
Nadat u er een aan de werkruimte hebt toegevoegd, bewerkt u deze om de URL
eigenschap in te stellen op:
https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/significant_month.csv
Klik vervolgens op Gereed om het dialoogvenster te sluiten.
Deze URL is een feed van significante aardbevingen in de afgelopen maand vanaf de US Geological Survey-website. De site biedt een aantal andere opties waarmee je misschien wilt spelen na het voltooien van deze tutorial.
3. Voeg een CSV-knooppunt toe
Voeg een CSV-knooppunt toe en bewerk de eigenschappen ervan. Optie inschakelen voor ‘Eerste rij bevat kolomnamen’.
Klik vervolgens op Gereed om te sluiten.
4. Voeg een Debug-knooppunt toe
Voeg een Debug-knooppunt toe aan de uitvoer.
5. Sluit ze allemaal aan elkaar
Voeg draden toe die verbinden:
- De Inject-knooppuntuitvoer naar de HTTP Request-knooppuntinvoer.
- De HTTP Request-knooppuntuitvoer naar de CSV-knooppuntinvoer.
- De CSV-knooppuntuitvoer naar de Debug-knooppuntinvoer.
7. Voeg een Switch-knooppunt toe
Voeg een Switch-knooppunt toe aan de werkruimte. Bewerk de eigenschappen en configureer het om de eigenschap te controleren msg.payload.mag
met een test of >=
wijzig het om te testen op a number
en de waarde 7
. Klik op Gereed om te sluiten.
Voeg een tweede draad toe vanaf het CSV-knooppunt naar dit Switch-knooppunt.
8. Voeg een wijzigingsknooppunt toe
Voeg een wijzigingsknooppunt toe, bedraad naar de uitgang van het schakelknooppunt. Configureer het om in te stellen msg.payload
op de tekenreeks PANIC!
.
9. Voeg een Debug-knooppunt toe
Sluit een nieuw Debug-knooppunt aan op de uitvoer van het Change-knooppunt
10. Implementeren
Implementeer de stroom naar de runtime door op de knop Implementeren te klikken.
Klik met het tabblad Debug-zijbalk open op de knop Injecteren. U zou een lijst met vermeldingen moeten zien met een inhoud die er als volgt uitziet:
msg.payload : Object
{"time":"2017-11-19T15:09:03.120Z","latitude":-21.5167,"longitude":168.5426,"depth":14.19,"mag":6.6,"magType":"mww","gap":21,"dmin":0.478,"rms":0.86,"net":"us","id":"us2000brgk","updated":"2017-11-19T17:10:58.449Z","place":"68km E of Tadine, New Caledonia","type":"earthquake","horizontalError":6.2,"depthError":2.8,"magError":0.037,"magNst":72,"status":"reviewed","locationSource":"us","magSource":"us"}
U kunt nu op de kleine pijl links van elke eigenschap klikken om ze uit te vouwen en de inhoud te bekijken
Als er aardbevingen waren met een magnitude groter dan 7, ziet u ook foutopsporingsberichten zoals:
msg.payload : string(6)
"PANIC!"
U kunt de schakelwaarde wijzigen 7
in een kleinere om uw programma te testen. Vergeet niet na de wijziging op implementeren te klikken. ***
Overzicht
Deze stroom wordt automatisch elke 5 minuten geactiveerd en haalt gegevens op uit een url. Het parseert de gegevens en wordt weergegeven in de zijbalk Debug. Het controleert ook de magnitudewaarde in de gegevens en vertakt de stroom voor berichten met een magnitude groter dan of gelijk aan 7. De payloads van dergelijke berichten worden gewijzigd en weergegeven in de Debug-zijbalk.
Bron
De stroom die in deze zelfstudie is gemaakt, wordt weergegeven door de volgende json. Om het in de editor te importeren, kopieert u het naar uw klembord en plakt u het in het dialoogvenster Importeren.
[{"id":"e36406f2.8ef798","type":"inject","z":"f03b57d5.e525f8","name":"","topic":"","payload":"","payloadType":"str","repeat":"300","crontab":"","once":false,"x":130,"y":900,"wires":[["c3c50023.3bbed"]]},{"id":"c3c50023.3bbed","type":"http request","z":"f03b57d5.e525f8","name":"Recent Quakes","method":"GET","url":"https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/significant_month.csv","tls":"","x":300,"y":900,"wires":[["8afc6cac.e0812"]]},{"id":"8afc6cac.e0812","type":"csv","z":"f03b57d5.e525f8","name":"","sep":",","hdrin":true,"hdrout":"","multi":"one","ret":"\\n","temp":"","x":470,"y":900,"wires":[["44779781.4190f8","6f0eb546.9e208c"]]},{"id":"44779781.4190f8","type":"debug","z":"f03b57d5.e525f8","name":"","active":true,"complete":false,"x":630,"y":900,"wires":[]},{"id":"6f0eb546.9e208c","type":"switch","z":"f03b57d5.e525f8","name":"","property":"payload.mag","propertyType":"msg","rules":[{"t":"gte","v":"7","vt":"num"}],"checkall":"true","outputs":1,"x":510,"y":960,"wires":[["d78d4aa8.8c8208"]]},{"id":"d78d4aa8.8c8208","type":"change","z":"f03b57d5.e525f8","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"PANIC!","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":650,"y":1020,"wires":[["72fddece.fac0d"]]},{"id":"72fddece.fac0d","type":"debug","z":"f03b57d5.e525f8","name":"","active":true,"complete":false,"x":750,"y":960,"wires":[]}]