2019 Q1 — Mobile Team


#1

Hey guys, this is the first time I’m going to try to write down the idea of next quarter that we’re planning to our team. Things aren’t supposed to drastic change from this planning, but changes may occur and I’ll try to keep this updated with a changelog in the end.

Priority nº 1: Jitsi Integration

The reason this is our first priority is because of the feedback I received from the Sales team. They mentioned that many users are complaining about the lack of video conferencing feature on the mobile apps. This month (December) we’re going to start the implementation of the integration of the Jitsi SDK for both iOS and Android applications. We had a really nice contribution from Comlink but the code is not entirely portable, so we’ll have some considerable work porting the SDK and integrating into our apps. The plan is to release this feature in our 3.3 version of each platform, mid/later-January.

This feature consists in integrating the SDK, responding to the “Join Video Call” button that we currently have on the web and being able to create new video calls with the other users, public channels and private groups.

Priority nº 2: Audio Messages

Also feedback from the Sales team that some users are complaining about the lack of audio messages in both iOS and Android, we decided to make it a priority in the same release as Jitsi, to be released in mid/later-January, version 3.3.

This feature consists in the user being able to record an audio message and send it. On the screen, the user needs to be able to see the duration of the audio, cancel it or send it. We already have some mockups on how this feature will look in iOS and the design team will prepare the same thing for the Android platform (will look very similar):

Priority nº 3: Federation (Directory)

Federation is going to become a real thing for us at the end of the quarter when we deliver the Directory feature. This is planned to be delivered in mid/later-March, in version 3.4 of our mobile apps.

This feature consists of viewing all available channels and users from a server, also being able to invite new users from other servers (Federation). We currently don’t have any of the designs for this yet but the Design team is going to be working on that before we start the development and we’ll have some meetings with them to make sure it’s aligned with our vision for the feature.

Priority nº 4: E2E

E2E is another high priority feature that we have, being requested by customers that value a lot the security of the messages and also from the community (issues and feature requests). We decided that the priority of this feature is not the highest in our scope, that’s why we’re planning to deliver this in mid-later April, in version 3.5 for both platforms. All the design for this feature is already in place for both platforms on Zeplin.

This feature consists in supporting the full E2E features, such as: receiving push notifications and showing the decrypted message, creating new encrypted groups and having conversations with other people in an encrypted channel. Currently Rocket.Chat don’t support documents, attachments and URLs in E2E conversations, that’s why it’s not included in our scope right now.

Platform specific features

iOS

Rich Notifications

This feature consists in having rich notifications, displaying the attachments, removing the Markdown, etc. User will still be able to reply the messages and if possible we want to show the previous conversations in “3D-Touch” action inside the notification.

Shortcuts

If we have time, around version 3.4, I would like to start integrating with Siri Shortcuts for initial things like sending a message to someone or some group. In the future we may want to have actions to send files and photos as well.

Use new components for Pinned/Favorited/Search/Mentions list

This implementation is suppose to be delivered in version 3.3 and consists in removing all the old cells that we were using previously in the list of messages by the new ones on the “inside” screens: Pinned, Favorited, Search and Mentions. Lots of code to be removed here :heart: .

Android

Message Components

This implementation was already done on the iOS application and now needs to be implemented in the Android app. Everything is already in Zeplin and it only refers to changes on the UI of the (all) components (video, audio, image, text, replies, quotes, links, etc). There’s no specific version yet to deliver this update, but the initial plan was to release in version 3.3, mid/later-January.

Grouping Messages

This work in already in progress from Lucio Maciel, he’s refactoring the code that manipulates the cells on the messages list to support grouping of messages. There’s no specific version yet to deliver this update, but the initial plan was to release in version 3.3, mid/later-January.

Updates

01-16-2019: We changed the our priorities to deliver first Directory instead of E2E.