<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
var wsServer = 'ws://localhost:9999/webSocket.ashx'//基于.NET4.5服务器地址
//var wsServer = 'ws://localhost:1818'//基于.NET服务器地址
var websocket = new WebSocket(wsServer)//创建WebSocket对象
//websocket.send("hello")//向服务器发送消息
//alert(websocket.readyState)//查看websocket当前状态
websocket.onopen = function (evt) {
//已经建立连接
alert("已经建立连接")
}
websocket.onclose = function (evt) {
//已经关闭连接
alert("已经关闭连接")
}
websocket.onmessage = function (evt) {
//收到服务器消息,使用evt.data提取
evt.stopPropagation()
evt.preventDefault()
//alert(evt.data)
writeToScreen(evt.data)
//websocket.close()
}
websocket.onerror = function (evt) {
//产生异常
//alert(evt.message)
writeToScreen(evt.message)
}
function sendMsg() {
if (websocket.readyState == websocket.OPEN) {
msg = document.getElementById("msg").value
websocket.send(msg)
writeToScreen("发送成功!")
} else {
writeToScreen("连接失败!")
}
}
function writeToScreen(message) {
var pre = document.createElement("p")
pre.style.wordWrap = "break-word"
pre.innerHTML += message
output.appendChild(pre)
}
</script>
</head>
<body>
<div>
<input type="text" id="msg" value="beyond is number one!" />
<button onclick="sendMsg()">send</button>
</div>
<div id="output"></div>
</body>
</html>
H5edu实训html5开发解答
WebRTC是一个支持网页浏览器进行实时语音对话或视频对话的技术,在行业内得到了广泛的支持和应用,成为下一代视频通话的标准,所以来说还是靠谱的。
话说回来,虽然作为实时音视频领域最火的开源技术,WebRTC 点对点的架构模式却无法支持大规模并发,怎么解决呢?即构自研WebRTC网关服务器架构实践就很好解决了这个问题。
Zego-Gateway架构的改进
在加入WebRTC网关之前,即构自研系统架构如下图所示,主要分成两部分,左边是低延时用户,而右边是围观用户。低延时用户主要是通过ZEGO的实时传输网络进行推拉流。
由于RTMP的实时性并不是很好,在浏览器端没有办法通过RTMP进行上行传输达到低延时的特点,所以即构对原有的系统架构进行了升级,在低延时的实时传输网络中加入了WebRTC网关服务器,具体如下图所示。
在加入了WebRTC网关服务器后(图中红线部分所示),即构的系统已经能全面支持网页端视频互动场景,同时实现了APP、微信小程序、WebRTC三端的连麦互通。
有现成的框架借鉴,一般上一些互联网巨头公司官网就有得看了,建议考虑使用ZEGO即构科技的实时语音SDK产品,它支持Web端实现实时语音框架 ,也支持React Native、JavaScript 、Swift、Electron 各种语言框架。欢迎分享,转载请注明来源:夏雨云
评论列表(0条)