Commit Graph

31 Commits

Author SHA1 Message Date
Mark VanLandingham a73f5da114
Rename DiscourseChat to DiscourseChatIntegration (#82) 2021-07-13 14:36:16 -05:00
Michael K Johnson da9106127a
FEATURE: Enable optional support for threading slack posts (#38)
When creating a new Discourse post from slack with the `post` feature, record the
slack `ts` thread ID for the resulting topic post using an HTML comment to pass
the `ts` through.

When notifying slack of new Discourse posts, record the slack `ts` thread ID in
the post's topic if it has not yet been recorded. (Normally, this will be done
for the topic post, except where notifications are being posted for old topics
before this feature was created.)

Add a new rule filter `thread` which posts threaded responses to slack if there
is a `ts` recorded for the post topic.

Modify the `trigger_notifications` interface to enable other integrations to
implement similar functionality.

Present the `thread` rule in the help text and admin UI only for the slack
providers.

https://meta.discourse.org/t/optionally-threading-posts-to-parent-topic-in-slack-integration/150759
2020-06-15 16:45:25 +01:00
Guo Xiang Tan ac288b9300 Add frozen string literal comment to files. 2019-05-13 10:37:49 +08:00
David Taylor fc721a1768 FEATURE: Improve channel error visibility in the admin panel, stop adding chat integration errors to logs 2018-08-20 12:06:10 +01:00
Guo Xiang Tan c44ac56d32 Make rubocop happy. 2018-06-08 09:52:35 +08:00
Guo Xiang Tan f836047f90 REFACTOR: Clean up code in plugin. 2017-10-03 17:42:07 +08:00
Guo Xiang Tan 2d6737ce5c REFACTOR: Remove hardcoded base `KEY_PREFIX`. 2017-10-03 15:35:44 +08:00
Guo Xiang Tan d77afa4c98 Remove self-explaintory comment. 2017-10-03 15:31:38 +08:00
Guo Xiang Tan 530e715588 STYLE: Shorten long lines. 2017-10-03 15:30:38 +08:00
Guo Xiang Tan 435b1cc9b5 Refactor plugin. 2017-09-28 16:32:38 +08:00
Guo Xiang Tan 49f58ec190 Fix tests to work with Rails 5.1. (#8) 2017-09-25 11:06:27 +08:00
David Taylor 4703250c1f Only check channel uniqueness within the same provider 2017-08-23 16:31:47 +01:00
David Taylor 4f9ad4efef Correct rubocop offenses 2017-08-01 20:53:39 +01:00
David Taylor f3347b0a92 Add support for group mentions 2017-08-01 17:11:34 +01:00
David Taylor 209daf7801 Add group messages support to admin UI, and add a ‘type’ field for further improvements 2017-08-01 15:20:00 +01:00
David Taylor d437634f61 Move rule editing into a modal dialog 2017-07-31 17:09:21 +01:00
David Taylor 4b2e8af711 Backend support for group pms 2017-07-31 14:51:03 +01:00
David Taylor 28091a9a97 Ignore self when checking for duplicate rule 2017-07-29 19:27:21 +01:00
David Taylor 61fa0dbe0b Replace `match?` with `match` for backwards compatibility with Ruby 2.3 2017-07-29 19:21:11 +01:00
David Taylor ce8acc9c26 Disallow duplicate channels - providers can define which fields should be ‘unique’ 2017-07-28 15:47:46 +01:00
David Taylor 2e94f23fbe Add Telegram provider.
Does not yet support slash commands, and is without tests.
2017-07-19 16:28:02 +01:00
David Taylor c5fdebd1bc Store errors per-channel rather than per-rule, and update UI to match 2017-07-18 23:08:06 +01:00
David Taylor d1d333523f Order rules by precedence in the UI and slash commands 2017-07-18 21:36:07 +01:00
David Taylor 0a9ef040a1 Update specs for updated controller methods 2017-07-18 18:23:20 +01:00
David Taylor 2275b048f9 Destroy associated rules when a channel is destroyed 2017-07-18 16:42:05 +01:00
David Taylor bdb81191d7 New admin interface for improved channel definitions 2017-07-18 16:17:03 +01:00
David Taylor 1ef9073027 Make CHANNEL_PARAMETERS a list 2017-07-17 17:53:32 +01:00
David Taylor ab2e4c2de8 Allow looking up channel by data attributes (nested json values) 2017-07-13 22:50:14 +01:00
David Taylor 4b25dcec8f Allow providers to define a data schema for their channel parameters 2017-07-13 20:50:45 +01:00
David Taylor e07a4da460 Model changes 2017-07-13 16:09:34 +01:00
David Taylor bfb499d4cf Refactor into /app directory, move everything out of plugin.rb 2017-07-13 13:32:11 +01:00