summaryrefslogtreecommitdiffstats
path: root/bridge/discord
Commit message (Collapse)AuthorAgeFilesLines
* Return a message ID when sending with a webhook (discord) (#1976)Joseph Mansy2023-03-141-5/+11
| | | Resolves #1975
* Add handlers at the end. Fixes #1988 (discord) (#2011)Wim2023-03-111-11/+13
|
* Ignore events from other guilds, add nosendjoinpart support (discord) (#1846)Sam W2022-06-242-1/+39
| | | | | | | | | | | | | | | | * discord: add nosendjoinpart support This allows the discord bridge to be configured with `nosendjoinpart`, preventing discord-originating join/part messages from being send to other bridged platforms. * discord: Ignore incoming events for other guilds Ignore all incoming discord events originating from Guild IDs other than the one we have configured. This is necessary because discord bots receive events for *all* discord guilds that they are present in. Fixes #1612
* Add KeepQuotedReply option for matrix to fix regression (#1823)Wim2022-05-061-2/+0
| | | | | | | | | | | | Matrix quotes replies and as of matterbridge 1.24.0 we strip those as this causes issues with bridges support threading and have PreserveThreading enabled. Introduced via https://github.com/42wim/matterbridge/commit/9a8ce9b17e560433731eb5efa3cee7ced0b93605 But if you for example use mattermost or discord with webhooks you'll need to enable this if you want something that looks like a reply from matrix. See issues: - https://github.com/42wim/matterbridge/issues/1819 - https://github.com/42wim/matterbridge/issues/1780
* Change discord non-native threading behaviour (discord) (#1791)Wim2022-04-041-1/+2
| | | | | | | | Sorta regression introduced by 9a8ce9b17e560433731eb5efa3cee7ced0b93605 which changes the way we get replies of matrix. This causes issues like https://github.com/42wim/matterbridge/issues/1780 We "fix" this by mimicking the old behaviour when "PreserveThreading" is disabled.
* Switch to discordgo upstream again (#1759)Wim2022-03-127-9/+9
| | | | | * Switch to upstream discordgo again * Fix discord api changes
* Add more debug options for discord (#1712)Wim2022-02-062-2/+11
| | | | | debuglevel=1 dumps every received discord event debuglevel=2 dumps every discord event we are sending to discord (also logs sensitive information)
* Add support for deleting files from slack to discord. Fixes #1705 (#1709)Wim2022-02-051-4/+37
| | | | | | | | | | | | | | | | | | | | | | | | We create a new event EventFileDelete which will be used to delete specific uploaded files using the Extra["file"] in the config.Message. We also add a new NativeID key to the FileInfo struct which will contain the native file ID of the sending bridge. When a new file is added to the config.Message.Extra["file"] map, now the bridge native file ID should be added here. When the receiving bridge receives such a message, it should keep an internal mapping of NativeID <> bridge fileid/message id. In the case of discord we map it to the resulted discord message ID after uploading it. Now when a bridge deletes a file, it should send a EventFileDelete and setting the ID to the native file ID of the bridge. When the receiving bridge will get this event it'll look into the NativeID <> bridge id mapping to find their internal ID and use it to delete the specific file on their side. For now this is implemented for slack to discord but this will be add to other bridges where useful.
* Add comments to messages (telegram) (#1652)Soloam2021-12-121-4/+2
| | | | | | | | | | | | | * Add's comments to message in telegram messages This is a change to handle comments in telegram messages! Some messages in telegram have comments added to the message! This normally is the description in images or links. This changes appends the comment to the message if available. This should fix the issue in #1649 * [fix] discord: send comments in extras Co-authored-by: Wim <wim@42.be>
* Add a MessageClipped option to set your own clipped message. Closes #1359 ↵Wim2021-05-272-3/+3
| | | | (#1487)
* discord: Add AllowMention to restrict allowed mentions (#1462)Alexandre GV2021-05-133-12/+41
| | | | | | | | | | | | | | | | | | | | | | | | | * Add DisablePingEveryoneHere/DisablePingRoles/DisablePingUsers keys to config * Add basic AllowedMentions behavior to discord webhooks * Initialize b.AllowedMentions on Discord Bridger init * Call b.getAllowedMentions on each webhook to allow config hot reloading * Add AllowedMentions on all Discord webhooks/messages * Add DisablePingEveryoneHere/DisablePingRoles/DisablePingUsers to matterbridge.toml.sample * Change 'Disable' for 'Allow' and revert logic in Discord AllowedMentions * Update Discord AllowedMentions in matterbridge.toml.sample * Fix typo in DisableWebPagePreview * Replace 'AllowPingEveryoneHere' with 'AllowPingEveryone' * Replace 3 AllowPingEveryone/Roles/Users bools with an array * Fix typo
* Declare GUILD_MEMBERS privileged intent (discord) (#1428)James Lu2021-03-201-0/+5
| | | | | | | | Without this declared, it seems that Discord will not send any member update events after connection, even if the privileged gateway intent is enabled for the bot in settings. This causes nick tracking to get out of sync when people change their nicks after the bot connects. See: https://discord.com/developers/docs/topics/gateway#gateway-intents
* Use valid transmitter Log default (discord) (#1402)Qais Patankar2021-02-151-1/+1
| | | | | | * Use valid transmitter Log default (discord) Using a logger created by `log.NewEntry(nil)` would crash. (matterbridge does not encounter this issue as it updates the Log field manually.)
* Pick up all the webhooks (discord) (#1383)Wim2021-02-011-1/+0
|
* Add an even more debug option (discord) (#1368)Wim2021-01-231-0/+5
| | | Enable discordgo debugging with debuglevel=1 under the [discord.xxx] section, for even more debugging fun.
* Improve Markdown in transmitter docs (discord) (#1351)Qais Patankar2021-01-031-6/+7
|
* Refactor "msg-parent-not-found" to config.ParentIDNotFound (#1347)Qais Patankar2020-12-311-2/+2
|
* Reject cross-channel message references (discord) (#1345)Qais Patankar2020-12-311-3/+3
| | | | | | | Discord message references have been designed in a way for this to support cross-channel or even cross-guild references in the future. This will ensure the ParentID is *not* set when the message refers to a message that was sent in a different channel.
* Add a prefix handler for unthreaded messages (discord) (#1346)Qais Patankar2020-12-311-0/+6
|
* Add threading support with token (discord) (#1342)Wim2020-12-312-2/+20
| | | | | | | | 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.
* Fix 'webook' typo in discord/webhook.go (#1344)Qais Patankar2020-12-311-1/+1
|
* Update webhook documentation (discord) (#1335)Qais Patankar2020-12-171-5/+0
|
* Split Bdiscord.Send into handleEventWebhook and handleEventBotUser (discord)Qais Patankar2020-12-132-43/+53
|
* Move webhook specific logic to its own file (discord)Qais Patankar2020-12-132-94/+102
|
* Extract maybeGetLocalAvatar into its own function (discord)Qais Patankar2020-12-131-15/+17
|
* Remove WebhookURL support (discord)Qais Patankar2020-12-132-9/+15
|
* Add initial transmitter implementation (discord)Qais Patankar2020-12-135-120/+371
| | | | | | This has been tested with one webhook in one channel. Sends, edits and deletions work fine
* Revert "Disable webhook editing (#1296)" (discord)Qais Patankar2020-12-131-10/+6
| | | | This reverts commit c23252ab53182cc6e68086f29c7137fbc27917ee.
* Refactor guild finding code (discord) (#1319)Qais Patankar2020-12-031-18/+35
|
* Disable webhook editing (discord) (#1296)Wim2020-11-221-6/+10
| | | | | | | See https://github.com/42wim/matterbridge/issues/1255 and https://github.com/qaisjp/go-discord-irc/issues/57 Webhook edits gets ratelimited which cause other problems with matterbridge. Disabling for now.
* Update webhook messages via new endpoint (discord)Simon THOBY2020-11-142-56/+17
| | | | | | | | | | | | When using the webhook, the previous method to edit a message was to delete the old one via the classical API, and to create a new message via the webhook. While this works, this means that editing "old" messages lead to a mess where the chronological order is no longer respected. This uses an hidden API explained in https://support.discord.com/hc/en-us/community/posts/360034557771 to achieve a proper edition using the webhook API. The obvious downside of this approach is that since it is an undocumented API for now, so there is no stability guarantee :/
* Fix webhook EventUserAction messages being skipped (discord) (#1133)Qais Patankar2020-05-111-1/+1
| | | Fixes #1132
* Fix #1049: missing space before embeds (discord) (#1124)Qais Patankar2020-05-072-6/+6
|
* Fix #1120: replaceAction "_" crash (discord) (#1121)Qais Patankar2020-04-251-2/+3
|
* Add an ID cache (discord). Fixes #1106 (#1111)Wim2020-04-212-0/+43
| | | | | | | | When a webhook "edits" a message, it does this by deleting the message and creating a new one with the new content. On creation of this new message, we'll get another ID then already is know by the gateway in its id cache. So we add it in our own cache and replace it whenever we want to edit/delete it again.
* Don't transmit typing events from ourselves (slack/discord) (#1056)Qais Patankar2020-03-222-0/+7
|
* Strip extra info from emotes (discord) (#1052)Qais Patankar2020-03-222-0/+8
|
* Fix duplicate separator on empty description/url (discord). Fixes #1008 (#1035)Wim2020-03-212-1/+89
| | | | Make this work for all possible cases. Add tests
* Fix #1027: warning when handling inbound webhooks (discord) (#1044)Qais Patankar2020-03-181-3/+3
|
* Refactor webhook permission checksQais Patankar2020-03-181-8/+10
|
* Fix #1040: spotty webhook permission verificationQais Patankar2020-03-181-3/+7
|
* Remove replace directives and use own fork to make go get work again (#1028)Wim2020-03-083-3/+3
| | | | See https://github.com/golang/go/issues/30354 go get doesn't honor the go.mod replace options.
* Add ability to procure avatars from the destination bridge (#1000)Qais Patankar2020-02-091-0/+21
| | | | | | | | | | | | * remote_avatar: add UseLocalAvatar * remote_avatar: make sure msg.Protocol is always set correctly * remote_avatars: support msg.Account * remote_avatar: add to matterbridge.toml.sample * remote_avatar: clarify something
* Check only bridged channels for PermManageWebhooks (discord) (#1001)Qais Patankar2020-02-081-4/+5
| | | | | | * Check only bridged channels for PermManageWebhooks * add note
* Show file comment in webhook if normal message is empty (discord). Fixes ↵Wim2020-02-021-0/+5
| | | | #962 (#995)
* Fix channel ID problem with multiple gateways (discord). Fixes #953 (#977)Wim2020-01-093-19/+9
|
* move stripCustomoji logic to default Tengo script (#973)c0ncord22020-01-092-6/+0
| | | | | | | | | | | | * move stripCustomoji logic to default Tengo script Removing the image ID from the message (without any possibility of recovering it later) is a loss of valuable data that prevents users from giving support to custom emoji via Tengo scripts. * bugfix - do send colors to other irc bridges "if we're not sending to an irc bridge we strip the IRC colors" Co-authored-by: c0ncord <59654954+c0ncord@users.noreply.github.com>
* Update vendor (#932)Wim2019-10-271-1/+4
| | | | | | * Update vendor * Fix godiscord api change
* Remove obsolete file upload links (discord). Fixes #908 (#931)Wim2019-10-271-12/+0
| | | | Since v1.16.0 we now can upload files via webhook. Old way of showing files with webhook only setup can be removed.
* Add UserTypingSupport (discord) (#914)Qais Patankar2019-10-042-0/+22
| | | | | | | | * Add Discord to UserTypingSupport * discord: start typing in a channel on EventUserTyping receive * discord: emit EventUserTyping to gateway