All Projects → daozhao → apprtc-go

daozhao / apprtc-go

Licence: BSD-3-Clause License
apprtc demo with golang.It's rewrite project WebRTC(https://github.com/webrtc/apprtc) with golang

Programming Languages

javascript
184084 projects - #8 most used programming language
go
31211 projects - #10 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to apprtc-go

blog
Algorithm,WebRTC,Node,Microservices,Golang,ELK,Kubernetes,Istio,JAVA,PHP,MongoDB,Ningx,OpenResty,GraphQL...
Stars: ✭ 19 (+11.76%)
Mutual labels:  webrtc
docker-jitsi-meet
Docker Jitsi Meet WebRTC conferencing system w/Prosody XMPP and s6 overlay
Stars: ✭ 66 (+288.24%)
Mutual labels:  webrtc
webtorrent-dht
This is an example implementation of something that might become WebTorrent DHT
Stars: ✭ 26 (+52.94%)
Mutual labels:  webrtc
flutter live
Live streaming player, iOS+Android, RTMP/HTTP-FLV/HLS/WebRTC, by Flutter+SRS.
Stars: ✭ 211 (+1141.18%)
Mutual labels:  webrtc
P2P-DPlayer
DPLayer powered by CDNBye P2P Engine
Stars: ✭ 63 (+270.59%)
Mutual labels:  webrtc
onchat-web
A simple, beautiful, mobile-first instant messaging progressive web application.
Stars: ✭ 138 (+711.76%)
Mutual labels:  webrtc
vortex
Revolt voice server
Stars: ✭ 61 (+258.82%)
Mutual labels:  webrtc
RTCEngine-server
WebRTC Media Server that scales well
Stars: ✭ 20 (+17.65%)
Mutual labels:  webrtc
2019-09
TryCatch - 레크레이션 게임 "몸으로 말해요"의 온라인 게임 🙆‍♀️ 💁 🙋
Stars: ✭ 18 (+5.88%)
Mutual labels:  webrtc
singo
Simple WebRTC Signaling Server written in Go
Stars: ✭ 57 (+235.29%)
Mutual labels:  webrtc
webrtc-build
様々な環境向けの WebRTC のビルドを行って、そのバイナリを提供しています
Stars: ✭ 128 (+652.94%)
Mutual labels:  webrtc
WebRTCCTV
WebRTCCTV is a signaling server & webapp able to stream from RTSP cameras using WebRTC
Stars: ✭ 32 (+88.24%)
Mutual labels:  webrtc
Study-Room
Connect and study together with friends over text and voice channels, over a click of a button. Web application for chat and audio streaming.
Stars: ✭ 21 (+23.53%)
Mutual labels:  webrtc
app
Web metaverse client
Stars: ✭ 115 (+576.47%)
Mutual labels:  webrtc
spectacle-sync
💁 Present Spectacle presentations synchronised on multiple devices
Stars: ✭ 57 (+235.29%)
Mutual labels:  webrtc
meanOs
Mean Operating System - The first decentralized, artificially intelligent, MEAN.js stack, operating system. Mean OS is the only operating system hosted anonymous using a P2P network and a suite of non-standard in-browser delivery mechanisms. Mean OS proudly supports Brave and Tor, be free!
Stars: ✭ 62 (+264.71%)
Mutual labels:  webrtc
foxrtc
media sdk based on webrtc
Stars: ✭ 36 (+111.76%)
Mutual labels:  webrtc
securbot
Security robot prototype
Stars: ✭ 20 (+17.65%)
Mutual labels:  webrtc
P2P-CKPlayer
嵌入P2P引擎的CKPlayer,视频网站省流量&加速神器
Stars: ✭ 49 (+188.24%)
Mutual labels:  webrtc
client-sdk-js
LiveKit browser client SDK (javascript)
Stars: ✭ 114 (+570.59%)
Mutual labels:  webrtc

apprtc-go

apprtc demo with golang. It's rewrite project WebRTC(https://github.com/webrtc/apprtc) with golang

How to run.

  1. Setup the STUN/TURN server and run. coturn[https://github.com/coturn/coturn]
turnserver -v  --user=daozhao --realm apprtc --static-auth-secret=654321 
  1. Install apprtc-go and run.
go get github.com/daozhao/apprtc-go
cd $GOPATH/src/github.com/daozhao/apprtc-go/
go build -o apprtc-go apprtc.go
./apprtc-go -cert=$GOPATH/src/github.com/daozhao/apprtc-go/mycert.pem \
            -key=$GOPATH/src/github.com/daozhao/apprtc-go/mycert.key \
            -stun=192.168.2.170:3478 \
            -turn=192.168.2.170:3478 -turn-username=daozhao -turn-static-auth-secret=654321 \
            -httpport=8080 -httpsport=8888

Open chrome and enter URL(https://XXX.XXX.XXX.XXX:8888 or https://XXX.XXX.XXX.XXX:8080 ).

warnning:Replace the IP(XXX.XXX.XXX.XXX) with your real IP address.

Other test

  1. Only test stun
turnserver --no-auth --stun-only -v
./apprtc-go -cert=$GOPATH/src/github.com/daozhao/apprtc-go/mycert.pem \
                      -key=$GOPATH/src/github.com/daozhao/apprtc-go/mycert.key  \
                      -httpport=8080 -httpsport=8888 \
                      -stun=192.168.2.170:3478 
  1. Test turn with static username and password
turnserver -v  --user=daozhao:12345 --realm apprtc  --no-stun
./apprtc-go -cert=$GOPATH/src/github.com/daozhao/apprtc-go/mycert.pem \
            -key=$GOPATH/src/github.com/daozhao/apprtc-go/mycert.key \
            -httpport=8080 -httpsport=8888 \
            -turn=192.168.2.170:3478 -turn-username=daozhao -turn-password=12345 
  1. Test turn with auth-secret
turnserver -v  --user=daozhao  --realm apprtc --static-auth-secret=654321  --no-stun
./apprtc-go -cert=$GOPATH/src/github.com/daozhao/apprtc-go/mycert.pem \
            -key=$GOPATH/src/github.com/daozhao/apprtc-go/mycert.key \
            -httpport=8080 -httpsport=8888 \
            -turn=192.168.2.170:3478 -turn-username=daozhao -turn-static-auth-secret=654321 

warnning:Please put two devices in different networks so that they cannot access each other.

Help

$GOPATH/bin/apprtc-go --help
Usage of /home/daozhao/Documents/SourceCode/goPath/bin/apprtc-go:
  -cert string
    	cert pem file  (default "./mycert.pem")
  -httpport int
    	The http port that the server listens on (default 8080)
  -httpsport int
    	The https port that the server listens on (default 8888)
  -key string
    	cert key file  (default "./mycert.key")
  -room-server string
    	The origin of the room server (default "https://appr.tc")
  -stun string
    	Enter stun server ip:port,for example 192.168.2.170:3478,default is null
  -turn string
    	Enter turn server ip:port,for example 192.168.2.170:3478,default is null
  -turn-password string
    	Enter turn server user password,default is null
  -turn-static-auth-secret string
    	Enter turn server static auth secret,default is null
  -turn-username string
    	Enter turn server username,default is null

Related project

apprtc-electron[https://github.com/daozhao/apprtc-electron]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].