GSoC/2020/StatusReports/AniketKumar: Difference between revisions

From KDE Community Wiki
< GSoC‎ | 2020‎ | StatusReports
 
(122 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[File:Kde-connect-sms-app.png]]
{|class="tableleft vertical-centered"
|[[Image:Kde-connect-sms-app.png|900px|thumb]]
|}




Line 19: Line 21:
However, It is very limited to MMS and can only support showing text. It cannot send and display pictures, audio, video and other kinds of attachments, also it cannot reply to multi-target conversations. Considering the importance of sharing multimedia files and group messages, the SMS client becomes very limited in use. This project aims to improve MMS support with the integration of sending multi-target MMS by re-working the current implementation of sending SMS and UI support using Qt Multimedia library.
However, It is very limited to MMS and can only support showing text. It cannot send and display pictures, audio, video and other kinds of attachments, also it cannot reply to multi-target conversations. Considering the importance of sharing multimedia files and group messages, the SMS client becomes very limited in use. This project aims to improve MMS support with the integration of sending multi-target MMS by re-working the current implementation of sending SMS and UI support using Qt Multimedia library.


By the end of this project, SMS client will be capable of sending and receiving MMS, will be able to send multi-target MMS with the capability to view pictures, video/audio in SMS app and the capability to download other attachments (.pdf, .txt, etc.).
By the end of this project, SMS client will be capable of sending and receiving MMS, will be able to send multi-target MMS with the capability to view pictures, video/audio in SMS app and the capability to download them..
<br/>[https://docs.google.com/document/d/149pPIxcdV1RUq3NLcB9HFPvlvo7fASUL0dFzcKI4S-E/edit?usp=sharing GSoC 2020 Proposal for Improving MMS Support to the KDE Connect SMS app]
<br/>[https://docs.google.com/document/d/149pPIxcdV1RUq3NLcB9HFPvlvo7fASUL0dFzcKI4S-E/edit?usp=sharing GSoC 2020 Proposal for Improving MMS Support to the KDE Connect SMS app]
=== Repositories worked on ===
* [https://invent.kde.org/network/kdeconnect-kde KDE Connect Desktop]
* [https://invent.kde.org/network/kdeconnect-android KDE Connect Android]




Line 30: Line 38:
=== Milestones ===
=== Milestones ===


1) Making KDE Connect to be able to set up as the default SMS app on android.
1) Support to send plain text MMS.
 
2) Support to send Group SMS and MMS.
 
3) Adding SMS/MMS notifications support in android app
 
4) Transferring MMS attachments as thumbnails from android to desktop and displaying in UI.
 
5) Downloading original attachment from remote.
 
6) Integrating media Player into KDE Connect SMS App.
 
7) Adding Support to select and send files as attachments from desktop SMS client.
 
8) Synchronizig even notifier between android and desktop.


=== Work Report ===
=== Work Report ===


===== Milestone 1 : Support to send send plain text MMS. =====
* '''Status -''' Complete
* '''Patch 1 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/156 Adding MMS support in android app.]
* '''Blog link -''' [https://aniketkumarblogpost.wordpress.com/2020/06/01/klinker-library-in-kde-connect-sms-app/ Adding support to send plain text MMS in KDE Connect]
* '''Demo Video:-''' <embedvideo service="youtube">https://youtu.be/ECMpt7idLnc</embedvideo>
<br/>
===== Milestone 2 : Support to send send group SMS and MMS. =====
* '''Status -''' Complete
* '''Patch 2 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/274 Enabling multi-target support in KDE Connect desktop client.]
* '''Demo:-'''
{|class="tableleft vertical-centered"
|[[Image:Screenshot 20200620-162105.png|400px|thumb]]
|}
{|class="tableright vertical-centered"
|[[Image:Screenshot 20200620-162115.png|400px|thumb]]
|}
<br/>
===== Milestone 3 : Adding SMS/MMS notifications support in android app =====
* '''Status -''' Complete
* '''Patch 3 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/172 Adding SMS notifications support in android app.]
* '''Blog link -''' [https://aniketkumarblogpost.wordpress.com/2020/06/01/klinker-library-in-kde-connect-sms-app/ Adding support to send plain text MMS in KDE Connect]
* '''Demo:-'''
{|class="tableleft vertical-centered"
|[[Image:SMS-Notification-support-in-kde-connect.png|600px|thumb|SMS notifictions]]
|}
<br/>
===== Milestone 4 : Transferring MMS attachments as thumbnails from android to desktop and displaying in UI. =====
* '''Status -''' complete
* '''Patch 4 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/197 Adding support to read images and video files from MMS database and extracting thumbnails to push to desktop.]
* '''Patch 5 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/288 Patch to extract optional attachment fields and displaying the thumbnails in UI.]
* '''Demo:-'''
{|class="tableleft vertical-centered"
|[[Image:Screenshot 20200720 193757.png|600px|thumb|Image file]]
|}
{|class="tableleft vertical-centered"
|[[Image:Screenshot 20200720 193829.png|600px|thumb|Audio clip]]
|}
{|class="tableleft vertical-centered"
|[[Image:Screenshot 20200720 193905.png|600px|thumb|video file]]
|}
<br/>
===== Milestone 5 : Requesting and forwarding original attachment from android to desktop. =====
* '''Status -''' complete
* '''Blog link -''' [https://aniketkumarblogpost.wordpress.com/2020/06/28/kde-connect-sms-app-first-evaluation/ Downloading original attachments from android device.]
* '''Patch 6 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/307 Desktop side patch to request and download the original attachment.]
* '''Patch 7 -''' [https://invent.kde.org/aniketkumar/kdeconnect-android/-/merge_requests/4 Android side patch to receive the request and send the attachment to the desktop.]
* '''Demo Video:-''' <embedvideo service="youtube">https://youtu.be/5XG7DftmXos</embedvideo>
<br/>
===== Milestone 6 : Integrating media Player into KDE Connect SMS App. =====
* '''Status -''' complete
* '''Blog link -''' [https://aniketkumarblogpost.wordpress.com/2020/07/20/media-player-integration-into-kde-connect-sms-app-gsoc-2020/ Integrating media Player into KDE Connect SMS App.]
* '''Patch 6 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/307 Desktop side patch to integrate media player into SMS app.]
* '''Demo -'''
{|class="tableleft vertical-centered"
|[[Image:Screenshot 20200720 193709.png|600px|thumb|Integrated Video player]]
|}
{|class="tableleft vertical-centered"
|[[Image:Screenshot 20200720 193932.png|600px|thumb|Integrated Image viewer]]
|}
* '''Demo Video:-''' <embedvideo service="youtube">https://youtu.be/WUuAx8jEdyk</embedvideo>
<br/>
===== Milestone 7 : Adding Support to select files, record audio and send as attachments from desktop SMS client. =====
* '''Status -''' complete
* '''Blog link -''' [https://aniketkumarblogpost.wordpress.com/2020/08/26/sending-multimedia-messages-kde-connect-gsoc-2020-final-evaluation Sending Multimedia messages]
* '''Patch 8 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/316 Selecting and sending attachments to remote device]
* '''Patch 9 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/205 Added support to extract attachments from network packet and send it as MMS.]
* '''Patch 10 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/318 Added support to record audio and send as MMS.]
* '''Demo -'''
{|class="tableleft vertical-centered"
|[[Image:Screenshot 20200819 225631.png|600px|thumb|Before selecting attachments]]
|}
{|class="tableleft vertical-centered"
|[[Image:Screenshot 20200819 225710.png|600px|thumb|After selecting attachments]]
|}
<embedvideo service="youtube">https://youtu.be/EeikTsca0Vs</embedvideo>
<br/>
===== Milestone 8 : Synchronizig even notifier between android and desktop. =====
* '''Status -''' complete
* '''Patch 11 -''' [https://invent.kde.org/aniketkumar/kdeconnect-android/-/merge_requests/8 Implemented support to notify the desktop app of the various events like settings update, error messages etc.]
* '''Patch 12 -''' [https://invent.kde.org/aniketkumar/kdeconnect-kde/-/merge_requests/6 Added support to receive event notification packet and notify the UI.]


=== List of patches ===
=== List of patches ===


=== Weekly meeting notes with mentors ===
* '''Patch 1 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/156 Adding MMS support in android app.]
* '''Patch 2 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/274 Enabling multi-target support in KDE Connect desktop client.]
* '''Patch 3 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/172 Adding notifications support in android app.]
* '''Patch 4 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/197 Adding support to read images and video files from MMS database and extracting thumbnails to push to desktop.]
* '''Patch 5 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/288 Patch to extract optional attachment fields and displaying the thumbnails in UI.]
* '''Patch 6 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/307 Desktop side patch to request and download the original attachment with multimedia integration.]
* '''Patch 7 -''' [https://invent.kde.org/aniketkumar/kdeconnect-android/-/merge_requests/4 Android side patch to receive the request and send the attachment to the desktop.]
* '''Patch 8 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/316 Selecting and sending attachments to remote device.]
* '''Patch 9 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/205 Support to extract attachments from network packet and send it as MMS.]
* '''Patch 10 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/318 Added support to record audio and send as MMS.]
* '''Patch 11 -''' [https://invent.kde.org/aniketkumar/kdeconnect-android/-/merge_requests/8 Implemented support to notify the desktop app of the various events like settings update, error messages etc.]
* '''Patch 12 -''' [https://invent.kde.org/aniketkumar/kdeconnect-kde/-/merge_requests/6 Added support to receive event notification packet and notify the UI.]
 
=== Other small patches ===
 
* '''Patch 13 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/189 Fix Apn Settings for non supported devices.]
* '''Patch 14 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/287 Fixed error message by replacing TextArea.wrap to TextEdit.Wrap.]
* '''Patch 15 -''' [https://invent.kde.org/network/kdeconnect-android/-/merge_requests/201 Fixed MmsSentReceiver Class not being invoked.]
* '''Patch 16 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/311 Updated kdeconnect-cli send-sms interface.]
* '''Patch 17 -''' [https://invent.kde.org/network/kdeconnect-kde/-/merge_requests/312 Updated kdeconnect-cli send-sms interface (release-20.08 branch).]
* '''Patch 18 -''' [https://invent.kde.org/aniketkumar/kdeconnect-kde/-/merge_requests/4 Receiving settings packet.]
* '''Patch 19 -''' [https://invent.kde.org/aniketkumar/kdeconnect-android/-/merge_requests/7 Constructing and sending settings packet.]
 
=== Weekly meeting notes ===
* [https://invent.kde.org/network/kdeconnect-kde/snippets/929 Important meeting notes]
* [https://invent.kde.org/network/kdeconnect-kde/snippets/929 Important meeting notes]
=== Future Work ===
* During the post-GSoC period, I will continue to add more features into the KDE Connect SMS app. I have many new features in mind, for example, one is to enable KDE Connect SMS plugin to send MMS over the wifi. Another one is to add various new UI controls to better the UX and many more other small tasks.


=== Contacts ===
=== Contacts ===

Latest revision as of 09:01, 1 September 2020


Mentors


Summary

KDE Connect has recently launched an SMS Messaging app for the desktop which uses KDE Connect to synchronize all the existing conversations from the remote device. In its current state, it can:-

  • Show a list of existing conversations and the corresponding conversation history.
  • Send and display SMS.
  • Send SMS to only existing contacts and conversations on the remote device.
  • Display (not send) group messages.

However, It is very limited to MMS and can only support showing text. It cannot send and display pictures, audio, video and other kinds of attachments, also it cannot reply to multi-target conversations. Considering the importance of sharing multimedia files and group messages, the SMS client becomes very limited in use. This project aims to improve MMS support with the integration of sending multi-target MMS by re-working the current implementation of sending SMS and UI support using Qt Multimedia library.

By the end of this project, SMS client will be capable of sending and receiving MMS, will be able to send multi-target MMS with the capability to view pictures, video/audio in SMS app and the capability to download them..
GSoC 2020 Proposal for Improving MMS Support to the KDE Connect SMS app


Repositories worked on


Building KDE Connect

Please follow the community guide page on how to build KDE Connect.


Milestones

1) Support to send plain text MMS.

2) Support to send Group SMS and MMS.

3) Adding SMS/MMS notifications support in android app

4) Transferring MMS attachments as thumbnails from android to desktop and displaying in UI.

5) Downloading original attachment from remote.

6) Integrating media Player into KDE Connect SMS App.

7) Adding Support to select and send files as attachments from desktop SMS client.

8) Synchronizig even notifier between android and desktop.

Work Report

Milestone 1 : Support to send send plain text MMS.


Milestone 2 : Support to send send group SMS and MMS.


Milestone 3 : Adding SMS/MMS notifications support in android app
SMS notifictions


Milestone 4 : Transferring MMS attachments as thumbnails from android to desktop and displaying in UI.
Image file
Audio clip
video file


Milestone 5 : Requesting and forwarding original attachment from android to desktop.


Milestone 6 : Integrating media Player into KDE Connect SMS App.
Integrated Video player
Integrated Image viewer


Milestone 7 : Adding Support to select files, record audio and send as attachments from desktop SMS client.
Before selecting attachments
After selecting attachments

<embedvideo service="youtube">https://youtu.be/EeikTsca0Vs</embedvideo>

Milestone 8 : Synchronizig even notifier between android and desktop.

List of patches

Other small patches

Weekly meeting notes

Future Work

  • During the post-GSoC period, I will continue to add more features into the KDE Connect SMS app. I have many new features in mind, for example, one is to enable KDE Connect SMS plugin to send MMS over the wifi. Another one is to add various new UI controls to better the UX and many more other small tasks.

Contacts