Microsoft Outlook & Microsoft Teams

LockMyCal nativně podporuje synchronizaci s kalendáři Microsoft 365 / Office 365, firemními účty Exchange Online a osobními účty Outlook.com. Součástí integrace je také možnost automatického generování videokonferenčních místností pro Microsoft Teams.


1. Registrace aplikace v portálu Microsoft Entra ID (Azure)

  1. Přihlaste se do Microsoft Entra ID (Azure Portal).
  2. V levém menu vyhledejte Microsoft Entra ID -> App registrations -> klikněte na + New registration.
  3. Vyplňte formulář:
    • Name: LockMyCal Calendar Integration
    • Supported account types: Vyberte Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox) pro podporu jak firemních M365, tak osobních Outlook.com účtů.
    • Redirect URI (optional): Jako platformu zvolte Web a zadejte: https://calendar.vasedomena.cz/auth/outlook/calendar/callback
  4. Po registraci v části Authentication přidejte další redirect URI:
    • https://calendar.vasedomena.cz/auth/teams/video/callback (videohovory Microsoft Teams)
    • https://calendar.vasedomena.cz/auth/microsoft/callback (volitelně – přihlašování účtem Microsoft)
  5. Klikněte na Register.

2. Vytvoření Client Secret

  1. V detailu nově vytvořené aplikace přejděte v levém menu do Certificates & secrets.
  2. V záložce Client secrets klikněte na + New client secret.
  3. Zadejte popis (např. LockMyCal Production) a zvolte platnost (např. 24 měsíců).
  4. Důležité: Okamžitě si zkopírujte hodnotu ve sloupci Value (nikoliv Secret ID). Po opuštění stránky se hodnota již nezobrazí.

3. Nastavení API oprávnění (Microsoft Graph)

  1. V levém menu přejděte do API permissions -> + Add a permission -> Microsoft Graph -> Delegated permissions.
  2. Vyhledejte a zaškrtněte následující oprávnění:
    • Calendars.ReadWrite (čtení a zápis událostí kalendáře)
    • User.Read (čtení základního profilu uživatele)
    • offline_access (získání refresh tokenu pro běh na pozadí)
    • openid, profile, email
  3. Klikněte na Add permissions.

4. Konfigurace v LockMyCal

Přidejte získané ID a Secret do vašeho souboru .env:

OUTLOOK_CLIENT_ID=vlozte_application_client_id_z_prehledu_azure
OUTLOOK_CLIENT_SECRET=vlozte_zkopirovanou_hodnotu_client_secret
OUTLOOK_STATE_SECRET=nahodny_retezec   # openssl rand -base64 32
# Volitelně přihlašování účtem Microsoft (používá stejnou aplikaci):
ENABLE_MICROSOFT_AUTH=true

Restartujte aplikaci (docker compose up -d). Nyní se přihlaste do dashboardu LockMyCal, přejděte do Integrace → Kalendáře → Připojit kalendář a zvolte Outlook.

Tip

Máte firemní Exchange server (on-premise) místo Microsoft 365? Použijte návod Microsoft Exchange (EWS).