Outlook-Meeting zu Teams vorbereiten

Fortgeschritten

Dies ist ein Personal Productivity-Bereich Automatisierungsworkflow mit 8 Nodes. Hauptsächlich werden Code, MicrosoftTeams, ScheduleTrigger, MicrosoftOutlook und andere Nodes verwendet. Automatisiertes Versenden von Outlook-Kalenderzusammenfassungen an Microsoft Teams

Voraussetzungen
  • Keine besonderen Voraussetzungen, sofort nach Import nutzbar
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "id": "L4F6EnHYmVEq7SSW",
  "meta": {
    "instanceId": "ccf4e500c5536799e0925f03390f0fd338e2b5a5bc862f6a57b5552acfdf3861",
    "templateCredsSetupCompleted": true
  },
  "name": "Prepare for meetings Outlook -> Teams",
  "tags": [],
  "nodes": [
    {
      "id": "1a3eb8b0-1507-4c7f-9644-8779ab20a157",
      "name": "Kalenderereignisse abrufen",
      "type": "n8n-nodes-base.microsoftOutlook",
      "position": [
        820,
        660
      ],
      "webhookId": "b5035907-a365-4c4c-a109-011aaa75fd52",
      "parameters": {
        "filters": {
          "custom": "={{ $json.filter }}"
        },
        "resource": "event"
      },
      "credentials": {
        "microsoftOutlookOAuth2Api": {
          "id": "",
          "name": ""
        }
      },
      "typeVersion": 2,
      "alwaysOutputData": true
    },
    {
      "id": "9afa8efa-2154-4584-8476-52039358e03f",
      "name": "Filter für \"HEUTE\"-Wert erstellen",
      "type": "n8n-nodes-base.code",
      "position": [
        640,
        660
      ],
      "parameters": {
        "jsCode": "const now = new Date();\n\n// Get start of today (UTC)\nconst start = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate()));\nconst end = new Date(Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate() + 1));\n\nconst startISO = start.toISOString(); // e.g. 2025-05-27T00:00:00.000Z\nconst endISO = end.toISOString();\n\nconst filter = `start/dateTime ge '${startISO}' and start/dateTime lt '${endISO}'`;\n\nreturn [{\n  json: {\n    filter,\n    startISO,\n    endISO\n  }\n}];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "1eb47e59-e8d0-4f26-b647-8351d76d877a",
      "name": "Jeden Mitternacht planen",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        420,
        660
      ],
      "parameters": {
        "rule": {
          "interval": [
            {}
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "17e80693-1187-4ccf-a4d6-1f08416421d4",
      "name": "Kurznotiz2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        200,
        460
      ],
      "parameters": {
        "color": 7,
        "width": 1380,
        "height": 480,
        "content": "## Automatically send your daily schedule to Teams\n1) \"Code\" node - setting TODAY value \n2) \"Microsoft Outlook\" node - set Resource as EVENT and operation as GET MANY \n3) \"Code\" node - HTML-formatted message for each item, summarizing the meeting time, subject, and body preview, using default values if fields are missing.\n4) Send the message via \"MS Teams node\" - use technical user & select relevant teams channel or chat \n"
      },
      "typeVersion": 1
    },
    {
      "id": "76ffe5c8-e99a-46c3-9576-2aaf6687e57e",
      "name": "Kurznotiz3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1660,
        420
      ],
      "parameters": {
        "width": 600,
        "height": 600,
        "content": "## Final Output\n### Received in teams chat \n📅 Meeting Time: 2025-07-08T13:00:00.0000000\n📝 Subject: Name of Example Meeting\n📄 Summary:\nAgenda:\n🟢 Quick check-in on project status\n📊 Review of key KPIs from last week\n🛠️ Discussion on blockers and resource needs\n📆 Planning milestones for the upcoming sprint\n❓ Q&A + feedback round\n________________________________________________________________________________ Microsoft Teams Need help? [Join the meeting now] Meeting ID: 123 456 789 000 Passcode: aB1c2DE3________________________________ For organizers:\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b2e1ec44-99c1-4476-82a8-53e27e270470",
      "name": "Kurznotiz4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -600,
        80
      ],
      "parameters": {
        "width": 700,
        "height": 1240,
        "content": "## Daily Summary of your Outlook calendar to MS Teams \n**No need to open your calendar – get a clear daily agenda delivered to your Teams channel. Use this workflow.**\n\n### About Workflow\nThis workflow sends an automatic daily summary of your Outlook calendar events into a Microsoft Teams channel. Perfect for team visibility or personal reminders.\n\n### Use Case \nTeams can stay prepared for morning syncs or personal planning by using the tool as a daily agenda or simple reminder. It provides visibility into shared calendars and helps organize workflows without the need to open a calendar, making it ideal for structured team coordination.\n\n\n### How it works\n- Scheduled trigger will ensure the automatic run \n=> every midnight\n- Code node generates the date value for \"today\"\n=> Calculates UTC start and end of the current day\n=> Builds a Microsoft Graph-compatible filter string\n-  Microsoft Outlook node retrieves all calendar events for the day\n=> Resource : Event | Operation : Get Many\n=> Uses {{ $json.filter }}  based on the \"today\" date to get only relevant entries\n- Code node transforms each event into a formatted HTML message\n=> Example Output:\n<b> Meeting Time:</b> 2025-07-08T10:00:00Z<br>\n<b> Subject:</b> Weekly Sync<br>\n<b>Summary:</b><br>\n- Send to MS Teams - by native MS Teams node\n=> Chat Message | Create | Selected Channel | HTML content\n=> Uses the htmlMessage field from the previous node as the message body\n\n### How to use\n- Adjust the schedule time to match your working hours or timezone\n- Customize the Teams channel or chat to match your team’s setup\n- Modify the HTML format to include more fields (e.g. location, organizer)\n- Use the workflow for multiple teams\n\n### Requirements \n- MS Outlook\n=> ideally technical user for API calls with specific permissions\n- MS Teams\n=> ideally technical user for API calls with specific permissions\n\n### Need Help? \n- Reach out through n8n community => https://community.n8n.io/u/easy8.ai\n- Contant our team directly => Easy8.ai\n- Visit our youtube channel => https://www.youtube.com/@easy8ai "
      },
      "typeVersion": 1
    },
    {
      "id": "5026f97a-712b-4c2a-87d4-ed0f84a7074a",
      "name": "Chatnachricht erstellen",
      "type": "n8n-nodes-base.microsoftTeams",
      "position": [
        1200,
        660
      ],
      "webhookId": "30c7eb6a-4c9e-404a-b8b9-1acaf6694253",
      "parameters": {
        "chatId": {
          "__rl": true,
          "mode": "list",
          "value": "19:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@unq.gbl.spaces",
          "cachedResultUrl": "https://teams.microsoft.com/l/chat/19%3Axxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%40unq.gbl.spaces/0?tenantId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "cachedResultName": "FirstName LastName (exampleChat)"
        },
        "message": "={{ $json.htmlMessage }}",
        "options": {},
        "resource": "chatMessage"
      },
      "credentials": {
        "microsoftTeamsOAuth2Api": {
          "id": "",
          "name": ""
        }
      },
      "typeVersion": 2
    },
    {
      "id": "a589e740-17df-4bce-a8d8-79e97e17261d",
      "name": "HTML-Format",
      "type": "n8n-nodes-base.code",
      "position": [
        1000,
        660
      ],
      "parameters": {
        "jsCode": "return items.map(item => {\n  const start = item.json.start?.dateTime || \"N/A\";\n  const subject = item.json.subject || \"No subject\";\n  const preview = item.json.bodyPreview || \"\";\n\n  return {\n    json: {\n      htmlMessage: `\n        <b>📅 Meeting Time:</b> ${start}<br>\n        <b>📝 Subject:</b> ${subject}<br>\n        <b>📄 Summary:</b><br>\n        ${preview}\n      `\n    }\n  };\n});\n"
      },
      "typeVersion": 2
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "c7fb9c1c-c830-4bb1-ac44-520b35accf0d",
  "connections": {
    "a589e740-17df-4bce-a8d8-79e97e17261d": {
      "main": [
        [
          {
            "node": "5026f97a-712b-4c2a-87d4-ed0f84a7074a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Microsoft Outlook": {
      "main": [
        [
          {
            "node": "a589e740-17df-4bce-a8d8-79e97e17261d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1eb47e59-e8d0-4f26-b647-8351d76d877a": {
      "main": [
        [
          {
            "node": "9afa8efa-2154-4584-8476-52039358e03f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9afa8efa-2154-4584-8476-52039358e03f": {
      "main": [
        [
          {
            "node": "Microsoft Outlook",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Häufig gestellte Fragen

Wie verwende ich diesen Workflow?

Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.

Für welche Szenarien ist dieser Workflow geeignet?

Fortgeschritten - Persönliche Produktivität

Ist es kostenpflichtig?

Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.

Workflow-Informationen
Schwierigkeitsgrad
Fortgeschritten
Anzahl der Nodes8
Kategorie1
Node-Typen5
Schwierigkeitsbeschreibung

Für erfahrene Benutzer, mittelkomplexe Workflows mit 6-15 Nodes

Autor
Easy8.ai

Easy8.ai

@easy8ai

We guide B2B companies to use AI agents & automations with ease. Powered by Easy Software & n8n.

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34