Gerardo Rodriguez
6f6367f7d3
msgconv: keep the text of poll messages as its own part
2026-11-09 01:30:54 +00:00
Gerardo Rodriguez
277de21275
msgconv: bridge Discord polls and poll results
2026-11-09 01:29:22 +00:00
indent[bot]
28e559c5bd
msgconv/from-discord: log messages that convert to no parts ( #304 )
...
Co-authored-by: Indent <noreply@indent.com>
2026-11-05 13:28:49 +00:00
Gerardo Rodriguez
e834d3abdc
msgconv/from-discord: bridge media and embeds in forwarded messages ( #288 )
2026-11-02 13:11:04 +00:00
Gerardo Rodriguez
2e7fcc6119
msgconv/from-discord: bridge guild member and webhook profiles ( #289 )
2026-11-02 11:18:16 +00:00
indent[bot]
4f82d1a9de
msgconv/from-discord: fall back to the thumbnail when a video embed has no proxy URL ( #290 )
...
Co-authored-by: Indent <noreply@indent.com>
2026-11-01 13:12:37 -05:00
Nick Mills-Barrett
5b528a6aed
handlematrix: report Discord's definite rejections as permanent failures ( #282 )
...
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 13:10:50 +00:00
Nick Mills-Barrett
28043011de
handlematrix,msgconv: report unsupported actions with proper statuses ( #277 )
2026-10-19 14:00:49 +01:00
Gerardo Rodriguez
6c79932f94
msgconv: Avoid dropping Discord messages with mentions or incomplete replies ( #258 )
2026-09-26 10:40:58 -04:00
Skip R
8bcc39ec3b
bump to discordgo e194251224ed and correct all flag logic
2026-07-14 08:36:16 -07:00
Skip R
5f13d00432
handlediscord,msgconv: handle attachment editing properly
...
Finally begin assigning stable part IDs when creating message parts.
2026-07-02 05:52:35 -07:00
Skip R
b05860dccb
disable per-message-profile hack by default
2026-06-18 22:08:38 -07:00
Skip R
3ef21aabaf
msgconv: enforce filename extensions on outgoing voice messages
2026-06-17 23:10:43 -07:00
Gerardo Rodriguez
e8a6e93ce0
msgconv: correctly send OriginalContentType on outgoing attachments ( #232 )
...
Co-authored-by: Skip R <tinyslices@gmail.com>
2026-06-16 19:44:58 -07:00
Skip R
da6a633470
msgconv/from-discord: inline PerMessageProfileForSender usage
...
This is removed from mautrix 0.27.0.
2026-04-21 15:08:43 -07:00
Skip R
af4cf49217
make method receiver names more consistent
2026-04-06 20:45:01 -07:00
Skip R
c88ffbc9ba
directmedia: reimplement in-memory URL cache
2026-03-23 21:58:05 -07:00
Skip R
dd2c2ec0c9
directmedia: sketch implementation
2026-03-20 02:39:40 -07:00
Skip R
744ba4190b
msgconv/from-discord: improve look of backfilled user joins
2026-03-18 23:59:25 -07:00
Skip R
8270a9462d
handlediscord: bridge live user joins as membership events
2026-03-18 23:58:50 -07:00
Skip R
f041f78c09
msgconv/from-matrix: support voice messages
2026-03-17 10:20:31 -07:00
Skip R
f796e4cef6
msgconv/from-discord: tweak incoming call message
2026-03-12 19:26:58 -07:00
Skip R
961a89beba
msgconv/formatter: escape role and channel names
2026-03-12 18:59:59 -07:00
Skip R
a2c65ee47c
msgconv/formatter: fix inbound mention handling
...
* Check for user logins as well as fetching a ghost. This fixes
mentioning other Matrix users (when split portals are off), or
yourself.
* Escape display names.
* Gracefully fail when failing to locate any useful information.
2026-03-12 18:56:54 -07:00
Skip R
1dce5fa9ff
msgconv/from-matrix: don't send allowed_mentions for now
2026-03-12 18:18:31 -07:00
Skip R
2b3b058750
msgconv/from-matrix: convert user pills
2026-03-12 18:17:18 -07:00
Skip R
6959888bbd
msgconv: change animated sticker mime type
...
This matches with what Beeper Desktop expects.
2026-03-11 17:33:02 -07:00
Skip R
a2933d989b
msgconv: do not create stub portals when formatting channel mentions
2026-03-04 20:23:23 -08:00
Skip R
cfe1d24d19
connector: handle receivers correctly and consolidate thread routing
...
* The split_portals config option is finally respected.
* This should prevent future room duplication when migrating from the
pre-bridgev2 version of the bridge, as we'll finally address guild
channels properly (that is, without a Receiver set, unless
split_portals is true).
2026-03-04 19:15:46 -08:00
Skip R
8e51cf25aa
msgconv: populate reply information even when target isn't in db
...
We can't rely on the reply target to be in the database because that
won't be true during backwards backfill. Populate it more eagerly.
2026-03-03 22:12:49 -08:00
Skip R
5d9e2373d9
msgconv/from-discord: propagate reply log to context
2026-03-03 20:13:12 -08:00
Skip R
55c0272903
handlediscord: initial pass at threads support
2026-02-27 06:44:09 -08:00
Skip R
ea3052e567
handlediscord: sync roles from guilds
2026-02-27 06:44:09 -08:00
Skip R
91f8d2b269
support custom emojis
2026-02-17 19:45:12 -08:00
Skip R
dfa9c52974
discordid: make function names more explicit
...
These are fairly wordy but help maintain correctness. A channel portal
ID should not be confused with a guild portal ID.
2026-02-13 21:19:07 -08:00
Skip R
7a6f59ad73
handlematrix: bridge message edits
2026-02-09 15:04:33 -08:00
Skip R
abcc0dca47
msgconv/from-discord: port sticker conversion
2026-02-09 14:13:54 -08:00
Skip R
1fcc910184
msgconv/from-discord: add per-message profiles
2026-02-06 17:42:51 -08:00
Skip R
094bc9bd77
connector: support transaction IDs
2026-02-03 22:03:29 -08:00
Skip R
92352ce603
discordid: remove all ID-related casts
...
In the same vein as mautrix-whatsapp, -slack and others, do not make
assumptions about how the ID is represented in the connector code. Let
the discordid package be entirely responsible.
2026-02-01 21:09:17 -08:00
Tulir Asokan
e7554b212f
msgconv/attachments: don't fail if mimeless file has less than 512 bytes
2026-01-28 17:37:34 +02:00
Tulir Asokan
d89746d099
msgconv: clean up reuploading attachments to Matrix
2026-01-28 17:21:19 +02:00
Skip R
1a3144d2d0
msgconv/from-discord: bridge replies
2026-01-27 22:29:55 -08:00
Skip R
b8a01bf9d4
msgconv/from-discord: use a tagged switch instead of if
2026-01-27 19:12:26 -08:00
Skip R
578030a9dd
msgconv/from-discord: only complain about portal when we can't find it
2026-01-27 19:11:57 -08:00
Skip R
2f8de6635a
msgconv/from-discord: refactor forwarded message conversion
2026-01-27 19:10:58 -08:00
Skip R
ac338ee722
msgconv: correctly bridge attachments and embeds
...
`URL` needs to be set if the room/attachment is unencrypted; otherwise,
`File` needs to be set.
2026-01-14 18:07:15 -08:00
Skip R
bdbfd661a2
msgconv: don't set EncryptedFile if there isn't one
...
FIXME: This probably isn't proper handling, but this is enough to
prevent panics.
2026-01-13 14:50:35 -08:00
Skip R
f5292e6a7d
connector: first pass at bridging guilds
...
For each guild specified in the config, create a space and bridge all
contained text channels that the user has permissions to view.
* Finally add a custom config struct where we accept a list of guild IDs
to bridge. This is intended to be temporary as we flesh out the proper
interfaces for managing which guilds to bridge.
* Defined a custom meta type for portals that holds the containing guild
ID of the channel (if any).
* Transferred the responsibility of building a channel's ChatInfo and
ChatMemberList to the DiscordChatResync event itself.
2026-01-09 19:57:17 -08:00
Skip R
fdcfb2b083
chore: bump copyright year
2026-01-08 16:56:13 -08:00