Work from Slack and Discord
Link your chat account, then resolve, snooze and take over conversations, leave notes, run tools, approve tool calls and get pinged about waiting work without opening Median.
Everything here needs a connected Slack workspace or Discord server, and a linked chat account for each person who uses it.
| Feature | Slack | Discord |
|---|---|---|
/note |
Anywhere in the workspace | In a mirror thread or a ticket channel |
/actions |
Anywhere in the workspace | In a mirror thread or a ticket channel |
| Tool approvals | In the conversation’s mirror thread | In the conversation’s mirror thread |
| Attention pings | In the mirror channel, or a conversation’s thread | In the mirror channel, or a conversation’s thread |
| The assistant | Direct messages and mentions | Direct messages and mentions |
Link your account
Ask for a link
Message the assistant, or run /note or /actions. An account Median does
not know gets a link. The assistant answers “I do not know who you are in
Median yet. Open this while signed in and say hello again.” with a
Link my account button.
Open it signed in
Open the link in a browser signed in to Median, with the organization you want selected. Select Link account. If you are signed out, select Sign in to link first.
Check it worked
The page reads Account linked. In the thread where the assistant sent the link, it answers “Linked as Ada. Ask away.” with your name.
| Rule | Detail |
|---|---|
| Slack email match | A Slack account whose email matches a member of the organization that installed the app links itself when it messages the assistant. No link is needed. /note and /actions do not match by email |
| Link lifetime | 15 minutes, and one use. An unused link older than that reads “This link has expired”. A used link reads Account linked until the hourly cleanup removes it |
| One organization | A chat account links to one person in one organization, the one open when you select Link account. Linking it again moves it |
| Membership | Checked on every use. Leave the organization and the account stops working there |
| Privacy | Linked accounts are personal. Nobody else sees yours |
Manage linked accounts
Settings → General → Chat accounts lists the accounts you linked, with the platform and when you linked each one. Unlink asks to confirm with “Messages from that account stop reaching the assistant until you link it again.”
With nothing linked, the section reads “Message the assistant in Slack or Discord to get a link to connect your account.”
Leave a note
A note lands in the conversation under your name. Customers never see it. It is the same as a note written in the inbox.
Run /note text: in a mirror thread or a ticket channel. The note goes on that
conversation. Up to 2,000 characters.
Run /note anywhere in the workspace. Add a note asks for the
Conversation, from the 25 most recent that are not archived, and the
Note. Select Add.
Only you see the answers.
| Answer | Means |
|---|---|
| “Note added to” and the conversation | Done |
| A note needs some words. | The note was empty |
| This channel is not a conversation. | Discord only. Run it in a mirror thread or a ticket channel |
| That conversation is not yours. | Slack only. The conversation belongs to another organization |
| There are no conversations to act on yet. | Slack only. The organization has no conversations that are not archived |
| “Link this Slack account to Median first” or “Link this Discord account to Median first”, with a link | Your account is not linked |
Actions
/actions is the inbox’s command menu. It lists the same conversation
commands as the composer in the inbox, a note, and your
team’s switched on tools.
- Run
/actionsin a mirror thread or a ticket channel. - Choose from Pick a command, or from Run a tool. A command happens as soon as you pick it. Run a tool lists the first 25 tools by name, and a tool above low risk says so first, such as “high risk.”
- For a tool with fields, fill in the form and send it. A Discord form holds up to 5 fields of up to 1,000 characters, and every field is typed.
- Run
/actionsanywhere in the workspace. - Actions asks for the Conversation. Select Next.
- Pick an Action and select Next. Commands come first, then Leave a note, then up to 100 tools. A command happens on Next.
- For a tool with fields, fill in the form and select Run. Choice and yes or no fields are menus.
Commands
Each command does what the same command does in the inbox, under your name. The menu only offers what fits the conversation now.
| Command | Offered when |
|---|---|
| Resolve | The conversation is open |
| Reopen | The conversation is resolved or closed |
| Close | The conversation is open |
| Snooze for an hour, a day or a week | Always. These are fixed lengths, since chat has no clock to read |
| Wake up now | The conversation is snoozed |
| Archive or Move to inbox | Always, whichever fits |
| Take over | The agent is answering it |
| Hand back to the agent | You took it over, and your plan includes the agent |
| Mark as read or Mark as unread | Always, whichever fits |
| Leave a note | Always. Opens the same form as /note |
Tools
Running a tool follows the same rules as running it from the inbox. See Approvals and tool runs. The answer reads “Running” and the tool’s name, then “ran.” or “did not run:” with the reason.
Answers
Only you see these. Menus and forms expire after 10 minutes.
| Answer | Means |
|---|---|
| “Resolved”, “Snoozed” and so on, with the conversation | Done |
| That menu is stale. Run /actions again. | More than 10 minutes passed, or the conversation changed since the menu opened |
| That form is stale. Run /actions again. | Discord only. More than 10 minutes passed before the form was sent |
| This channel is not a conversation. | Discord only. Run it in a mirror thread or a ticket channel |
| That conversation is not yours. | Slack only. The conversation belongs to another organization |
| There are no conversations to act on yet. | Slack only. The organization has no conversations that are not archived |
| “Handing conversations back to the agent is available on Standard and Pro.” | Your plan does not include the agent |
| The tool’s name, then “is not one of your switched on tools.” | The tool was switched off after the menu opened |
| “asks for more than Discord will show. Run it in Median.” | The tool has more than 5 fields |
| “has a name too long to run from Discord. Run it in Median.” | The tool’s name does not fit Discord’s limit |
Approve tool calls
When an agent tool call waits for the team, Median posts an alert with buttons. That happens for a high risk call, or a reviewed call passed to the team. See Risk levels.
- The alert posts in the conversation’s mirror thread. Median opens a thread if the conversation has none yet. A Discord ticket’s alert also goes to the mirror thread, never the ticket channel the customer can see.
- Slack and Discord each need a mirror channel picked. The Slack mirror and Discord mirror switches can be off.
- It mentions every member with a linked account on that platform, 50 to a message. Nothing is posted when nobody has linked an account there.
- Nothing is posted if the request expired or was already decided, or the conversation was resolved, closed or archived, before the alert went out.
The alert reads “A tool needs approval.” with the tool’s name.
| Button | Does |
|---|---|
| Approve | Runs the tool. The alert changes to “Approved. The tool is running.” |
| Deny | The tool does not run. The alert changes to “Denied. The tool will not run.” |
| View request | Opens the conversation in Median |
Only a linked account of a current member can decide. Deciding here is the same as deciding in the inbox, see Approvals and tool runs. Only you see these answers:
| Answer | Means |
|---|---|
| Link your chat account to a current team membership in Median first. | Your account is not linked, or you left the organization |
| This request has already been reviewed. | Someone decided it first |
| This request is unavailable in your inbox. | The request belongs to another organization |
| The review could not be saved. Try again. | Discord only. The decision did not save |
| The review could not be saved. Check its status in Median before retrying. | Slack only. The decision did not save |
Attention pings
Once a minute, Median checks the items under Needs attention on the dashboard and posts a ping for each new one. A ping reads “Something needs attention in Median.” with the item and a link to it.
| Item | Ping names | Who is mentioned |
|---|---|---|
| A conversation where the agent asked for a person | “Median needs a person” and the subject | Everyone |
| An unread conversation a teammate took over | “Needs your reply” and the subject | The assignee, or everyone when it has none |
| A pending knowledge suggestion | “Knowledge suggestion” and its title | Admins and owners |
| A pending tool suggestion | “Suggested tool” and its title | Admins and owners |
| An open signal | “Open signal” and its title | Everyone |
| A fix commit to confirm | “Fix to confirm”, the signal and the commit | Everyone |
| A document that failed to index | “Document failed to index” and its title | Everyone |
| A repository that is not syncing | “Repository is not syncing” and the repository | Everyone |
| A failing tool endpoint | “A tool endpoint is failing” | Everyone |
| A failing webhook | “A webhook is failing to deliver” | Everyone |
“Everyone” means every member with a linked account on that platform. See Roles for who counts as an admin.
- A ping about a conversation posts in its mirror thread, Discord tickets included.
- Every other ping posts in the mirror channel.
- Pings follow the same channel rules as tool approvals.
- Each item pings once per platform. If it clears and comes back, it pings again. Every new handoff pings again.
- The ping stays in the channel after the item clears.
- An organization with no linked accounts gets no pings.
Talk to the assistant
A linked account also reaches the Median assistant in direct messages and mentions. See Assistant.