Add Support For Scheduled Messages via MSC4140#2671
Open
jasonlaguidice wants to merge 2 commits intocinnyapp:devfrom
Open
Add Support For Scheduled Messages via MSC4140#2671jasonlaguidice wants to merge 2 commits intocinnyapp:devfrom
jasonlaguidice wants to merge 2 commits intocinnyapp:devfrom
Conversation
|
All contributors have signed the CLA ✍️ ✅ |
Author
|
I have read the CLA Document and I hereby sign the CLA |
ajbura
added a commit
to cinnyapp/cla
that referenced
this pull request
Feb 20, 2026
7d7b865 to
3b7e7b4
Compare
|
I have read the CLA Document and I hereby sign the CLA |
Member
|
Thanks for the contribution! 🙌 For new features, we usually ask contributors to first open an issue or start a discussion so the maintainers can review the proposal and make sure it aligns with the project's roadmap. Could you please create a feature request issue describing the motivation and proposed solution? Once the discussion is complete and the feature is approved, we’ll be happy to review the PR. I’ll keep this PR on hold for now until the issue is created and discussed. Thanks again for your effort! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR adds the ability to schedule messages in rooms (both encrypted and otherwise) using the framework established in MSC4140 (cancellable delayed events).
I noticed that the API Cinny uses already has support for the unstable spec endpoints so this seemed like a pretty easy add.
This adds a chevron next to the send button which opens a simple date/time picker. When selected to schedule, the send icon changes to a clock and is given a color to indicate this will schedule the message instead of send per normal. The message is sent as a delayed event using MSC4140. There are some limitations to this - the API doesn't provide any method to decrypt these events so scheduled events in encrypted rooms can't be retrieved... only deleted. The other notable one is that the server has to support MSC4140 (and have a suitably large max allowable delay).
The chevron and options should only appear if the server reports that it supports MSC4140.
Scheduled messages in the selected room, if present, will display a chip with the count of scheduled messages. Clicking the chip will expand the selection, showing all scheduled messages in the room with the option to edit the message or cancel the scheduled send. As mentioned above - encrypted messages will NOT be previewed (and are just displayed as Encrypted Message) and there is no option to edit - only delete.
I have tested this against my homeserver and everything seems to be working as intended. But would like to open this up for others to help push buttons and find scenarios when this shouldn't work.
Future/pending changes to the Matrix API used should be simple fixes, if required at all.
Fixes #
Type of change
Checklist: