apprtc和collider是WebRTC的官方例子, 源码在https://github.com/webrtc/apprtc
其中apprtc是房间服务器, collider是信令服务器. 想搞清楚到底是怎么回事还是自己看源码最清楚.
apprtc是基于 Google App Engine SDK for Python编写的, 而且还需要Node.js和 Grunt, 实在不想折腾这个环境, 还是直接就看看代码吧.
因为实在去懒得了解Google App Engine SDK for Python, 然后都找不到程序源码入口, 所以先从collider分析, 还好collider是golang写的.
collider
collider代码很简单, 稍微看看就知道意思了.
collider在collider.go中开了个web服务, 支持三个路由:
func (c *Collider) Run(p int, useTls bool) {
http.Handle("/ws", websocket.Handler(c.wsHandler))
http.HandleFunc("/status", c.httpStatusHandler)
http.HandleFunc("/", c.httpHandler)
...
- /ws
这是个websocket服务,