element-hq / element-hq/element-ios
Support the widget API features needed for Element Call integration
- Dominant language
- Swift
- Stars
- 1.8k
- Forks
- 544
- PR merge metrics
- PR metrics pending
Description
### Your use case
#### What would you like to do?
Implement [MSC2762](https://github.com/matrix-org/matrix-spec-proposals/pull/2762), [MSC3819](https://github.com/matrix-org/matrix-spec-proposals/pull/3819), and [MSC3846](https://github.com/matrix-org/matrix-spec-proposals/pull/3846) in Element iOS
#### Why would you like to do it?
It's a prerequisite for integrating Element Call into Element iOS, which is the future of VoIP in Element.
#### How would you like to achieve it?
Firstly, the most basic functionality of the [widget API](https://github.com/matrix-org/matrix-spec-proposals/pull/2764) (negotiating capabilities, notifying the widget when the client is ready, etc.) needs to be implemented. Then, Element iOS needs to add support for each of the MSCs listed above. Hopefully, both of these tasks can be greatly simplified by reusing the [matrix-widget-api](https://github.com/matrix-org/matrix-widget-api/) project, and referencing the matrix-react-sdk implementations linked on each of the MSCs.
### Have you considered any alternatives?
_No response_
### Additional context
_No response_
Contributor guide
Research direction
Start by reviewing the widget API requirements in MSC2762 and the linked matrix-widget-api project, then compare the matrix-react-sdk implementations referenced by MSC3819 and MSC3846. Identify the Element iOS entry points for widget capability negotiation and readiness notifications before estimating each MSC separately. Done means the basic widget API and all three MSCs support Element Call integration.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- api, mobile
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100