abrehman90 / Video-Calling-Django-Channels-and-WebRTC

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Video Calling Django Channels and WebRTC MIT License

Hi, I'm Abdul Rehman! 👋

Stack we used

Python HTML5 JavaScript

CAUTION: THIS REPOSITORY IS STILL UNDER DEVELOPMENT AND TESTING! SOME ISSUES STILL NEED TO BE RESOLVED!

Description:

This project was made for learning how to Django Channels, signal, WebRTC SDPs, Websocket working.

Tech Stack

Server: Django, JavaScript, Websocket, Channels

Features

  • User enter the other user name
  • User enter the name then both create peer to peer connection
  • Second User see profile and name how calling
  • User accept or decline the call
  • User accept the call then on their camera
  • Both User can mute their video or audio
  • Both User disconnect the call

####Installation: Go to your desired folder. Run the command:

   git clone https://github.com/abrehman90/Video-Calling-Django-Channels-and-WebRTC.git

After clone or Download the repo now create the virtual environment

Run the command:

  python -m venv venv

After a venv directory is created, run the command for

windows: venv\Scripts\activate.bat
Unix or MacOS: source venv/bin/activate
Ensure latest version of pip by running:
  python -m pip install --upgrade pip

Install the dependencies by running the command:

  pip install -r requirements.txt

We need multiple devices in the same LAN for testing. For that we need to make our localhost public. For that, download ngrok from https://ngrok.com/download and install it.

To start the development server, run the command:

  python manage.py runserver

For testing on multiple devices in the same LAN, go to the directory where you have installed ngrok. Run the command: ngrok.exe http 8000 This will make our localhost public and provide two public URLs. However, make sure to always use the one that starts with https: and not http: as we will be accessing media devices.

ngrok are running now change your Allow Host in settings.py

On local device, go to http://127.0.0.1:8000/ On other devices, go to the URL from ngrok that starts with https:.

Authors

Some Screenshot for this Project

127 0 0 1_8000_(BlackBerry Z30)

127 0 0 1_8000_video_(BlackBerry Z30)

127 0 0 1_8000_(BlackBerry Z30) (1)

127 0 0 1_8000_video_(BlackBerry Z30) (1)

127 0 0 1_8000_video_

127 0 0 1_8000_ (1)

127 0 0 1_8000_video_ (1)

127 0 0 1_8000_ (2)

Thanks for Reading...

Happy Coading!!!

About

License:MIT License


Languages

Language:JavaScript 83.9%Language:HTML 7.9%Language:Python 7.5%Language:CSS 0.6%