Skip to content

Conversation

alexandreferris
Copy link
Member

  • Add new attributes for Create Conversation Request (add_permission, team and skip_creator)
  • Add new error type and handling for Operation Denied when user doesn't have permission to create a Channel
  • Update API Version to v10
  • Add a new method in ConversationService for creating a Channel
  • Add javadocs for creating a conversation in WireApplicationManager
  • Add tests for creating a Channel
  • Add sample for creating a Channel and keep current placeholder TeamId to be passed

PR Submission Checklist for internal contributors

  • The PR Title

    • conforms to the style of semantic commits messages¹ supported in Wire's Github Workflow²
    • contains a reference JIRA issue number like SQPIT-764
    • answers the question: If merged, this PR will: ... ³
  • The PR Description

    • is free of optional paragraphs and you have filled the relevant parts to the best of your ability

What's new in this PR?

Issues

No way to create a Channel conversation

Causes (Optional)

Not implemented yet

Solutions

Added a new method on ConversationService that will be available externally through WireApplicationManager called createChannel/CreateChannelConversation.

Currently keeping the TeamId to be passed on the method parameters until we have more information about handling multiple teams for the same user.

Testing

Test Coverage (Optional)

  • I have added automated test to this contribution

How to Test

  • Run the SDK
  • Open a conversation with the App
  • send a message: create-channel-conversation [NAME] [USER_ID] [DOMAIN]
  • If permissions are given, then a new Channel will be created

* Add new attributes for Create Conversation Request (add_permission, team and skip_creator)
* Add new error type and handling for Operation Denied when user doesn't have permission to create a Channel
* Update API Version to v10
* Add a new method in ConversationService for creating a Channel
* Add javadocs for creating a conversation in WireApplicationManager
* Add tests for creating a Channel
* Add sample for creating a Channel and keep current placeholder TeamId to be passed
@alexandreferris alexandreferris requested a review from a team as a code owner August 25, 2025 14:12
@alexandreferris alexandreferris self-assigned this Aug 25, 2025
* Add createChannel example in APPLICATION.md
* Remove default value for groupConversationType in CreateConversationRequest and pass each value when needed
* Add comment for logic when updating key material or adding members to a conversation
* Update conversation type in One to One response for tests
* Add receiving TEAM_ID when creating a channel in the sample project
Copy link
Contributor

@bbaarriiss bbaarriiss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have few small comments for clarity. Other than I that I am ok with the PR.

* Rename `conversationResponse` to `conversationCreatedResponse`
* Add a new extension function for ConversationResponse to decode groupId to MlsGroupId
@alexandreferris alexandreferris merged commit b1d3b4f into main Aug 26, 2025
2 checks passed
@alexandreferris alexandreferris deleted the feat/create_channel_conversation branch August 26, 2025 12:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants