SkillAgentSearch skills...

CallRoulette

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

Install / Use

/learn @saghul/CallRoulette
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

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

View on GitHub
GitHub Stars106
CategoryDevelopment
Updated10mo ago
Forks23

Languages

JavaScript

Security Score

92/100

Audited on May 13, 2025

No findings