• This repository has been archived on 06/May/2024
  • Stars
    star
    103
  • Rank 333,046 (Top 7 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created almost 10 years ago
  • Updated over 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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

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é [email protected]

License

MIT (check the LICENSE file)

Thanks

More Repositories

1

txiki.js

A tiny JavaScript runtime
C
2,520
star
2

pyuv

Python interface for libuv
C
1,115
star
3

pythonz

Python installation manager supporting CPython, Stackless, PyPy and Jython
Python
749
star
4

aiodns

Simple DNS resolver for asyncio
Python
529
star
5

sipp-scenarios

SIPp scenarios I use for testing SIP stuff
256
star
6

lxd-alpine-builder

Build Alpine Linux images for LXD
Shell
175
star
7

pycares

Python interface for c-ares
Python
165
star
8

python-fibers

Lightweight cooperative microthreads for Python
C
159
star
9

uvent

A gevent core implemented using libuv
Python
136
star
10

wasi-lab

Some WASI experiments 🧪☣️☠️
C
120
star
11

evergreen

Cooperative multitasking and i/o for Python
Python
113
star
12

sjs

Skookum JS: a JavaScript runtime
C
98
star
13

tornaduv

Tornado IOLoop implemented with pyuv
Python
96
star
14

aiouv

A PEP-3156 compatible event loop
Python
70
star
15

uvwsgi

Python WSGI server
Python
37
star
16

qrfcview-osx

RFC viewer for OSX
C++
36
star
17

node-abstractsocket

Abstract namespace socket support for Node
JavaScript
24
star
18

libuv-chat

Something something libuv something
C
21
star
19

twisted-pyuv

Twisted reactor implemented with pyuv
Python
19
star
20

njk

Powerful portable templating in less than 1MB
C
19
star
21

cordova-plugin-audioroute

iOS audio route change events and more for Cordova
Objective-C
17
star
22

twitterbot

A simple Twitter bot retwitting the given hashtag
Python
14
star
23

TunnelIt

SSH reverse forwarder using Twisted
Python
14
star
24

sipsimple-examples

SIPSIMPLE SDK examples
Python
13
star
25

macOS-setup

My macOS setup, automated with Ansible
Shell
12
star
26

dotvim

My vim configuration
Vim Script
11
star
27

SIPwPing-server

Server providing a simple RESTful API to ping SIP servers
Python
11
star
28

shline

A simple powerline style prompt for my bash shell
Python
10
star
29

tornado-backdoor

Interactive Python interpreter over TCP for Tornado applications
Python
9
star
30

pysophia

WIP: Python (CFFI) bindings for Sophia
Python
9
star
31

jitsi-meet-api

Jitsi Meet external API wrapper
JavaScript
8
star
32

sandbox-html

JavaScript
7
star
33

gyn

Generate You some Ninja
Python
6
star
34

uttp

[Unfinished] libuv based HTTP server
C
6
star
35

dotfiles

My dotfiles
Shell
6
star
36

sylk-in-a-box

SylkServer + Sylk WebRTC client, in a box
Nginx
5
star
37

vim-colortoggle

A ViM plugin for toggling background and color scheme
Vim Script
5
star
38

yass

Yet Another SIP Softphone (archive)
Python
3
star
39

python-imap-prowl

A python script to sendpush notifications when new emails via Prowl push service
3
star
40

evergreen-requests

Evergreen + Requests
Python
3
star
41

notes

Notes about anything and everything
Python
2
star
42

jcfg

Jinja templates for your configuration files
Python
2
star
43

sipstache

The Ultimate Virtual Moustache Toolkit (TM)
Python
2
star
44

python-wsserver

[DEAD] A simple, single threaded WebSocket server
Python
2
star
45

python-asiri

GPIO interface for Asiri board with a MCP230XX chip
Python
1
star
46

python-imaplib2

Python threaded IMAP4 client module by Piers Lauder
Python
1
star
47

gvoice-sip-status

Google App Engine application to query the availability of Google Voice inbound SIP service
Python
1
star
48

docker-nginx-webdav

Docker image using nginx to serve files over WebDAV
1
star
49

sipwping-django

Web frontend for SIPwPing server, based on Django
JavaScript
1
star