Commit Graph

90 Commits

Author SHA1 Message Date
Wim
9c43eff753
Add support for using ID in channel config (mattermost) () 2022-02-06 18:26:30 +01:00
Wim
2e8ab11978
Use current parentID if rootId is not set (mattermost) () 2022-01-10 00:37:09 +01:00
Wim
b56f80b1b8 Add support for mattermost v6 2021-10-16 23:23:24 +02:00
Qais Patankar
a9d8ac8bc0
Refactor "msg-parent-not-found" to config.ParentIDNotFound () 2020-12-31 18:01:57 +00:00
Wim
19d47784bd
Add threading support with token (discord) ()
Webhooks don't support the threading yet, so this is token only.
In discord you can reply on each message of a thread, but this is not possible in mattermost (so some changes added there to make sure we always answer on the rootID of the thread).

Also needs some more testing with slack.

update : It now also uses the token when replying to a thread (even if webhooks are enabled), until webhooks have support for threads.
2020-12-31 16:59:47 +01:00
Wim
fed77cccf3 Handle unthreaded messages (mattermost). Fixes 2019-04-19 23:31:45 +02:00
Patrick Connolly
b33b50987b Add support for mattermost threading () 2019-01-09 21:50:03 +01:00
Wim
f94c2b40a3
Refactor mattermost bridge ()
* Split up in different files
* Decrease complexity
* Fix linting issues
2018-12-01 00:49:08 +01:00
Duco van Amstel
09875fe160 Update direct dependencies where possible 2018-11-25 21:21:04 +01:00
Duco van Amstel
ce21ba1545 Fix golint linter issues and enable it in CI () 2018-11-15 20:43:43 +01:00
Wim
f7a5077d5d Fix goconst linter failure 2018-11-13 20:40:15 +01:00
Wim
d2ae3ebf9e Disable Connect(), JoinChannel(), Send() for mattermost.plugin 2018-11-11 22:44:10 +01:00
Wim
78401214b0 Make scopelint happy 2018-11-08 22:29:34 +01:00
Wim
b2a07aba3a Make goconst linter happy 2018-11-08 22:20:03 +01:00
Wim
1e0bb3da95 Make gocritic linter happier 2018-11-08 22:01:29 +01:00
Wim
e2b50d6194 Add better support for multiperson DM (mattermost) 2018-10-27 22:02:25 +02:00
Wim
107969c09a
Split up cookie token and personal token (mattermost). Fixes () 2018-10-26 16:47:56 +02:00
Wim
330ddb6a30 Fix panic by using matterclient calls in the right place. Related to cb7278eb (mattermost). Closes 2018-08-30 23:04:50 +02:00
Wim
fa0c4025f7 Fix avatar uploads to work with MediaDownloadPath. Closes 2018-07-11 23:44:29 +02:00
Wim
cb7278eb50 Use nickname instead of username if defined (mattermost). Closes 2018-07-03 22:41:09 +02:00
Wim
d2c02be3a0 Handle slack attachments sent to mattermost. Closes 2018-06-16 00:11:15 +02:00
Liam Stanley
51327a4056 Reconnect on quit. (irc) See ()
* potential fixes for 
* go: fix formatting/gofmt/goreturns
2018-06-09 12:47:40 +02:00
Wim
07885f5810 Fix iconurl regression (mattermost,slack,rocketchat). Closes 2018-05-27 22:30:17 +02:00
Wim
411ef2691c Use uuid instead of userid. Fixes 2018-05-27 21:50:00 +02:00
Wim
68fbed9281 Make our callbackid more unique. Fixes issue with running multiple matterbridge on the same channel (slack,mattermost) 2018-04-13 22:01:03 +02:00
Wim
e5989adf92 Add support for NoSendJoinPart. Closes 2018-03-06 21:35:47 +01:00
Wim
80fcf18e24 Remove debug messsage (mattermost) 2018-03-05 22:22:20 +01:00
Wim
f2f1d874e1 Use viper (github.com/spf13/viper) for configuration 2018-03-04 23:52:14 +01:00
Wim
594d2155e3 Improve debug messages 2018-02-28 22:23:29 +01:00
Wim
2bac867382 Refactor using factory 2018-02-27 23:22:12 +01:00
Wim
73525a4bbc Make gometalinter happier 2018-02-27 23:22:10 +01:00
Wim
d62f49d1fc Skip events for webhook 2018-02-27 23:22:10 +01:00
Wim
bd2a672c14 Refactor mattermost 2018-02-27 23:22:09 +01:00
Wim
67d2398fa8 Make matterclient work with prefixed log 2018-02-21 01:11:41 +01:00
Wim
d1227b5fc9 Use prefixed-formatter for better logging 2018-02-21 00:20:25 +01:00
Wim
6ea368c383 Move Sirupsen => sirupsen 2018-02-20 23:41:09 +01:00
Wim
7886f05e88 Download (and upload) avatar images from mattermost and telegram when mediaserver is configured. Closes
An extra avatarMap (cache) is created for mattermost and telegram.
If MediaServerUpload is configured, the avatar images of users are downloaded the first time a
user sends a message.
If this download succeeds a message with EVENT_AVATAR_DOWNLOAD is sent to the originating protocol.
This message also contains a SHA field (in msg.Extra["file"]), if this is not empty, the sha will
be added to the avatarMap. (so we now have a userid-sha cache)

Next time this user sends a message, the MediaServerUpload/sha/userid.png URL will be used as the
avatar field.
2018-02-20 01:15:25 +01:00
Wim
80822b7fff Send chat notification if media is too big to be re-uploaded to MediaServer. See 2018-02-03 01:11:11 +01:00
Wim
169c614489 Download files and reupload to supported bridges (mattermost). Closes 2018-02-02 20:23:55 +01:00
Wim
64a20ee61b Add URL to message in webhook if available (mattermost). See 2018-01-31 17:35:13 +01:00
Wim
8e78b3e6be Fix regression in mattermost bridge (mattermost). Closes 2018-01-01 14:20:16 +01:00
Wim
265457b451 Refactor and add MediaDownloadSize to General 2017-12-19 23:15:03 +01:00
Wim
36a800c3f5 Add support for comments from slack file uploads (slack) 2017-11-13 00:20:31 +01:00
Wim
7aabe12acf Fix loop, make megacheck happy 2017-09-21 23:15:04 +02:00
Wim
c4b75e5754 Download files from slack and reupload to mattermost (slack/mattermost). Closes
Refactor message.Extra to a map[string][]interface{} to have a bit more flexibility
for stuffing extra stuff.

For attached files from slack, files < 1MB size get downloaded (in memory), and get
put into Extra["file"][]config.FileInfo (containing a pointer to the buffer and
the filename). This is not async so slack channels with lots of attached files
may suffer a slowdown. (the download timeout is set at 5 seconds).
2017-09-21 22:35:21 +02:00
Wim
47b7fae61b Fix loop from webhook by adding matterbridge prop (mattermost). Closes 2017-09-18 23:53:30 +02:00
Wim
1a40b0c1e9 Relay attachments from mattermost to slack (slack). Closes 2017-09-18 23:51:27 +02:00
Wim
82588b00c5 Use override username if specified (mattermost). 2017-09-18 21:18:31 +02:00
Wim
ed01820722 Add support for deleting messages across bridges.
Currently fully support mattermost,slack and discord.
Message deleted on the bridge or received from other bridges will be
deleted.

Partially support for Gitter.
Gitter bridge will delete messages received from other bridges.
But if you delete a message on gitter, this deletion will not be sent to
other bridges (this is a gitter API limitation, it doesn't propogate edits
or deletes via the API)
2017-09-11 22:45:15 +02:00
Wim
9039720013 Send images when text is empty regression. (mattermost). Closes 2017-09-08 00:16:17 +02:00