Skip to content
This repository has been archived by the owner on May 6, 2024. It is now read-only.
/ CallRoulette Public archive

A WebRTC demo using Python (asyncio + aiohttp) as the backend

License

Notifications You must be signed in to change notification settings

saghul/CallRoulette

Repository files navigation

CallRoulette

Overview and motivation

CallRoulette is a simple web application for experimenting with WebRTC technologies using Python on the backend. It was initially coded for the Python FOSDEM devroom but it has since been further enhanced.

The backend uses asyncio and aiohttp. The frontend uses pretty much vanilla JavaScript with rtcninja as the WebRTC adapter.

Protocol

V1 - (not really) SIP

The protocol for communicating clients is dead simple: a WebSocket connection is used with 3 types of messages: 'offer_request', 'offer' and 'answer'. There is no message to end the communication, this is intentional, in order to keep it as simple as possible.

(not really) SIP: Saghul's Imbecile Protocol

SIP

V2 - yo

The yo protocol is an improvement over (not really) SIP used in version 1. It maintains the original spirit of simplicity (only 4 message types), but it uses Trickle ICE.

The yo protocol

yo

Author

Saúl Ibarra Corretgé saghul@gmail.com

License

MIT (check the LICENSE file)

Thanks

About

A WebRTC demo using Python (asyncio + aiohttp) as the backend

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published