Behöver ert företag hjälp med att implementera AI? Kontakta oss och få prisoffert här →
AI Skolan
januari 22, 2026

Google Kalender + Slack: smarta planer i glapp

Rickard Andersson Partner, Nodenordic.se

Du tittar i kalendern, ser en lucka på 45 minuter och slösar sedan bort större delen av den på att bestämma vad du ska göra. Öppnar Kartor. Kollar vädret. Söker på ”kaffe nära mig”. Ångrar dig. Plötsligt stressar du ändå till nästa möte.

Den här kalender-Slack-automationen slår hårdast mot konsulter och operativa roller med kundkontakt, men säljare som springer mellan samtal och upptagna grundare känner av den också. Resultatet är enkelt: du får tre realistiska, väderanpassade alternativ skickade till Slack medan du fortfarande hinner agera.

Du får se hur flödet upptäcker mötesluckor, drar av restid, kontrollerar vädret vid din nästa destination och använder AI för att föreslå den bästa ”gör det här nu”-planen. Sedan kan du justera det så att det passar dina rutiner.

Så fungerar automatiseringen

Här är hela arbetsflödet du kommer att sätta upp:

n8n Workflow Template: Google Kalender + Slack: smarta planer i glapp

Varför det här spelar roll: bortslösad ”mellantid”

Luckor i kalendern ser ut som fri tid, men det är de inte. Du måste räkna in resor, väder och att det ”perfekta” stället kanske innebär en 20-minuters omväg med kö ut på gatan. Och eftersom du oftast bestämmer på mobilen hoppar du mellan appar: Kalender, Kartor, väder, recensioner, kanske en anteckningsapp med ”favoritställen”. Det är inte svårt. Det är bara en strid ström av små beslut, och det är ärligt talat det som tar mest energi. När du väl har bestämt dig är pausen i princip slut.

Friktionen byggs på. Så här faller det i verkligheten.

  • Du vet inte om den där luckan på 40 minuter är på riktigt förrän du uppskattar restiden till nästa bokning.
  • Vädret ändrar dina alternativ, men att kolla det är ännu en flik och ännu ett beslut.
  • Du faller tillbaka på samma kedja i närheten eftersom sökandet tar för lång tid.
  • Även när du väljer ett ställe är du inte säker på att det passar tidsmässigt, så du fortsätter scrolla ”för säkerhets skull”.

Det du bygger: förslag på kalenderluckor skickade till Slack

Det här flödet kollar diskret din Google Kalender enligt ett schema och letar efter meningsfulla luckor mellan dina kommande möten. När det upptäcker en paus som är värd att utnyttja (30 minuter eller mer som standard) antar det inte bara att du är ledig. Det hämtar dina preferenser från Notion, beräknar restiden till din nästa destination med Google Maps och drar sedan av restiden från ditt tillgängliga fönster. Därefter kontrollerar det vädret vid din destination med OpenWeatherMap, för ”en snabb promenad och frisk luft” är toppen tills det regnar på tvären. Till sist använder AI all kontext för att skapa tre praktiska rekommendationer och skickar dem till Slack så att du kan välja ett alternativ och gå vidare.

Flödet startar på en timer och läser sedan din kalender och dina preferenser. Det väljer spår för inomhus- eller utomhusidéer baserat på vädret, hämtar alternativ i närheten via Places-sökning och använder en OpenAI-modell för att skapa ett kort, trevligt Slack-meddelande som du faktiskt läser.

Det du bygger

Förväntade resultat

Säg att du har två luckor per dag, och att du varje gång normalt lägger cirka 10 minuter på att kolla Kalender, Kartor, väder och recensioner. Det blir ungefär 20 minuter per dag av ”planera pausen”, plus några minuter till av att tveka. Med det här flödet körs triggern automatiskt, och du lägger bara tiden det tar att välja ett av tre Slack-förslag, oftast under en minut. På en vecka får de flesta tillbaka ungefär 1–2 timmar användbar tid, inte bara ”hittad tid”.

Innan du börjar

  • n8n-instans (prova n8n Cloud gratis)
  • Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
  • Google Kalender för att läsa dina kommande händelser.
  • Slack för att ta emot rekommendationerna där du jobbar.
  • Notion för en enkel preferensdatabas.
  • OpenWeatherMap API-nyckel (hämta den i din OpenWeatherMap-dashboard).
  • Google Maps + Places API-nyckel (hämta den i Google Cloud Console med Maps/Places aktiverat).
  • OpenAI API-nyckel (hämta den från sidan för API-nycklar på OpenAI-plattformen).

Svårighetsgrad: Nybörjare. Du kopplar konton, klistrar in några API-nycklar och justerar ett par inställningar som minsta lucktid.

Vill du att någon bygger detta åt dig? Prata med en automationsexpert (gratis 15-minuters konsultation).

Steg för steg

En schemalagd kontroll körs i bakgrunden. Var 30:e minut startar n8n flödet och laddar din konfiguration (som din aktuella plats och minsta lucktid du bryr dig om).

Dina preferenser och nästa kalenderhändelse hämtas. Flödet läser först dina Notion-preferenser och hämtar sedan din kommande Google Kalender-händelse så att det vet vart du är på väg och när.

Fri tid beräknas så som du faktiskt upplever den. Det begär restid till nästa destination (via Maps), drar av den från tiden fram till mötet och kontrollerar om det återstående fönstret klarar din tröskel (30+ minuter som standard).

Vädret avgör spåret ”inomhus vs utomhus”. OpenWeatherMap ger aktuella förhållanden, och sedan söker flödet efter inomhusvänliga ställen eller utomhusalternativ i närheten via Places-anrop.

AI skriver rekommendationen och Slack levererar den. OpenAI omvandlar alternativen till ett kort meddelande med de tre bästa valen, och Slack postar det i din valda kanal så att du snabbt kan välja och gå vidare.

Du kan enkelt ändra minsta lucktid och sökradie så att det passar ditt schema och din stad. Se hela implementationsguiden nedan för alternativ för anpassning.

Steg-för-steg-guide för implementering

Steg 1: Konfigurera den schemalagda triggern

Ställ in schemat för arbetsflödet så att rekommendationer genereras automatiskt.

  1. Välj Scheduled Automation Trigger och konfigurera intervallregeln så att den körs var 30 minut.
  2. Verifiera att Scheduled Automation Trigger är ansluten till Assign Settings Values för att starta dataflödet.

Steg 2: Anslut Notion- och kalenderindata

Hämta användarpreferenser och nästa kalenderhändelse som definierar tidsfönstret för mellanrummet.

  1. Öppna Assign Settings Values och sätt currentLocation till Tokyo Station.
  2. I Assign Settings Values fyller ni i googleMapsApiKey, googlePlacesApiKey, openWeatherApiKey och notionDatabaseId med era faktiska värden.
  3. I Retrieve Notion Preferences sätter ni Database ID till {{ $('Assign Settings Values').first().json.notionDatabaseId }}.
  4. Inloggningsuppgifter krävs: Anslut era Notion-inloggningsuppgifter i Retrieve Notion Preferences.
  5. I Fetch Upcoming Calendar Event sätter ni Time Min till {{ new Date().toISOString() }} och Limit till 1.
  6. Inloggningsuppgifter krävs: Anslut era Google Calendar-inloggningsuppgifter i Fetch Upcoming Calendar Event.

⚠️ Vanlig fallgrop: Om ni lämnar googleMapsApiKey, googlePlacesApiKey eller notionDatabaseId tomt i Assign Settings Values kommer efterföljande API-anrop att misslyckas.

Steg 3: Konfigurera kontext för väder och restid

Använd händelsens plats för att hämta väderdata och restid för att beräkna det lediga tidsmellanrummet.

  1. I Fetch Destination Weather sätter ni City Name till {{ $('Fetch Upcoming Calendar Event').first().json.location }}.
  2. Inloggningsuppgifter krävs: Anslut era OpenWeatherMap-inloggningsuppgifter i Fetch Destination Weather.
  3. I Request Travel Time sätter ni URL till https://maps.googleapis.com/maps/api/directions/json?origin={{ encodeURIComponent($('Assign Settings Values').first().json.currentLocation) }}&destination={{ encodeURIComponent($('Fetch Upcoming Calendar Event').first().json.location) }}&mode=transit&key={{ $('Assign Settings Values').first().json.googleMapsApiKey }}.
  4. Granska Compute Free Time Window för att säkerställa att JavaScript beräknar gapTimeMinutes och hasGapTime utifrån händelsens starttid och restidens varaktighet.

Tips: Om er kalenderhändelse använder ett värde som endast är datum hanterar Compute Free Time Window detta redan med calendarEvent.start.dateTime || calendarEvent.start.date.

Steg 4: Sätt upp routing för tidsmellanrum och platssökning

Kontrollera om tidsmellanrummet är tillräckligt, slå ihop kontext och routa sedan till sökning efter inomhus- eller utomhusplatser.

  1. I Check Gap Time Threshold bekräftar ni att villkoret använder {{ $json.hasGapTime }} med den booleska operatorn satt till true.
  2. I Combine Context Details behåller ni den sammanslagna payloaden från Compute Free Time Window, Fetch Destination Weather, Retrieve Notion Preferences och Fetch Upcoming Calendar Event.
  3. I Route by Weather Status verifierar ni att de två reglerna jämför {{ $json.weatherId }} mot 700 för att dela upp regn/snö kontra soligt/molnigt.
  4. Route by Weather Status skickar output till både Find Indoor Locations och Find Outdoor Locations baserat på väderreglerna (endast en route triggas per körning).
  5. I Find Indoor Locations sätter ni URL till https://maps.googleapis.com/maps/api/place/nearbysearch/json?location={{ $json.weatherData.coord.lat }},{{ $json.weatherData.coord.lon }}&radius=1000&type=cafe&keyword=indoor+shopping+mall+station+underground&key={{ $('Assign Settings Values').first().json.googlePlacesApiKey }}.
  6. I Find Outdoor Locations sätter ni URL till https://maps.googleapis.com/maps/api/place/nearbysearch/json?location={{ $json.weatherData.coord.lat }},{{ $json.weatherData.coord.lon }}&radius=1000&type=cafe&keyword=terrace+view+open+air+outdoor&key={{ $('Assign Settings Values').first().json.googlePlacesApiKey }}.

⚠️ Vanlig fallgrop: Om Google Places API-nyckeln saknas i Assign Settings Values kommer både Find Indoor Locations och Find Outdoor Locations att returnera fel.

Steg 5: Konfigurera AI-rekommendationer och Slack-utskick

Generera en trevlig rekommendation med AI-modellen och leverera den till Slack.

  1. I Generate AI Suggestions bekräftar ni att modellen är gpt-4.1-mini och att prompten refererar till värden som {{ $('Combine Context Details').first().json.gapTimeMinutes }} och {{ JSON.stringify($json) }}.
  2. Inloggningsuppgifter krävs: Anslut era OpenAI-inloggningsuppgifter i Generate AI Suggestions.
  3. I Dispatch Slack Alert sätter ni Text till {{ $json.output[0].content[0].text }} och väljer en Channel.
  4. Inloggningsuppgifter krävs: Anslut era Slack (OAuth2)-inloggningsuppgifter i Dispatch Slack Alert.

Tips: Om Slack-meddelanden verkar tomma, verifiera att Generate AI Suggestions returnerar ren text och inte JSON.

Steg 6: Testa och aktivera ert arbetsflöde

Kör en manuell exekvering för att validera flödet end-to-end innan ni aktiverar det enligt schemat.

  1. Klicka på Execute Workflow för att köra från Scheduled Automation Trigger.
  2. Bekräfta att Fetch Upcoming Calendar Event returnerar nästa händelse och att Compute Free Time Window ger ett positivt gapTimeMinutes när det är relevant.
  3. Verifiera att Generate AI Suggestions producerar ett rekommendationsmeddelande och att Dispatch Slack Alert publicerar det i er valda kanal.
  4. När allt är validerat, slå på arbetsflödet till Active för att köra var 30:e minut i produktion.
🔒

Lås upp fullständig steg-för-steg-guide

Få den kompletta implementeringsguiden + nedladdningsbar mall

Felsökningstips

  • OAuth-scope för Google Kalender spelar roll. Om händelser inte laddas, kontrollera autentiseringsuppgiften i n8n och bekräfta att den har behörighet att läsa kalendern du valde.
  • Om du använder Wait-liknande timing någon annanstans eller om externa API:er är långsamma varierar processtiderna. Öka väntetiden om efterföljande noder faller på tomma svar.
  • OpenAI-utdata känns generiska tills du lägger till din röst. Uppdatera AI-prompten tidigt med ton, begränsningar (som ”inga turistfällor”) och vad ”bra” betyder för dig.

Snabba svar

Hur lång tid tar det att sätta upp den här kalender-Slack-automationen?

Cirka 30 minuter om dina API-nycklar och konton är klara.

Krävs kodning för den här planeringen av mötesluckor?

Nej. Du kopplar konton, klistrar in API-nycklar och justerar några inställningar som minsta lucktid och sökradie.

Är n8n gratis att använda för det här arbetsflödet för kalender-Slack-automation?

Ja. n8n har ett gratis alternativ för egen hosting och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna in OpenAI API-användning samt Google Maps/Places- och OpenWeatherMap API-användning (ofta bara några dollar i månaden vid låg volym).

Var kan jag hosta n8n för att köra den här kalender-Slack-automationen?

Två alternativ: n8n Cloud (managerat, enklast att komma igång) eller egen hosting på en VPS. För egen hosting är Hostinger VPS prisvärd och hanterar n8n bra. Egen hosting ger obegränsat antal körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här arbetsflödet för kalender-Slack-automation för andra användningsfall?

Ja, och det bör du göra. Vanliga justeringar är att ändra minGapTimeMinutes i steget ”Assign Settings Values”, justera Places-sökradien (standard är 1000 m) och redigera AI-prompten så att den prioriterar din typ av paus (lugnt café, snabbt ärende, kort promenad eller en sittande återhämtning). Du kan också byta ut Slack-meddelandet mot Telegram om det är där du agerar snabbast, och behålla resten av flödet oförändrat.

Varför misslyckas min Google Kalender-anslutning i det här flödet?

Oftast är det ett OAuth-problem: autentiseringsuppgiften i n8n har inte längre åtkomst, eller så auktoriserades den för fel Google-konto. Återanslut Google Kalender-autentiseringsuppgiften och se till att den valda kalendern är delad med det kontot. Om det fortfarande misslyckas, kontrollera inställningarna för händelsefrågan (tidsfönster, tidszon) eftersom ”ingen händelse returnerades” kan se ut som ett anslutningsproblem när det egentligen är filtrering.

Vilken volym kan det här arbetsflödet för kalender-Slack-automation hantera?

Mer än tillräckligt för personligt bruk. Med standardschemat (var 30:e minut) landar du på cirka 1 400 körningar i månaden om det körs hela dagen, och du kan minska det genom att ändra trigger-intervallet. På n8n Cloud beror gränserna på din nivå; på egenhostad n8n finns ingen körningsbegränsning, så det beror främst på din server och externa API:ers rate limits. Den tyngre delen är Places-uppslag och AI-anropet, som bara sker när en lucka går igenom din tröskel.

Är den här kalender-Slack-automationen bättre än att använda Zapier eller Make?

Ofta, ja. Det här flödet behöver förgreningar (inomhus vs utomhus), flera API-anrop (Maps/Places + väder) och viss anpassad logik för att ”slå ihop kontext” innan AI skriver meddelandet. n8n hanterar den typen av flerstegsflöden snyggt, och egen hosting gör att du slipper betala mer bara för att du kör täta kontroller. Zapier eller Make kan fortfarande fungera om du förenklar det till ”om fri tid finns, skicka ett generiskt förslag”, men då tappar du restids- och väderanpassningen som gör att det här känns smart. Är du osäker, prata med en automationsexpert så får du en rak rekommendation.

När det här väl är igång slutar dina kalenderluckor att vara ett litet researchprojekt. Du får en kort lista, väljer ett alternativ och använder faktiskt tiden.

Kontakta oss

Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.

×

Använd mall

Få direkt tillgång till denna n8n-arbetsflödes JSON-fil

Launch login modal Launch register modal