# Discourse Slackdoor Plugin

**URL:** https://meta.discourse.org/t/discourse-slackdoor-plugin/44632
**Category:** Plugin
**Tags:** deprecated
**Created:** [May 22, 2016, 8:26pm UTC](https://meta.discourse.org/t/discourse-slackdoor-plugin/44632 "2016-05-22T20:26:22Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![mcwumbly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcwumbly/32/103861_2.png) [@mcwumbly](https://meta.discourse.org/u/mcwumbly)
#### Post date: [May 22, 2016, 8:26pm UTC](https://meta.discourse.org/t/discourse-slackdoor-plugin/44632/1 "2016-05-22T20:26:22Z")

</div>

# DEPRECATION NOTICE

This plugin is now deprecated.

There is no plan to maintain or enhance it.

* * *

As of August 17, 2019, it still works but with limitations.

In particular:

1. It doesn’t unfurl messages that don’t _start_ with the link (this was always the case).
2. It does not really do what one would expect in threads; the message is “unfurled” in the main channel.

In addition, outgoing webhooks are no longer recommended by Slack. They recommend creating a Slack App for this kind of integration now.

You may find this plugin useful as is, despite these limitations, but doing so comes with the above limitations and the risks that come with using software that is no longer maintained.

It is unclear whether there is any existing alternative to this plugin, so there is likely an opportunity for someone else to make something that solves this problem in a better way.

* * *

The [discourse-slackdoor](https://github.com/mcwumbly/discourse-slackdoor) plugin allows Slack to unfurl links to your private Discourse instance.

### Usage

When you post a message that **starts with** a link to a post or a topic in your private Discourse instance, a bot will post a message that contains the unfurled content as a reply.

### Setup

1. Configure an [outgoing webhook](https://api.slack.com/outgoing-webhooks) on your Slack instance.
2. Install and configure the `discourse-slackdoor` plugin.

## Configure an Outgoing Webhook in Slack

Set the following values for your outgoing webhook:

- Channels: All
- Trigger Word(s): `<https://forum.example.com/t/`
- URL: `https://forum.example.com/slackdoor/knock`
- Token: (autogenerated, but copy value to add to your plugin settings)

You can also choose a name and icon for the bot’s posts.

## Install and Configure Discourse-Slackdoor Plugin

1. Install the plugin using this [how to](https://meta.discourse.org/t/install-a-plugin/19157) guide.
2. Go to the Site Settings for your Discourse instance and type `slackdoor` into the filter to show the settings for the plugin.
  - enabled
  - token
  - username

The `token` should be set to the value that is generated by Slack when you create the webhook.

The `username` should be a user that can see topics you want to be able to share to Slack (but not topics that you _don’t_ want to share).

## Issues or Questions?

Please post any issues or questions in this topic.

---

<div class="post-metadata">

### Author: ![mcwumbly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcwumbly/32/103861_2.png) [@mcwumbly](https://meta.discourse.org/u/mcwumbly)
#### Post date: [September 13, 2016, 5:10am UTC](https://meta.discourse.org/t/discourse-slackdoor-plugin/44632/2 "2016-09-13T05:10:22Z")

</div>

A compatibility issue with this plugin was introduced in Discourse commit `eaf87f07701b70903dcc88a7235371a00cc61083`.

If you are on that version or newer of Discourse, you should update this plugin.

Discourse is creating their own [officially supported Slack plugin](https://github.com/discourse/discourse-slack-official) and this is a feature on their todo list, so hopefully in the not-too-distant future this plugin will become obsolete 😉

---

<div class="post-metadata">

### Author: ![mikehc](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mikehc/32/121680_2.png) [@mikehc](https://meta.discourse.org/u/mikehc)
#### Post date: [August 16, 2019, 11:48pm UTC](https://meta.discourse.org/t/discourse-slackdoor-plugin/44632/5 "2019-08-16T23:48:01Z")

</div>

What is the status of this plugin? Does it still work? I checked the official slack plugin (deprecated) and the replacement of it, but seems like the focus is not for allowing unfurling of url in private instances of Discourse.

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [August 17, 2019, 8:34am UTC](https://meta.discourse.org/t/discourse-slackdoor-plugin/44632/6 "2019-08-17T08:34:29Z")

</div>

Is this still useful @mcwumbly or is it fully obsolete?

---

<div class="post-metadata">

### Author: ![mcwumbly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcwumbly/32/103861_2.png) [@mcwumbly](https://meta.discourse.org/u/mcwumbly)
#### Post date: [August 17, 2019, 1:38pm UTC](https://meta.discourse.org/t/discourse-slackdoor-plugin/44632/7 "2019-08-17T13:38:04Z")

</div>

This plugin is now deprecated.

I do not plan to maintain or enhance it.

* * *

It still works but with limitations.

In particular:

1. it doesn’t unfurl messages that don’t _start_ with the link (this was always the case).
2. It does not really do what you expect in threads; the message is “unfurled” in the main channel.

In addition, outgoing webhooks are no longer recommended by Slack. They recommend creating a Slack App for this kind of integration now.

Until recently we had been using this plugin in spite of these risks, but just recently decided to uninstall it as it was causing more confusion than benefits.

I’m not aware of any other existing integration that delivers the ability to unfurl messages for private Discourse instances at this time, so folks may continue to find this one useful as is, but doing so comes with the above limitations and the risks that come with using software that is no longer maintained.

There’s an opportunity for someone else to make something that solves this problem in a better way.

* * *

The README and the OP/Wiki above have now been updated accordingly.
