Du uppdaterar samma skolsidor. Igen. Och igen. Sedan undrar du om du missade den där lilla uppdateringen som faktiskt spelade roll. Det är utmattande, och det är exakt den typen av meningslöst rutinjobb som automatisering med Gemini e-postaviseringar är till för att eliminera.
Föräldrar känner av det mest under antagningssäsongen. En skoladministratör som hanterar frågor dras in i det också. Och om du är konsult som hjälper familjer att shortlist:a alternativ kan det ständiga kontrollandet i tysthet sluka ett par timmar i veckan.
Det här arbetsflödet övervakar din shortlist med skolornas antagningssidor dagligen, använder Gemini för att avgöra om antagningen har öppnat och mejlar dig bara när det är dags att agera. Du får se hur det fungerar, vad du behöver och hur du anpassar det till dina egna skolor och klasser.
Så fungerar den här automatiseringen
Se hur detta löser problemet:
n8n Workflow Template: Gemini till e-post: antagningslarm som fastnar
flowchart LR
subgraph sg0["Are admissions Open Flow"]
direction LR
n0@{ icon: "mdi:swap-vertical", form: "rounded", label: "Split In Batches", pos: "b", h: 48 }
n1["<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/code.svg' width='40' height='40' /></div><br/>Clean HTML"]
n2@{ icon: "mdi:swap-vertical", form: "rounded", label: "Continue Loop", pos: "b", h: 48 }
n3@{ icon: "mdi:message-outline", form: "rounded", label: "Send email", pos: "b", h: 48 }
n4@{ icon: "mdi:swap-horizontal", form: "rounded", label: "If", pos: "b", h: 48 }
n5["<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/>Get Website Content"]
n6["<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/merge.svg' width='40' height='40' /></div><br/>Append school Name"]
n7@{ icon: "mdi:robot", form: "rounded", label: "Are admissions Open", pos: "b", h: 48 }
n8["<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/code.svg' width='40' height='40' /></div><br/>Parse LLM response"]
n9["<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/code.svg' width='40' height='40' /></div><br/>Shortlisted Schools"]
n10@{ icon: "mdi:cog", form: "rounded", label: "Daily Trigger", pos: "b", h: 48 }
n4 --> n3
n4 --> n2
n1 --> n7
n3 --> n2
n2 --> n0
n10 --> n9
n0 --> n5
n0 --> n6
n6 --> n1
n8 --> n4
n7 --> n8
n5 --> n6
n9 --> n0
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 n7 ai
class n4 decision
class n5 api
class n1,n8,n9 code
classDef customIcon fill:none,stroke:none
class n1,n5,n6,n8,n9 customIcon
Utmaningen: antagningsuppdateringar är lätta att missa
Uppdateringar kring skolantagning kommer sällan med en tydlig “Antagningen är öppen”-banner. Ibland är det en PDF-länk som gömmer sig i en nyhetssektion. Ibland är det en enda rad som lagts till på en sida du kollade igår. Och eftersom varje skolwebbplats är olika kan du inte bara kontrollera ett ställe och vara klar. Du slutar med att öppna 10 flikar, skanna efter nyckelord, tvivla på dig själv och sedan göra om allt nästa dag. Den mentala belastningen är påtaglig, och kostnaden märks som mest när det är som sämst tajmat: när tidslinjerna är tighta och du behöver agera snabbt.
Det växer snabbt. Här är var processen oftast fallerar.
- Du slösar cirka 10 minuter per skola bara på att hitta rätt sida och läsa igenom den på nytt.
- Små ändringar i formuleringar missas, särskilt när en webbplats publicerar uppdateringar som PDF:er eller anslag.
- Ditt “spårningssystem” blir en rörig mix av bokmärken, WhatsApp-meddelanden och halvt ihågkomna anteckningar.
- Även när du fångar en uppdatering måste du fortfarande informera alla manuellt, vilket skapar fördröjningar och misstag.
Lösningen: dagliga webbkontroller som bara mejlar när det är öppet
Det här arbetsflödet körs dagligen och kontrollerar varje antagningssida i din shortlist. Det hämtar webbinnehållet för en skola, strukturerar HTML:en så den blir läsbar och skickar sedan den strukturerade texten till en Gemini-driven prompt: “Är antagningen öppen?”. Geminis uppgift är enkel: avgöra om antagning till förskoleklass (eller vilken klass/årskurs du anger) har annonserats. Om svaret är ja skickar n8n en e-postavisering till adressen du valt. Om inte går den tyst vidare till nästa skola och fortsätter loopa igenom listan. Inga dashboards att sitta och vakta. Inga ritualer med att uppdatera flikar.
Arbetsflödet startar med en Cron-trigger som körs dagligen. Sedan itererar den igenom din skollista i batchar, hämtar varje sida via HTTP Request och slår ihop skolans etikett så att aviseringen blir tydlig. Till sist avgör en IF-kontroll om mejlet ska skickas eller om den ska fortsätta till nästa objekt.
Vad som förändras: före vs. efter
| Det här elimineras | Effekten du kommer att se |
|---|---|
|
|
Effekt i verkligheten
Säg att du följer 12 skolor. Manuell kontroll kan ta cirka 8 minuter per webbplats mellan att ladda sidor, leta upp rätt sektion och läsa noggrant. Det är ungefär 90 minuter varje dag under högsäsong. Med det här arbetsflödet lägger du kanske 5 minuter en gång på att uppdatera shortlist:en, sedan sker den dagliga körningen i bakgrunden och du läser bara mejl när något förändras. I praktiken är det ungefär en timme tillbaka per dag, plus färre “Missade vi det?”-ögonblick.
Krav
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
- Google Gemini API för tolkning av antagningstext.
- E-post (SMTP) för att skicka antagningsaviseringar.
- Gemini API-nyckel (hämta den från Google AI Studio / Gemini API keys).
Kunskapsnivå: Nybörjare. Du klistrar in en API-nyckel, lägger till SMTP-uppgifter och redigerar shortlist:en med skolornas URL:er.
Behöver du hjälp att implementera detta? Prata med en automatiseringsexpert (gratis 15-minuters konsultation).
Arbetsflödet i korthet
Daglig schematrigger. En Cron-nod kör arbetsflödet en gång per dag (du kan ändra till två gånger per dag under den mest intensiva antagningsveckan).
Skollistan laddas och itereras. Arbetsflödet hämtar din shortlist (skolnamn plus antagnings-URL) och bearbetar skolor i batchar så att en långsam webbplats inte sänker hela körningen.
Webbinnehåll hämtas och struktureras. n8n använder en HTTP Request för att hämta antagningssidan, och sedan tar ett saneringssteg bort brusig HTML så att Gemini ser den viktiga texten, inte navigationsmenyer.
Gemini kontrollerar antagningsstatus, och e-post skickas vid behov. Gemini-noden utvärderar den strukturerade texten mot din prompt, ett litet avkodningssteg normaliserar svaret och en IF-nod avgör om “Dispatch Email Alert” ska köras.
Du kan enkelt ändra prompten för klass/årskurs i antagningen för att täcka Bal-vatika, årskurs 1 eller en annan termin utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementation
Steg 1: Konfigurera Cron-triggern
Det här arbetsflödet körs enligt ett dagligt schema och startar övervakningssekvensen för antagning.
- Lägg till och öppna Daily Schedule Trigger.
- Ställ in Trigger Times på
customoch Cron Expression på0 0 * * *för en daglig körning vid midnatt. - Anslut Daily Schedule Trigger till School List Source.
Steg 2: Anslut källan för skollistan
Definiera skolorna och URL:erna som ska övervakas innan batchningen börjar.
- Öppna School List Source och ställ in JavaScript Code till:
return [
{ school: "Sanskriti School", url: "https://www.sanskritischool.edu.in/"},
{ school: "DPS Mathura Road", url: "https://www.dpsmathuraroad.org/admission.php" },
{ school: "Sardar Patel Vidyalaya", url: "https://spvdelhi.org/" }
];
- Anslut School List Source till Batch Iterator.
- Ställ in Batch Iterator Batch Size till
1för att bearbeta en skola i taget.
Batch Iterator skickar ut till både Retrieve Web Content och Merge School Label parallellt.
Steg 3: Hämta och rensa webbinnehåll
Hämta varje skolas webbplats och sanera HTML:en innan den skickas vidare till LLM.
- Öppna Retrieve Web Content och ställ in URL till
={{$json["url"]}}. - Öppna Merge School Label och ställ in Mode till
combineoch Combine By tillcombineByPosition. - Öppna HTML Sanitizer och ställ in Mode till
runOnceForEachItem. - Klistra in det tillhandahållna saneringsskriptet i JavaScript Code för att extrahera
cleaned_text,schoolochurl. - Anslut Merge School Label → HTML Sanitizer → Admission Status LLM.
Steg 4: Sätt upp LLM-analys
Analysera rensat sidinnehåll med Gemini och tolka JSON-utdata.
- Öppna Admission Status LLM och välj Model
models/gemini-2.5-flash. - Ställ in det enda meddelandets Content till prompten som innehåller
{{ $json.school }}och{{ $json["cleaned_text"] }}. - Credential Required: Anslut era googlePalmApi-inloggningsuppgifter.
- Öppna Decode LLM Output och behåll Mode som
runOnceForEachItemmed den tillhandahållna JSON-parsekoden. - Anslut Admission Status LLM → Decode LLM Output → Admission Open Check.
⚠️ Vanlig fallgrop: LLM-prompten ber om enbart JSON. Om ni ändrar prompten, säkerställ att Decode LLM Output fortfarande kan tolka svaret.
Steg 5: Konfigurera e-postaviseringar och fortsatt batch-körning
Skicka aviseringar när antagningen är öppen och fortsätt iterera genom listan.
- Öppna Admission Open Check och ställ in villkoret till equals med Left Value
={{ $json.admissions_open }}och Right Valueyes. - Öppna Dispatch Email Alert och ställ in To Email och From Email till er adress.
- Ställ in Subject till
=“Admissions Open at {{ $json.school }}. - Ställ in HTML till
=This is email notification email to inform you that school admission has open for {{ $json.school }} class {{ $json.classes }} Here is my reasoning for the above conclusion: {{ $json.reason }}. - Credential Required: Anslut era smtp-inloggningsuppgifter.
- Anslut Admission Open Check → Dispatch Email Alert → Batch Continuation → Batch Iterator för att loopa igenom alla skolor.
Steg 6: Testa och aktivera ert arbetsflöde
Verifiera flödet från början till slut och aktivera det sedan för dagliga körningar.
- Klicka på Execute Workflow för att köra ett manuellt test.
- Bekräfta att Retrieve Web Content returnerar HTML, att HTML Sanitizer ger ut
cleaned_textoch att Admission Status LLM returnerar JSON. - Verifiera att Admission Open Check routar “yes”-resultat till Dispatch Email Alert och att e-postmeddelanden kommer fram korrekt.
- När ni är nöjda, växla arbetsflödet till Active så att Daily Schedule Trigger kör det dagligen.
Saker att se upp med
- Google Gemini-inloggningar kan löpa ut eller sakna åtkomst till rätt API. Om något slutar fungera, kontrollera Gemini API-nyckeln och projektbehörigheterna i din Google AI-konsol först.
- Om du använder Wait-noder eller extern rendering varierar bearbetningstiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in din tonalitet tidigt, annars kommer du att redigera utdata i all oändlighet.
Vanliga frågor
Cirka 30 minuter om du redan har dina skol-URL:er och inloggningsuppgifter redo.
Ja. Du skriver ingen kod, men du kommer att kopiera nycklar, koppla e-post och klistra in URL:er noggrant.
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 in användning av Gemini API, som ofta är låg vid dagliga kontroller men beror på hur många skolor du övervakar.
Två alternativ: n8n Cloud (hanterad, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och klarar n8n bra. Self-hosting ger dig obegränsat antal körningar men kräver grundläggande serverhantering.
Du justerar främst prompten i Gemini-noden “Admission Status LLM” så att den matchar din klass/årskurs (Bal-vatika, årskurs 1 osv.) och det läsår du bryr dig om. Om du vill följa fler detaljer (datum, formulär, behörighet) fångar du dessa fält i steget “Decode LLM Output” och inkluderar dem i mejlets brödtext. Många byter också “School List Source” till att läsa från Google Sheets eller Excel 365 så att shortlist:en blir enkel att underhålla.
Oftast är det en ogiltig eller utgången API-nyckel, så skapa en ny och uppdatera autentiseringsuppgifterna som Gemini-noden använder. Ibland handlar det om behörigheter på kontonivå (fel Google-projekt) eller att modellen inte är tillgänglig i din region. Om HTTP Request fungerar men Gemini returnerar fel beror det nästan alltid på API/autentiseringsdelen, inte på scraping-delen.
I self-hosted n8n finns inget tak för antal körningar, så kapaciteten beror främst på din server och hur många sidor du kontrollerar dagligen. I n8n Cloud beror din månatliga körningsgräns på plan. Praktiskt sett fungerar de flesta mindre shortlists (10–50 skolor) bra eftersom arbetsflödet bearbetar webbplatser i batchar och bara skickar mejl när IF-villkoret uppfylls.
Ofta, ja. Att skrapa och strukturera HTML, iterera igenom en lista i batchar och sedan köra en AI-baserad klassificeringskontroll är områden där n8n känns mer flexibelt än de flesta no-code-verktyg. Du kan också köra self-hosted, vilket är viktigt om du vill att detta ska gå dagligen i månader utan att oroa dig för att slå i task-tak. Zapier eller Make kan fortfarande fungera om du håller logiken enkel och webbplatsinnehållet är konsekvent, men så fort du behöver villkorsstyrda grenar, retries eller textstädning blir det pilligt. Vill du ha en snabb rekommendation för just din shortlist, prata med en automatiseringsexpert.
När detta väl körs slutar du hänga över antagningssidor och börjar reagera bara på verkliga signaler. Sätt upp det, låt det kontrollera dagligen och spara din uppmärksamhet till besluten som faktiskt spelar roll.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.