DataChannel.js是webRTC封装库的一个js对象文件,由muaz-khan发布在GitHub上,https://github.com/muazkhan/WebRTCExperiment/tree/master/DataChannel。DataChannel.js是一个用于实现多对多用户组文件/数据分享或者文本聊天Web APP的javascript库,语法简单而且易于使用,极大地简化了一些复杂的任务,例如:消息传输,用户的加入和退出,等等。同时提供了许多扩展功能:可以直接借用DataChannel的现有的funcition来处理用户的加入,会话的关闭等情形,也可以扩展DataChannel的功能,比如 可以扩展DataChannel.js的一些function来实现对在线用户的检测。
而且DataChannel.js极好地一点是,无论是文本消息,文件,还是一般数据,大小都是不限制的。
由此可以借助DataChannel来实现Cloud_TV中视频段传输的功能,当然在本文中仅仅是对DataChannel的一次验证性使用,来尝试使用其各种功能。
首先来介绍一下使用到得DataChannel.js 的一些function:
open("channel_name");// 创建或者打开一个以channel_name为名的channel
connect("channel_name");//加入一个以channel_name标示的channel,前提是该channel已经被打开
send(file|data|"text-message");//向该channel内的所有终端发送文件/数据/文本消息
onopen(userid);//当检测所某个user_id为userid的用户加入channel时的处理方法,可以被ovverride
onmessage(message,userid,latency)//当检测到某个user_id为userid的用户向channel内发送消息时的处理方法,可以被ovverride,latency是消息的延迟时间
channels[userid].send(file|data|'text message');//向channel内用user_id为userid的用户直接发送消息(文件,数据或者文本消息)
leave();离开当前channel,中止会话
onleave(userid);检测到user_id为userid 的用户离开时的处理函数
join(data_channel); //使用join的方式加入一个channel
join({id
基于DataChannel.js(WebRTC_Experiment)实现的多端点的通信
最新推荐文章于 2023-08-23 13:22:23 发布