> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usedrip.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# meeting follow-up

> create post-meeting Slack channels, invite attendees, and draft follow-up.

# meeting follow-up

dripos can create post-meeting Slack channels and draft follow-up after calendar calls.

This is useful when your team often moves customer, partner, or vendor work into a shared Slack channel after a meeting. It is less useful when a Gmail draft is enough or when your Slack workspace requires heavy Slack Connect approval.

## setup

1. Connect **Google** for Calendar and Gmail.
2. Connect or reconnect **Slack**.
3. Open **Settings**.
4. In **Meeting follow-up**, click **Enable**.
5. Optional: click **Run now** to scan recent meetings immediately.

The Settings button turns on two local automation rules:

* `calendar_post_meeting`: create a Slack channel, invite the attendee, post a starter message, try Slack Connect for external attendees on a best-effort basis, and create a Gmail draft.
* `calendar_no_show`: create a Gmail no-show draft when there is clear no-show evidence.

## what happens after a meeting

After a calendar meeting ends, dripos waits for the meeting grace window, then:

1. Creates or reuses a Slack channel named from the meeting, such as `meeting-demo-call-avery`.
2. Tries to invite the attendee as an existing Slack workspace user by email.
3. Posts a starter message in the channel.
4. If Slack does not find that user in your workspace, tries to send a Slack Connect invite by email.
5. Creates a Gmail follow-up draft.

Email follow-up is draft-first by default. dripos does not silently send the follow-up email.

## external attendees

External attendees use Slack Connect. dripos can send the Slack Connect invite, but Slack still controls acceptance and approval.

That means:

* The external person may need to accept the invite.
* Their workspace admin may need to approve it.
* Your workspace admin may need to approve it.
* Slack workspace policy can block the invite.

dripos cannot force an external person into a Slack channel without Slack Connect acceptance.

If the external invite fails, the channel starter message and Gmail draft still run. dripos records a Slack Connect warning instead of failing the whole follow-up.

## Slack permissions

The Settings button only enables the automation. Slack permissions come from the Slack connect or reconnect flow.

Slack must allow dripos to:

* create and list channels
* invite workspace users
* look up users by email
* post messages
* send Slack Connect invites

External Slack Connect invites are best-effort in the current desktop path. Slack's official `conversations.inviteShared` API requires the `conversations.connect:write` bot-token scope. The desktop Slack connection currently runs through the local Slack web session, so reconnecting Slack may refresh the session but does not by itself grant a new bot-scoped Slack Connect permission.

If Slack reports `missing_scope`, `not_allowed_token_type`, `no_external_invite_permission`, `restricted_action`, or `not_paid`, the external invite is blocked by token type, workspace policy, admin permissions, or Slack plan. Use the Gmail draft fallback or complete the Slack Connect invite manually until dripos has a bot-scoped Slack Connect install path.

Relevant Slack docs:

* [`conversations.create`](https://docs.slack.dev/reference/methods/conversations.create/)
* [`conversations.invite`](https://docs.slack.dev/reference/methods/conversations.invite/)
* [`conversations.inviteShared`](https://docs.slack.dev/reference/methods/conversations.inviteShared/)
* [Slack Connect API methods](https://docs.slack.dev/apis/slack-connect/using-slack-connect-api-methods/)
* [`users.lookupByEmail`](https://docs.slack.dev/reference/methods/users.lookupByEmail/)
* [`chat.postMessage`](https://docs.slack.dev/reference/methods/chat.postMessage/)

## no-show drafts

The no-show rule creates a Gmail draft only when there is clear evidence, such as:

* the attendee declined the calendar invite
* calendar or meeting context says `no show`, `did not join`, or `missed the meeting`

Default no-show draft:

```text theme={null}
Hi {{firstName}}, sorry we missed each other on {{eventTitle}}. Happy to find another time if useful.
```

dripos does not currently verify actual Google Meet or Zoom attendance. It also does not know whether the attendee's previous meeting is running over.

Do not use automatic sending for no-show email unless you have a reliable attendance signal.

## when to use it

Use meeting follow-up when:

* your team already uses Slack Connect with customers, partners, or vendors
* creating a shared channel after calls is common
* external invite approval is predictable
* Gmail draft fallback is acceptable
* the channel is useful even if the external invite is pending

Skip it when:

* customers do not expect a Slack channel after a first meeting
* Slack Connect approval blocks most invites
* you need guaranteed instant external access
* you only need an email follow-up draft
* you need verified meeting attendance before taking action

## current limits

These are the important limits today:

* dripos cannot silently add external participants. Slack Connect acceptance and policy still apply.
* dripos cannot bypass Slack admin approval.
* dripos cannot guarantee Slack Connect works if your Slack plan, app scopes, or workspace policy blocks it.
* dripos does not yet have a bot-scoped Slack Connect install path for guaranteed `conversations.inviteShared` support.
* dripos cannot verify actual meeting attendance from Google Meet or Zoom yet.
* dripos cannot tell if someone's previous meeting is running over.
* dripos does not create the Slack channel live during the meeting. It runs after the meeting grace window.
