Skip to content

SusheelThapa/A-Phone-Call

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A Phone Call

A Phone call is a project which aims to demonstrate how the working of call app that exist in every smart phone.

Tool we will be using

  1. Visual Studio Code: As our code editor
  2. g++: As our compiler
  3. SDL2 : As our Library to create GUI interface
  4. Git : As our local version control system
  5. Github : As our central version control system
  6. Latex : As our document preparation software
  7. Kali Linux: As our working operating system

Project Progess

Phase One

  • Design iphone dialpad, incoming screen and outgoing screen
  • Create a phone call class(Two client will be created from it)
  • Create a server(acts as bridge for two client to communicate)
  • Create two client from phone call class
  • Implement dialpad screen on both client
  • Show the incoming call screen when one client call another(when call button is pressed)
  • When client reject the incoming call, drop the call of the client who is calling
  • When client accept the call show the time they are calling each other
  • Display the name of the client who is called to who.
  • After the call has been connected when one user pressed the end call button drop the call.
  • Add the script file to to download necessary libraries for compilation of this project

Phase Two

Under Construction

Screenshots

  1. Dial Pad Screen

    Dial Pad Screen

  2. Incoming Call Screen

    Incoming Call Screen

  3. Outgoing Call Screen

    Outgoing Call Screen

  4. Call in progress screen

    Call in Progress

Installation

This project has been created and tested in linux platform.

For other platform, ..............

  1. First of all give install.sh file executable permission

    chmod +x install.sh
    

    Note:Make sure you are in the place which has install.sh

  2. Run install.sh

    ./install.sh
    

    Give it sometime it will install all the dependencies required by the project. When it completed you can head over to Project Compilation

Project Compilation

We are using Makefile to compile our project.

Basic Command

  1. Compiling Client Code

     make client_one client

    It will create two client client_one and client_two.

  2. Compiling Server Code

     make server

    It will create server.

  3. Clean command

     make clean

    It will clean the working directory by removing all those file created using Makefile

Helping Command

  1. Compiling client_one and running

    make client_one_run
  2. Compiling client_two and running

    make client_two_run
  3. Compile client_one, client_two and server at once

    make all
  4. Run server, client_one and client_two at once.

    make run