50 Commits

Author SHA1 Message Date
David Taylor
148dd8df6b Tidy up Slack provider implementation 2017-08-21 15:28:37 +01:00
David Taylor
ccb8571da5 Fix hipchat colour regex 2017-08-16 15:51:46 +03:00
David Taylor
064079a4ed Add auto-detection of first message in conversation 2017-08-15 18:19:24 +03:00
David Taylor
3314721232 RSpec tests for slack transcript posting 2017-08-15 17:44:51 +03:00
David Taylor
658553e875 Refactor transcript posting 2017-08-15 10:26:03 +03:00
David Taylor
9604edaf88 Allow selecting first transcript message using a URL 2017-08-04 13:06:57 +01:00
David Taylor
9dc5445b7b Fix spec 2017-08-04 00:54:11 +01:00
David Taylor
12f3b96e02 Improve slack transcript posting UI with message buttons 2017-08-04 00:47:04 +01:00
David Taylor
cfaef26e5d More modularisation for slack transcript generation 2017-08-03 17:24:49 +01:00
David Taylor
4d811ed83e Make transcript generation object-oriented 2017-08-03 15:48:33 +01:00
David Taylor
4f9ad4efef Correct rubocop offenses 2017-08-01 20:53:39 +01:00
David Taylor
f1df1f5234 Fix discord avatar URL 2017-07-31 14:47:27 +01:00
David Taylor
142687f4d4 Don’t send avatar URL to Discord, because it doesn’t specify a protocol 2017-07-29 19:52:46 +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
2275793f6c Allow fields to be hidden from channel list (still visible in edit modal). 2017-07-28 14:15:53 +01:00
David Taylor
a5d62bd44d Fix telegram error translation keys 2017-07-28 13:25:31 +01:00
David Taylor
5a4faa637f Add matrix support 2017-07-27 17:09:44 +01:00
David Taylor
5c93b7792c Add ‘view on slack’ link to transcripts 2017-07-26 19:51:44 +01:00
David Taylor
95f99e5fcf Improve slack transcript formatting 2017-07-26 19:27:22 +01:00
David Taylor
e733c2564f Add mattermost slash command support 2017-07-26 13:09:05 +01:00
David Taylor
61a4fd2c23 Add Mattermost support 2017-07-25 22:14:48 +01:00
David Taylor
c51e8ec3b5 Add HipChat support 2017-07-24 19:22:19 +01:00
David Taylor
8ca4797797 Add transcript posting support to slack 2017-07-24 16:43:37 +01:00
David Taylor
0d9b251030 Allow telegram to send notifications to ‘broadcast channels’ 2017-07-21 19:12:31 +01:00
David Taylor
701e246ad2 Support slash commands in telegram group chats 2017-07-21 17:55:33 +01:00
David Taylor
b5e2741214 Add discord support 2017-07-21 15:48:57 +01:00
David Taylor
9d91081f0c Fix the post URL for telegram messages 2017-07-20 12:27:34 +01:00
David Taylor
970c38c7fe Add telegram specs 2017-07-19 21:26:16 +01:00
David Taylor
236251ed11 Remove unnecessary log 2017-07-19 17:34:41 +01:00
David Taylor
509e7bc997 Add telegram slash commands 2017-07-19 17:28:36 +01:00
David Taylor
694bf919ce Move slack command processor into common helper so it can be used by other providers 2017-07-19 16:57:33 +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
1ef9073027 Make CHANNEL_PARAMETERS a list 2017-07-17 17:53:32 +01:00
David Taylor
ebb6fa947d Update slack provider to deal with new channel structure 2017-07-13 23:21:15 +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
bfb499d4cf Refactor into /app directory, move everything out of plugin.rb 2017-07-13 13:32:11 +01:00
David Taylor
f2c5223bc6 Remove accidental dependency on discourse-slack-official 2017-07-12 11:58:19 +01:00
David Taylor
95dd6bc09c Add error handling to the slack API requests, and associated tests 2017-07-07 11:23:25 +01:00
David Taylor
062aa8d875 Add create/delete rule functionality to the slack ‘slash commands’ 2017-07-06 21:42:37 +01:00
David Taylor
fd333d59b7 Add basic “slash command” functionality to the slack provider
Based on the existing slack plugin. Currently does not implement creating new rules or deleting rules.
2017-07-05 23:01:46 +01:00
David Taylor
2f6d6f0d54 Automatically mount provider’s engines at /chat-integration/{provider_name}
Provider controllers are automatically disabled when the provider is disabled (works the same way as plugin controllers)
2017-07-05 15:03:02 +01:00
David Taylor
aaaffdf371 Add ‘send test message’ functionality to the admin interface 2017-07-04 23:35:45 +01:00
David Taylor
d97d35fd0d Handle errors on trigger_notification
Providers can define their own errors, and these are presented in the user interface. e.g. Slack can define an error that says “That channel doesn’t exist”.
Errors in the UI disappear once a message has been sent successfully, or the rule is edited.
2017-07-04 19:37:56 +01:00
David Taylor
4be010fd07 Allow providers to specify a regex that the channel identifier is checked against during validation 2017-07-04 00:14:01 +01:00
David Taylor
1c416d5a81 Allow providers to be disabled, and tidy up translations 2017-07-03 15:53:26 +01:00
David Taylor
4643ad255c Rename plugin to discourse-chat-integration 2017-07-03 11:08:14 +01:00
David Taylor
b824773a8a Add tests for SlackProvider 2017-06-30 16:39:19 +01:00
David Taylor
0074f90f14 Allow sending by API instead of webhooks for slack 2017-06-30 15:28:44 +01:00
David Taylor
3f0462d40c Implement slack provider, based on existing plugin.
Currently only implements the “Webhook” method, not the “Web API” method
2017-06-30 13:09:36 +01:00
David Taylor
4ad9ad6a7a Move lib files inside a discourse_chat directory, and make the notifications run on a delay after post creation 2017-06-30 11:10:11 +01:00