Din dashboard-demo går kanon, tills någon frågar: ”Är det där live?” och du inser att kartan inte har uppdaterats på ett tag. Plötsligt är du tillbaka i manuella uppdateringar och halvlitar på vad API:t senast råkade returnera.
Den här typen av ISS RabbitMQ feed-automatisering träffar engineering leads som bygger interna dashboards först. Men produktteam som kör live-demos och driftfolk som håller status-skärmar korrekta känner av det också. Utfallet är enkelt: en pålitlig positionsström minut för minut som du kan koppla in i vad som helst.
Det här arbetsflödet hämtar ISS-positionen varje minut, städar upp den och publicerar den till ett RabbitMQ-ämne. Du får se hur delarna hänger ihop och vad du behöver för att köra det utan att behöva passa det.
Problemet: ”Live”-platsflöden är lätta att få att skapa fel
Att hämta koordinater från ett publikt API låter enkelt, ända tills du behöver att det ska rulla hela dagen utan glapp. Manuella uppdateringar blir en vana, och sedan en risk. En missad uppdatering och din ”realtids”-dashboard blir i tysthet en ”ibland”-dashboard. Än värre: olika konsumenter (en kartvy, en logger, en notifieringsbot) börjar anropa samma API var för sig, vilket skapar inkonsekventa payloads, duplicerat arbete och fler chanser att ett tyst fel smiter igenom.
Det summerar snabbt. Här är var det oftast fallerar i verkligheten.
- Någon måste komma ihåg att uppdatera, starta om eller köra om skriptet när det hänger sig.
- Olika verktyg tar in olika fältnamn, så du slutar med att skriva små adaptrar överallt.
- API-svar varierar, och utan en ”felfri” mappad payload blir nedströmskonsumenter sköra.
- Om flera dashboards träffar API:t direkt skapar du onödig last och felsökningen blir rörig.
Så här fungerar automatiseringen
Hela n8n-arbetsflödet, från trigger till slutligt utdata:
n8n Workflow Template: ISS position API till RabbitMQ, liveflöde
flowchart LR
subgraph sg0["Flow 1"]
direction LR
n0["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/rabbitmq.svg' width='40' height='40' /></div><br/>RabbitMQ"]
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set", pos: "b", h: 48 }
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>HTTP Request"]
n3@{ icon: "mdi:cog", form: "rounded", label: "Cron", pos: "b", h: 48 }
n1 --> n0
n3 --> n2
n2 --> n1
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n2 api
classDef customIcon fill:none,stroke:none
class n0,n2 customIcon
Lösningen: en felfri ISS-positionsström som pushas till RabbitMQ
Det här arbetsflödet körs på ett enkelt schema: varje minut triggar n8n en HTTP-förfrågan till ISS Position API och hämtar de senaste koordinaterna. I stället för att skicka runt råsvaret (som ofta innehåller extra fält, nästlade strukturer eller inkonsekvent namngivning) mappar det direkt de viktiga delarna till ett prydligt, förutsägbart meddelande. Sedan publicerar det meddelandet till ett RabbitMQ-ämne, så att vad som helst i din stack kan prenumerera och konsumera uppdateringar utan att anropa det publika API:t direkt. Du får en pålitlig källa till sanningen, ett meddelandeformat och ett ställe att övervaka när något går fel. Ärligt talat är det skillnaden mellan en kul prototyp och något du kan lita på under ett kundsamtal.
Arbetsflödet startar med en schemalagd minut-trigger. Därefter hämtar anropet till ISS Position API den senaste platsen, och fälten mappas till en felfri payload. Till sist publicerar arbetsflödet uppdateringen till ditt RabbitMQ-ämne för dashboards, demos, botar eller loggningspipelines.
Vad du får: automatisering vs. resultat
| Vad det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du har tre konsumenter: en kartskärm i lobbyn, en webb-demo-sida och en enkel logger. Utan en kö träffar varje enhet ISS-API:t en gång per minut, vilket innebär cirka 4 000 anrop per dag och tre olika ställen att felsöka när ett fält ändras. Med det här arbetsflödet gör du ett API-anrop per minut (cirka 1 400 per dag), publicerar ett meddelande och alla tre konsumenter prenumererar på RabbitMQ-ämnet. Sättiden är i praktiken schemat plus inloggningsuppgifter, sedan rullar det. Tyst.
Det här behöver du
- n8n-instans (testa n8n Cloud gratis)
- Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
- RabbitMQ för att publicera meddelanden till ett ämne.
- ISS Position API som datakälla för koordinater.
- RabbitMQ-inloggningsuppgifter (hämtas från din broker/adminpanel).
Kunskapsnivå: Nybörjare. Du klistrar in inloggningsuppgifter, bekräftar ämnet och testar en körning.
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
En minutbaserad trigger kör igång. Scheduled Minute Trigger kör automatiskt var 60:e sekund, så du är inte beroende av att någon öppnar en flik eller startar ett skript.
Arbetsflödet hämtar de senaste ISS-koordinaterna. n8n skickar en HTTP-förfrågan via noden ISS Position API Call och får tillbaka payloaden för aktuell position.
Svaret rensas och mappas. Map ISS Fields tar det råa API-svaret och gör om det till en förutsägbar meddelandestruktur (delen som dina nedströmsverktyg kommer att älska).
Uppdateringen publiceras till ditt RabbitMQ-ämne. Publish to RabbitMQ Topic skickar slutmeddelandet till RabbitMQ, så att din dashboard, logger eller demoapp kan prenumerera och hålla sig uppdaterad.
Du kan enkelt justera schemat till var 30:e sekund eller var 5:e minut beroende på behov. Se hela implementationsguiden nedan för alternativ för anpassning.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera Scheduled Minute Trigger
Konfigurera schemat så att arbetsflödet körs varje minut och startar hämtningen av ISS-positionen.
- Lägg till eller öppna Scheduled Minute Trigger.
- Ställ in Trigger Times på
everyMinute.
Steg 2: Anslut till API för ISS-position
Konfigurera HTTP-anropet för att hämta de senaste ISS-koordinaterna och tidsstämpeln.
- Lägg till eller öppna ISS Position API Call och anslut den till Scheduled Minute Trigger.
- Ställ in URL på
https://api.wheretheiss.at/v1/satellites/25544/positions. - Under Query Parameters, lägg till timestamps med värdet
{{Date.now();}}.
Steg 3: Konfigurera Map ISS Fields
Normalisera API-svaret till tydliga fält för vidare publicering.
- Lägg till eller öppna Map ISS Fields och anslut den till ISS Position API Call.
- Aktivera Keep Only Set genom att sätta den till
true. - Lägg till nummerfältet Latitude med värdet
{{ $node["ISS Position API Call"].json["0"]["latitude"] }}. - Lägg till nummerfältet Longitude med värdet
{{ $node["ISS Position API Call"].json["0"]["longitude"] }}. - Lägg till nummerfältet Timestamp med värdet
{{ $node["ISS Position API Call"].json["0"]["timestamp"] }}. - Lägg till strängfältet Name med värdet
{{ $node["ISS Position API Call"].json["0"]["name"] }}.
Steg 4: Konfigurera Publish to RabbitMQ Topic
Publicera den mappade ISS-datan till er RabbitMQ-kö för konsumenter nedströms.
- Lägg till eller öppna Publish to RabbitMQ Topic och anslut den till Map ISS Fields.
- Ställ in Queue på
iss-position. - Credential Required: Anslut era rabbitmq-uppgifter.
iss-position inte finns på er server kommer publiceringen att misslyckas. Skapa kön eller aktivera automatisk skapande i era broker-inställningar.Steg 5: Testa och aktivera ert arbetsflöde
Verifiera hela flödet från schema till API-anrop till meddelandepublicering och aktivera sedan för produktion.
- Klicka på Execute Workflow för att köra ett manuellt test.
- Bekräfta att ISS Position API Call returnerar ett giltigt svar och att Map ISS Fields matar ut Latitude, Longitude, Timestamp och Name.
- Verifiera att ett meddelande kommer in i RabbitMQ på kön
iss-position. - Växla arbetsflödet till Active för att aktivera publicering minut för minut.
Vanliga fallgropar
- RabbitMQ-inloggningsuppgifter kan gå ut eller kräva specifika behörigheter. Om något slutar fungera: kontrollera först RabbitMQ-användarens behörigheter och vhost-åtkomst i brokerns adminpanel.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in din tonalitet tidigt, annars kommer du att redigera utdata i all evighet.
Vanliga frågor
Cirka 20 minuter om RabbitMQ redan kör.
Nej. Du kopplar upp RabbitMQ och testar sedan HTTP-förfrågan och publiceringssteget.
Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer startar på 20 USD/månad för högre volym. Du behöver också räkna med kostnader för RabbitMQ-hosting (ofta 0 kr om det är internt).
Två alternativ: n8n Cloud (hanterat, enklast att sätta upp) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger obegränsat antal körningar men kräver grundläggande serverdrift.
Ja, och det är den vanligaste justeringen. Ändra Scheduled Minute Trigger så att den kör var 30:e sekund, var 5:e minut eller bara under kontorstid. Du kan också justera steget Map ISS Fields för att ta med extra metadata (som en tidsstämpel) om dina konsumenter behöver det.
Oftast handlar det om inloggningsuppgifter eller behörigheter. Kontrollera användarnamn/lösenord, vhost och att användaren får publicera till den exchange/det ämne du valt. Om du nyligen roterat hemligheter: uppdatera RabbitMQ-inloggningsuppgifterna i n8n och kör en manuell körning igen för att bekräfta att publiceringen fungerar.
Med ett meddelande per minut publicerar den cirka 1 400 meddelanden per dag, vilket är väldigt lite för RabbitMQ. På n8n Cloud Starter kan du köra upp till cirka 2 500 körningar per månad; Pro klarar mer. Om du self-hostar finns ingen körningsgräns (det beror på din server), och det här arbetsflödet är tillräckligt lättviktigt för att köra kontinuerligt.
Ofta, ja, eftersom detta är ett mönster där du ”pollar varje minut och publicerar till en broker”, och de verktygen blir dyra eller klumpiga vid högfrekventa scheman. n8n ger dig mer kontroll över schemaläggning, payload-format och retries. Self-hosting är också en stor grej om du vill att automatiseringen ska gå dygnet runt utan att räkna tasks. Zapier eller Make kan fortfarande fungera om du bara behöver sporadiska uppdateringar, till exempel varje timme, och du vill ha det enklaste möjliga gränssnittet. Om du är osäker, prata med en automationsexpert och mappa det mot din exakta volym.
När det här väl rullar förblir din ”live”-ISS-karta live utan att någon behöver röra den. Arbetsflödet sköter det repetitiva jobbet med att hämta och publicera, så att teamet kan fokusera på det som flödet möjliggör.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.