B站弹幕姬 for NW.js
这个项目是方便使用linux
和MACOS
系统进行直播的同学提供的弹幕SDK
当然在window
系统下面都是可以使用的
本人注重弹幕交互
,并不适合经常刷大量弹幕的直播间用户
本人直播间地址房间号61627
注意在res/font/下面偶一个字体,有26M
Version 0.0.1
clone
这个项目
下载
NW.js SDK;
nw.js /danmu
//写插件请不要使用link.js开启新的socket线程
//DmLister 是一个`global`属性的对象 请不要覆盖。
var listen = global.DmLister.connect();//链接到本弹幕姬事件中心
listen.on("data",function(data){//添加事件监听
//TOTD ......
})
/**
*
*/
listen.id;
/**
* 添加事件监听
* @param eventName 事件名称
* @param callback 回调
* @returns {boolean} 是否添加成功 已存在返回false
*/
listen.on(eventName,callback);
/**
* 全局广播事件
* @param eventName 事件名
* @param data 数据
*/
listen.emit(eventName,data);//
/**
* 指定激活事件
* @param id 接收者id
* @param eventName 事件名
* @param data 数据
*/
listen.emitOne(id,eventName,data);
/**
* 移除事件监听
* @param eventName 事件名称
* @returns {boolean} true/false
*/
listen.remove(eventName);
/**
* 删除全部事件监听
* @return true;
*/
listen.removeAll(eventName);
//系统事件!
listen.on("DM_msg",callback);//接收弹幕信息
listen.on("DM_connect",callback);//接收错误信息
listen.on("DM_error",callback);//接收错误信息
listen.on("exit",callback);//停止插件运行并退出
listen.on("reload",callback);//插件重新加载
listen.on("stop",callback)//强行退出插件在收到这个信息5秒之后窗口会被强制关闭
请稍微遵守以下命名规则如DM
+_
+msg
,这样就可以理解DM
系统发出了一个msg
事件
//_(:зゝ∠)_表着急
//用来优化网络io什么的
//_(:зゝ∠)_表着急
//好像不是很有必要的样子
主程序保留关键字
User
:用户信息
Config
:主程序配置文件
face
:用户头像地址
test
:测试用
当然可以吧程序的配置文件放在插件内文件夹也可以放在数据库反正咱nodejs
不虚
注意件事情nw.js
内核是chrome
,所有东西都不需要考虑兼容性问题。
{
"name":"插件名称",
"main":"启动文件",
"author":"作者",
"version":"0.0.1",
window:{
"transparent":true//窗口透明
},
"npm":[{
"name":"名称",
"version":"版本"
}]
}
package.json
注意事项
1.除json外不要包含任何字符 如注释
window 支持属性window属性必须在创建窗口的时候传入,是否透明,窗口图标,最大宽高度什么的
npm
暂不支持
由于nw.js 支持node
所以允许加载nodejs的模块
本弹幕姬的插件系统比较简单,所有东西都可以自定义自由度较高//(╯‵□′)╯︵┻━┻偷懒就偷懒废话这么多
minAjax开源的小巧轻便的ajax框架(有修改)
plugin
引用路径src="../../js/minajax.js"
Jquery v3.0.0-beta1前端框架
plugin
引用路径src="../../js/jquery.js"
NW.js 官方英文文档
Nodejs 官方英文文档
W3C 官方英文文档
Jquery 中文文档
danmu
's code in this repo uses the GUN license