Student Application Template
To fill this in, copy the source text. Please don't rename the template.
This is a suggestion for the kind of information we'll find useful from students in their submissions. Remember -- you're going to be committing to several months' work. The more information and planning you can provide up-front, the more we (and Google!) will have to go on when we're ranking your application. Do not forget adding your submission at SummerOfCode2016/StudentApplications
Name Udit Raikwar
Contact: IRC : #udit043 , email : udit043.ur@gmail.com
Project Mentor: Gaurav Saini <gauravsaini03@gmail.com>
Mailing List:
Background: I am 3rd year student pursuing Bachelor of Engineering from JEC , India. I have created some interesting innovative projects using OpenCV. I have a good knowledge about C , C++ and little bit of Python.
Location:
Laptop Details
- • Toshiba Satellite L655-S5096 • Operating System : Ubuntu 14.04 LTS, Debian 8.5 (jessie) • Screen Resolution : 1366 x 768 • Webcam inbuilt
Mobile Details : Moto G3, Android Phone with version 6.0.1
Project title: Improving voice, video and chat communication with free software
Project details: I would like to work on the following issues https://project.freertc.org/issues/25 , https://project.freertc.org/issues/28 , https://project.freertc.org/issues/93 .
Project schedule:
• 22nd April – 22nd May: Community Bonding Period – Communication with mentor, discuss ideas and approach to solve some bugs, understand the code to be worked upon and find out what more can be done.
• Week 1-4 (23may-21june) : Improve logging (log errno names instead of values)
->Write code to solve issue #25
->Defining various network errors
->Output all errors in the format "socket error EINVAL (Invalid Argument) 22" instead of "socket error 22"
->Testing and debugging
->Documentation
• Week 5-8 (22june-15july) : support for WebRTC client to make conference calls
->Write code to solve issue #28
->Testing and debugging
->Documentation
• Week 9-12 (16july-17aug) : Evolution: reply to emails with a SIP or XMPP call
->Write code to solve issue #93
->Testing and debugging
->Documentation
• 18th Aug – 24th Aug : Week reserved for project documentation, improvement or medication to certain code if required.
Solving Issue #28: Using libjingle from the resip/recon/* and reflow/* code, table containing the relationship between resiprocate and sipX api.
* Read http://paste.debian.net/776169/ for better understanding.
Filename.cxx |
sipX APIs used |
equivalent libjingle APIs |
-- |
||
-- |
||
-- |
||
-- |
* Some NAT, RTP, RTCP, DTLS-SRTP, SDES-SRTP functions from reflow*
1 - Manages a set of STUN requests (send, delay, remove, clear)
2 - Creates a STUN server, which will listen on the given socket
3 - Handling different types of STUN/TURN requests
4 - SRTP support
-> https://github.com/udit043/libjingle-0.6.14/blob/master/talk/session/phone/srtpfilter.h#L107 (using RTP & RTCP with DTLS-SRTP)
-> https://github.com/udit043/libjingle-0.6.14/blob/master/talk/session/phone/srtpfilter.h#L134 (create SRTP session)
-> https://github.com/udit043/libjingle-0.6.14/blob/master/talk/session/phone/srtpfilter.h#L165 (SRTP session class)
-> https://github.com/udit043/libjingle-0.6.14/blob/master/talk/base/sslstreamadapter.h#L163 (DTLS-SRTP interface)
-> https://github.com/udit043/libjingle-0.6.14/blob/master/talk/session/phone/rtputils.h#L49 (SDES-SRTP)
5 - STUN, Turn configuration
-> https://github.com/udit043/libjingle-0.6.14/blob/master/talk/app/webrtc/peerconnection.h#L220
-> https://github.com/udit043/libjingle-0.6.14/blob/master/talk/app/webrtc/peerconnection.h#L226
6 - Class used for describing what media a ?PeerConnection can receive
7 - Handle RTP and RTCP packets using ?MediaSinkInterface
8 - NAT traversal
-> https://github.com/udit043/libjingle-0.6.14/blob/master/talk/base/natsocketfactory.h#L52
-> https://github.com/udit043/libjingle-0.6.14/blob/master/talk/p2p/base/stunport.h#L46
Exams and other commitments: Yes, semester exams are in May.
Other summer plans: No, just coding.
Why Debian?: Debian comes with over 43000 different pieces of software and every bit of it is free. I had a moment of epiphany which led to a realization that I should be investing more of my time in learning the practical aspects of my education and Debian is the correct place to start. I would like to contribute and want to be a part of this big organisation.
My previous Debian contributions: No
Are you applying for other projects in SoC? : No