Если объяснять на пальцах как работают WebRTC-звонки, то выглядит это так:
1. Саша и Кузя открыли страницу в браузере. На странице JavaScript.
Находятся они естественно не за одним компьютером, а скорее всего в разных городах.
2. Далее они должны обменяться кодеками и дать друг другу свои WebRTC-координаты (IP адреса и порты). Например, если у Саши Google Chrome, то у него приоритетным будет видеокодек VP8, а если Firefox, то H.264 насколько я помню.
3. После того, как они обменялись этой информацией, трафик начинает идти от одного к другому(возможно через TURN сервер) и имеем установленный звонок.
Обмен нужной информацией называется "сигналинг" и требует стороннего сервера. Без него никак. Участникам звонка не узнать IP адрес друг друга если не будет центрального сервера, который им в этом поможет.
Ну и далее много вариантов.
Подбираете нужный сервер или cloud-сервис и созваниваете через него.
Вот два примера установки соединения через сервер Flashphoner:
1. Сигналинг идет через SIP.
www.youtube.com/watch?v=BG7CZSsR8WA
2. Простой стриминг. Один дает поток, другой играет и обратно.
www.youtube.com/watch?v=0eBm5rL6nSs