Wim
d59c51a94b
Remove unnecessary check, make megacheck happy
7 years ago
Wim
47b7fae61b
Fix loop from webhook by adding matterbridge prop (mattermost). Closes #261
7 years ago
Wim
1a40b0c1e9
Relay attachments from mattermost to slack (slack). Closes #260
7 years ago
Wim
82588b00c5
Use override username if specified (mattermost). #260
7 years ago
Wim
14490bea9f
Add partial support for deleted messages (telegram)
7 years ago
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)
7 years ago
Wim
90a61f15cc
Do not break messages on newline (slack). Closes #258
7 years ago
Wim
9039720013
Send images when text is empty regression. (mattermost). Closes #254
7 years ago
Wim
a3470f8aec
Send first message after connect (slack). Closes #252
7 years ago
Wim
01badde21d
Add message debugging (gitter)
7 years ago
Wim
37c350f19f
Convert utf-8 back to charset (irc). #247
7 years ago
Wim
9e03fcf162
Fix private channel joining bug (mattermost). Closes #248
7 years ago
Wim
9226252336
Replace mentions from other bridges. (slack). Closes #233
7 years ago
Wim
f4fb83e787
Use the detected charset (irc)
7 years ago
Wim
e7fcb25107
Add a charset option (irc). Closes #247
7 years ago
Wim
2f7df2df43
Do not add messages without ID to cache
7 years ago
Wim
e45c551880
Add support for editing messages. Remove ZWSP as loopcheck (gitter)
7 years ago
Wim
7a86044f7a
Add support for editing messages (telegram)
7 years ago
Wim
8b98f605bc
Add support for editing messages (slack)
7 years ago
Wim
7c773ebae0
Add support for editing messages across bridges. Currently mattermost/discord.
...
Our Message type has an extra ID field which contains the message ID of the specific bridge.
The Send() function has been modified to return a msg ID (after the message to that specific
bridge has been created).
There is a lru cache of 5000 entries (message IDs). All in memory, so editing messages
will only work for messages the bot has seen.
Currently we go out from the idea that every message ID is unique, so we don't keep
the ID separate for each bridge. (we do for each gateway though)
If there's a new message from a bridge, we put that message ID in the LRU cache as key
and the []*BrMsgID as value (this slice contains the message ID's of each bridge that
received the new message)
If there's a new message and this message ID already exists in the cache, it must be
an updated message. The value from the cache gets checked for each bridge and if there
is a message ID for this bridge, the ID will be added to the Message{} sent to that
bridge. If the bridge sees that the ID isn't empty, it'll know it has to update the
message with that specific ID instead of creating a new message.
7 years ago
Wim
5a8d7b5f6d
Modify Send() to return also a message id
7 years ago
Wim
cfb8107138
Relay notices (matrix). Closes #243
7 years ago
Wim
43bd779fb7
Handle leave/join events (slack). Closes #246
7 years ago
Wim
7f9a400776
Add support for personal access tokens (mattermost)
...
* https://docs.mattermost.com/developer/personal-access-tokens.html
7 years ago
Wim
e77c3eb20a
Swap token/id. Also check for default webhookURL in isWebhookID (discord)
7 years ago
Wim
28710d0bc7
Allow a webhookurl per channel (discord). #239
7 years ago
anon724
67905089ba
Add UseUserName option (discord) ( #234 )
7 years ago
Wim
f2483af561
Do not modify username in action (discord)
7 years ago
Wim
f8e6a69d6e
Add action support for slack,mattermost,irc,gitter,matrix,xmpp,discord. #199
7 years ago
Wim
38d09dba2e
Update vendor (go-irc)
7 years ago
Wim
ba653c0841
Ignore edited messages with reactions (mattermost)
7 years ago
Wim
83ef61287e
Refactor. Add tests
7 years ago
Wim
bd97357f8d
Disable message from other bots when using webhooks (slack)
7 years ago
Wim
0f791d7a9a
Handle reconnections better (xmpp). Closes #222
7 years ago
Wim
0302e4da82
Fix webhookurl/webhookbindaddress panic (mattermost). Closes #221
7 years ago
Wim
dc8743e0c0
Tag messages we send ourself using CallbackID hack (slack). Closes #219
7 years ago
Jerry Heiselman
cc5ce3d5ae
Suppress parent message when child message is received (slack) ( #218 )
...
* Suppress parent message when child message is received
When a thread is started in Slack and a user makes a comment on the thread, matterbridge sends the original parent message again on each child comment. This change suppresses that.
* Update slack.go
Moved determination of ThreadTimestamp to handleSlackClient so the MMMessage struct doesn't need to be modified
* Ran 'go fmt'
7 years ago
Wim
778abea2d9
Add support for fallback/text in attachments (slack)
7 years ago
Wim
20a7ef33f1
Make sure bot doesn't loop now we relay bot messages (slack)
7 years ago
Wim
04e0f001b0
Fix discordgo api changes
7 years ago
Wim
335ddf8db5
Fix lookup bot username (slack). #213
7 years ago
Wim
4aa646f6b0
Use GetFileLinks. Also show links to non-public files (mattermost)
7 years ago
Wim
9dcd51fb80
Refactor connecting logic slack/mattermost. Fixes #216
7 years ago
Wim
6dee988b76
Fix megacheck / go vet issues
7 years ago
Wim
8411f2aa32
Lookup bot username (slack). #213
7 years ago
Wim
b75cf2c189
Replace HTML entities (slack). #215
7 years ago
Wim
870b89a8f0
Fix embeds (discord). Closes #202
7 years ago
Wim
bfc7130ed8
Try to detect the charset and convert it to utf-8. (irc). Closes #209 #210
7 years ago
Wim
2338c69d40
Add UseInsecureURL option (telegram)
7 years ago
Wim
c714501a0e
Fix channel id off by 0x18000000000000 (steam)
7 years ago
Wim
830361e48b
Deprecate URL,useAPI,BindAddress (slack,mattermost,rocketchat)
7 years ago
Wim
25ac4c708f
Add more debugging (discord)
7 years ago
Wim
c268e90f49
Remove label from URLs (slack). Closes #205
...
If slack detects a text contains an url it changes it to <http://url |url>.
Strip the |url so that http://url remains.
7 years ago
Sacha Aury - Wolfman
c17512b7ab
Add webhook posting mode for discord. ( #204 )
...
Using it implies to configure a Webhook on discord and set the parameter :
- WebhookURL (New parameter, discord-specific)
Discord API does not allow to change the name of the user posting, but webhooks does.
This makes the relay much more elegant, even if we might lose some more advanced features.
Signed-off-by: saury07 <sacha.aury@gmail.com>
7 years ago
Wim
1b837b3dc7
Add ShowEmbeds option (discord). #202
7 years ago
Wim
276ac840aa
Add initial steam support
7 years ago
Wim
62e9de1a3b
Use the last (and biggest) photo to relay (telegram). Closes #184
7 years ago
Wim
2ddc4f7ae9
Add UserID to each message. Closes #200
7 years ago
Wim
2dd402675d
Sent only the biggest picture to bridges (telegram)
7 years ago
Wim
25b1af1e11
Add option IgnoreMessages to ignore messages based on regexp. (all). Closes #70
7 years ago
Wim
75fb2b8156
Make reconnection more robust (irc). #153
7 years ago
Wim
2a403f8b85
Add initial sticker/video/photo/document support (telegram). #184
7 years ago
Wim
c3d45a9f06
Do not relay join/part of ourselves (irc). Closes #190
7 years ago
Wim
511f653e6e
Fix incorrect behaviour of EditDisable (mattermost). Fixes #197
7 years ago
Wim
4b839b9958
Avoid nil in usermembermap (discord). See #198
7 years ago
Wim
359d0f2910
Allow reuse of api in different gateways. See #189
7 years ago
Wim
ad3cb0386b
Add token authentication (api)
7 years ago
Wim
2eecaccd1c
Change to lowercase JSON keys (api)
7 years ago
Wim
5f30a98bc1
Add gateway name to messages
7 years ago
Wim
b8a2fcbaff
Post valid JSON (api). See #185
7 years ago
Wim
c0c4890887
Add hashtag to channel (discord)
7 years ago
Wim
9bcd131e66
Reset variables each loop (telegram). Closes #181
7 years ago
Wim
9d9cb32f4e
Limit message length (irc). Closes #179
7 years ago
Wim
87229bab13
Fix sending to different channels on same account (slack). Closes #177
7 years ago
Wim
3812693111
Replace long ids in channel metions (discord). Fixes #174
7 years ago
Wim
dd3c572256
Fix possible crash on nil (discord)
7 years ago
siinus
ef278301e3
Fix JoinChannel argument to use IRC channel key ( #172 )
7 years ago
Wim
2888fd64b0
Add UseFirstName option (telegram). Closes #144
7 years ago
Wim
4036d4459b
Add NoHomeServerSuffix. Option to disable homeserver on username (matrix). Closes #160 .
7 years ago
Frank
ee643de5b6
Add Compatibility for Cisco Jabber (xmpp) ( #166 )
8 years ago
Wim
d300bb1735
Relay messages starting with ! (irc). Closes #164
8 years ago
Wim
4fcedabfd0
Revert "Add support for edited messages (gitter)"
...
This reverts commit 17b8b86d68
.
Reverted because of lingering file descriptors (memory leak)
8 years ago
Wim
246c8e4f74
Ignore error on private channel join (slack) Fixes #150
8 years ago
Wim
4d2207aba7
Add support for edited messages (slack)
8 years ago
Wim
17b8b86d68
Add support for edited messages (gitter)
8 years ago
Wim
fdb57230a3
Add support for edited messages (mattermost)
8 years ago
Wim
7469732bbc
Add support for edited messages (telegram)
8 years ago
Wim
d1dd6c3440
Add support for edited messages (discord)
8 years ago
Wim
02612c0061
Add support for sending edited messages
8 years ago
Wim
035c2b906a
Strip custom emoji metadata (discord). Closes #148
8 years ago
Wim
b469c8ddbd
Rejoin channel when kicked (irc). Closes #146
8 years ago
Wim
eee0036c7f
Modify iconurl correctly (mattermost). Closes #145
8 years ago
Wim
89c66b9430
Reconnect on session removal (mattermost)
8 years ago
Wim
bd38319d83
Add support for showing/hiding join/leave messages from mattermost. Closes #147
8 years ago
Wim
57176dadd4
Support edited messages (telegram). See #141
8 years ago
Wim
dd449a8705
Remove debug info (irc)
8 years ago
Wim
587ad9f41d
Remove space after nick (mattermost). Closes #142
8 years ago
Wim
a16ad8bf3b
Reuse connection when using same bridge with another gateway. See #87
8 years ago
Wim
2e4d58cb92
Refactor
8 years ago
Wim
f935c573e9
Allow bot tokens for now without warning (slack). Closes #140
8 years ago
Wim
c30ffeb81e
Fix roomid bug (gitter)
8 years ago
Wim
80895deae2
Replace role ids in mentions to role names (discord). Closes #133
...
* The bot needs to have the "Manage Roles" permission for this to work.
(see Server settings - Roles - General Permissions)
8 years ago
Wim
eddc691fc9
Join rooms not already joined by the bot (gitter). See #135
8 years ago
Wim
fd8cfb11fb
Fail when bridge is unable to join a channel (general)
8 years ago
Wim
9407aa4600
Check if room exists when joining channel (gitter). Closes #135
8 years ago
Wim
32bbab8518
Do not use HTML parsemode by default. Set MessageFormat="HTML" to use it. (telegram) Closes #126
8 years ago
Wim
84c0b745af
Use roomalias instead of internal ID (matrix)
8 years ago
Wim
c5cfbc2297
Add matrix support
8 years ago
Wim
73f01ad8d8
Add REST API support
8 years ago
Wim
072cac0347
Do not relay slackbot messages (slack). Closes #119
8 years ago
Wim
dc37232100
Refactor. Make extra options easier for other protocols
8 years ago
Wim
163f55f9c2
Refactor to handle disconnects/reconnects better.
...
Now try to reconnect every 60 seconds until forever.
8 years ago
Wim
2d16fd085e
Use nickname when present (discord). Closes #122
8 years ago
Wim
2b0f178ba3
Fix receiving messages from private channels (slack). See #118
8 years ago
Wim
79e6c9fa6c
Update vendor
8 years ago
Wim
53e9664cde
Add support for private channels (slack). Closes #118
8 years ago
Wim
dcccd43427
Use unknown as username if unsigned channel (telegram)
8 years ago
Wim
5f8b24e32c
Fix username (telegram)
8 years ago
Wim
678a7ceb4e
Fix channel and group messages (telegram)
8 years ago
Josip Janžić
9bf10e4b58
Fix tls by setting ServerName (xmpp) ( #114 )
...
Fixes error message shown by tls: "either ServerName or InsecureSkipVerify must be specified in the tls.Config"
8 years ago
Stefan Haller
01a32b2154
Handle SkipTLSVerify for XMPP client ( #106 ). Closes #81
...
* Handle SkipTLSVerify for XMPP client
* Mention SkipTLSVerify for XMPP in sample config
8 years ago
Wim
b3c3142bb2
Do not use API functions in webhook (slack). Closes #110
8 years ago
Tatsuyuki Ishi
e3dda0e812
Telegram: add markdown ( #103 )
...
* Add support for markdown (telegram)
Close #98
* Telegram: add more Markdown Render blacklist
8 years ago
Wim
7685fe1724
Add channel key support (irc). Closes #27
8 years ago
Tatsuyuki Ishi
8b47670a74
Telegram: Fix the missing username
8 years ago
Wim
fee159541f
Add initial Rocket.Chat support
8 years ago
Wim
70c93d970c
Update public links to new API (mattermost)
8 years ago
Wim
4960273832
Do not relay empty or delayed messages (xmpp)
8 years ago
Wim
6c018ee6fe
Enable keepalive (xmpp)
8 years ago
Wim
20c04f7977
Fix loop because of closed channel. Fixes #89
8 years ago
Wim
e1641b2c2e
Add support for RemoteNickFormat in general configuration
8 years ago
Wim
e0e1e4be80
Add gateway.inout config for bidirectional bridges. Closes #85
8 years ago
Wim
d5845ce900
Replace id-mentions to usernames (slack). Closes #86
8 years ago
Wim
cef64e01b3
Remove callbacks after being called. Fixes #88 (irc)
8 years ago
Wim
cd18d89894
Add initial telegram support
8 years ago
Wim
449ed31e25
Fix ShowJoinPart from irc bridge. Closes #72
8 years ago
Wim
f7495dd0c3
Add bot tag to api if not specified (discord)
8 years ago
Wim
a11f77835d
Fix !users command for irc. Closes #78 .
8 years ago
Wim
4976338677
Merge branch 'refactor'
8 years ago
Wim
99d130d1ed
Refactor
8 years ago
Wim
1d5cd1d7c4
Sync with mattermost 3.5.0
8 years ago
Wim
a3dd0f1345
Add support for using avatars from discord,slack and gitter in slack
8 years ago
Wim
2dbe0eb557
Add support for dynamic IconURL (slack). Closes #43
8 years ago
Wim
c3a8b7a997
Refactor modifyMessage
8 years ago
Wim
581847f415
Update to latest go-gitter API changes
8 years ago
Wim
1b15897135
Fix tight loop (gitter). Closes #68 .
8 years ago
Wim
be513622ac
Add anti-flooding settings (irc). See #40
8 years ago
Wim
6f309f2108
Use names instead of id's for mentions (discord). Fixes #66
8 years ago
Wim
92d9db5a2d
Override config from environment. See #50
...
Expects uppercase environment variables of MATTERBRIDGE_PROTOCOL_ACCOUNT_KEY="value"
e.g. you can override this config
[mattermost]
[mattermost.work]
Team="yourteam"
Login="yourlogin"
Password="yourpass"
by using
MATTERBRIDGE_MATTERMOST_WORK_TEAM="newteam"
MATTERBRIDGE_MATTERMOST_WORK_LOGIN="newlogin"
MATTERBRIDGE_MATTERMOST_WORK_PASSWORD="newpassword"
8 years ago
Wim
96620a3c2c
Drop first received message on connection to avoid duplicates (slack). Fixes #55
8 years ago
Wim
5249568b8e
Wait until the welcome message before connection is ok (irc). Fixes #62
8 years ago
Wim
4a336a6bba
Forward channel notices too (irc)
8 years ago
Wim
035dc042a1
Fix teamid bug (mattermost)
8 years ago
Wim
dfc513530b
Ignore messages from ourself (irc bridge)
8 years ago
Wim
721e0a2dcd
Ignore private queries (irc bridge)
8 years ago
Wim
8452eb12da
Only respond to notices from nickserv (irc bridge)
8 years ago
Wim
475bed5e19
Add support for discord channel ID. See #57
8 years ago
Wim
40a967523c
Ignore empty content from discord. Fixes #58
8 years ago
Wim
d3a34af073
Add support for discord attachments. Fixes #59
8 years ago
Wim
e7107cf782
Use RTM only on API (slack). Fix #56
8 years ago
Wim
e93847a95e
Launch every account only once. Fixes #48
8 years ago
Wim
545377742c
Drop messages not from our mattermost team. Fixes #49
8 years ago
Wim
1e84afbd90
Rename discord guild to server.
8 years ago
Wim
4380c48b4b
Add irc names callback only on command. Fixes #51
8 years ago
Wim
db0e4ba8c5
Add error message about non-existing channels (slack)
8 years ago
Wim
e52b040b9c
Add more irc debug on connect (when debugging enabled)
8 years ago
Wim
fff6f08cb6
Add samechannel gateway. See #35
8 years ago
Wim
0e527a4252
Fix slack channel join
8 years ago
Wim
f10251a1a3
Fix mattermost bridge channel join
8 years ago
Wim
8c6be434ac
Remove newline splitting from outgoing mattermost messages. Should be handled by receiving bridge.
8 years ago
Wim
3ca4309e8a
Split newlines for irc ( #37 )
8 years ago
Wim
e8a2e1af63
Fix IRC colors regexp
8 years ago
Wim
1d240140c9
Strip IRC colors. Closes #33
8 years ago
Wim
272eef544f
Add support for mattermost attachments. Shows public link on bridges. Closes #32
8 years ago
Wim
fd756c5332
Use specified config file
8 years ago
Wim
dce600ad51
Fix joining slack/mattermost channels using the webhook
8 years ago
Wim
d02a737e0c
Cleanup debug messages
8 years ago
Wim
98ff59c716
Cleanup discord bridge debug/info messages
8 years ago
Wim
0e96e9f9be
Cleanup slack bridge debug/info messages
8 years ago
Wim
e8c7898583
Cleanup gitter bridge debug/info messages
8 years ago
Wim
11f4a6897a
Cleanup xmpp bridge debug/info messages
8 years ago
Wim
002c5fd0d1
Cleanup mattermost bridge debug/info messages
8 years ago
Wim
18504ec08d
Cleanup irc bridge debug/info messages
8 years ago
Wim
596096d6da
Add the discord bridge for real
8 years ago
Wim
a0b84beb9b
Add Discord support
8 years ago
Wim
7baf386ede
Refactor for more flexibility
...
* Move from gcfg to toml configuration because gcfg was too restrictive
* Implemented gateway which has support multiple in and out bridges.
* Allow for bridging the same bridges, which means eg you can now bridge between multiple mattermosts.
* Support multiple gateways
8 years ago
Wim
b30e85836e
Add Slack support
8 years ago
Wim
12389d602e
Add Gitter support
8 years ago
Wim
106404d32f
Fix info message
8 years ago
Wim
e06efbad9f
Remove unused code
8 years ago
Wim
3311c7f923
Refactor handleReceive
8 years ago
Wim
3a6c655dfb
Remove redundant function
8 years ago
Wim
e11d786775
Move nickformatting into bridge
8 years ago
Wim
889b6debc4
Add Connect() to Bridger interface
8 years ago
Wim
9cb3413d9c
Add Enable per section (protocol) instead of in general section
8 years ago
Wim
96e21dd051
Add documentation about breaking API changes for mattermost 3.3.0. Start work on 0.6.0-dev
8 years ago
Wim
6c6000dbbd
Update code to mattermost 3.3.0 API changes
8 years ago
Wim
ff94796700
Refactor bridge. Allows bridging between every protocol
8 years ago
Wim
1f72ca4c4e
Add initial XMPP support
8 years ago
Wim
79ffb76f6e
Add (PLAIN) SASL support
8 years ago
Wim
300cfe044a
Remove token check
8 years ago
Wim
fb586f4a96
Remove Port from IRC config. Specify it with server
8 years ago
Wim
ced371bece
Add port to BindAddress
8 years ago
Wim
a87cac1982
Remove multiple Token config. Use same channel setup as from matterbridge-plus
8 years ago
Wim
8fb5c7afa6
Remove UseSlackCircumfix. Use RemoteNickFormat
8 years ago
Wim
aceb830378
Converge with matterbridge-plus
8 years ago