Skip to content

Commit

Permalink
clean some shit out
Browse files Browse the repository at this point in the history
  • Loading branch information
axe-me committed Mar 5, 2016
1 parent 9972f0e commit aa7606f
Show file tree
Hide file tree
Showing 10 changed files with 57 additions and 127 deletions.
1 change: 0 additions & 1 deletion app/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
<script src="../bower_components/angular-material/angular-material.js"></script>
<script src="../bower_components/angular-md5/angular-md5.min.js"></script>
<script src="../bower_components/ng-lodash/build/ng-lodash.min.js"></script>
<script src="../node_modules/angular-uuid/angular-uuid.js"></script>
<!-- endbuild -->

<!-- build:app scripts/app.js -->
Expand Down
2 changes: 1 addition & 1 deletion app/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ app.on('ready', function () {
mainWindow.loadURL('file://' + __dirname + '/index.html');

// Open the devtools.
mainWindow.openDevTools();
//mainWindow.openDevTools();

// Emitted when the window is closed.
mainWindow.on('closed', function () {
Expand Down
1 change: 0 additions & 1 deletion app/scripts/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
'ui.router',
'ngMaterial',
'ngAnimate',
'angular-uuid',
'angular-md5',
'ngLodash'
])
Expand Down
2 changes: 0 additions & 2 deletions app/scripts/chat_room/chat.service.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

function chatService(
util,
uuid,
md5,
lodash,
$http,
Expand All @@ -18,7 +17,6 @@
) {

var keepUpdateRoomInfo;
var authServers;
var danmuServer = {
ip: 'openbarrage.douyutv.com',
port: 8601
Expand Down
13 changes: 6 additions & 7 deletions app/scripts/util/util.service.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,14 +42,14 @@

if (nameRegexResult!==null)
item.userName = nameRegexResult[1];
else
else{
item.userName = /\/nn@=(.+?)\//.exec(rawData)[1];

}
if (contentRegexResult!==null)
item.content = contentRegexResult[1];
else
item.content = /\/txt@=(.+?)\//.exec(rawData)[1];

item.content = contentRegexResult[1] || "[斗鱼服务器抽风发了不可识别数据]";
else {
item.content = /\/txt@=(.+?)\//.exec(rawData)[1] || "[斗鱼服务器抽风发了不可识别数据]";
}
item.str = item.userName + ': ' + item.content;
} else if (rawData.indexOf('userenter') > -1 || rawData.indexOf('uenter') > -1) { //user enter
item.type = 'userEnter';
Expand All @@ -62,7 +62,6 @@
item.str = item.userName + ' 进入直播间';
} else if (rawData.indexOf('dgn') > -1 || rawData.indexOf('dgb') > -1) { // gift
item.type = 'gift';
console.log(rawData);
if (rawData.indexOf('dgn') > -1) {
item.userName = /\/src_ncnm@=(.+?)\//.exec(rawData)[1];
item.hits = /\/hits@=(.+?)\//.exec(rawData)[1];
Expand Down
3 changes: 2 additions & 1 deletion bower.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"angular": "~1.4.4",
"angular-material": "~1.0.5",
"angular-ui-router": "ui-router#~0.2.18",
"angular-md5": "~0.1.10"
"angular-md5": "~0.1.10",
"ng-lodash": "~0.4.0"
}
}
123 changes: 29 additions & 94 deletions build/scripts/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
'ui.router',
'ngMaterial',
'ngAnimate',
'angular-uuid',
'angular-md5',
'ngLodash'
])
Expand Down Expand Up @@ -65,7 +64,6 @@

function chatService(
util,
uuid,
md5,
lodash,
$http,
Expand All @@ -74,19 +72,16 @@
) {

var keepUpdateRoomInfo;
var authServers;
var danmuServer = {
ip: 'danmu.douyutv.com',
ip: 'openbarrage.douyutv.com',
port: 8601
}
var authClient;
var danmuClient;
var rollType;
var rollKey;

$rootScope.$on('abortCurrConn', function () {
console.log('ending client...');
authClient.end();
danmuClient.end();
});

Expand Down Expand Up @@ -165,7 +160,6 @@

res.on('end', function () {
var roomObj = angular.fromJson(roomRegex.exec(html)[1]);
authServers=angular.fromJson(unescape(authServerRegex.exec(html)[1]));

util.giftConfig=angular.fromJson(giftConfigRegex.exec(html)[1]);

Expand All @@ -181,7 +175,7 @@

service.roomInfoStatus.isReady = true;

connAuthServ(authServers[0], service.roomInfo.roomID);
connDanmuServ(service.roomInfo.roomID);

util.showMsg('获取房间信息成功!');
});
Expand All @@ -190,89 +184,23 @@
});
}

function connAuthServ (serv, roomID) {
var authInfo = "";
var userRegex = /\/username@=(.+)\/nickname/;
var gidRegex = /\/gid@=(\d+)\//;
var username;
var gid;

util.showMsg("连接弹幕认证服务器中...");
authClient = net.connect({host:serv.ip, port:serv.port},
function() {
util.showMsg("弹幕服务器认证中...");
var time = Math.floor(Date.now() / 1000);
var magicString = '7oE9nPEG9xXV69phU31FYCLUagKeYtsF';
var devID = uuid.v4().replace(/-/g, '');
var vk = md5.createHash(time+magicString+devID);
var dataInit = "type@=loginreq/username@=/ct@=0/password@=/roomid@="+
roomID+
"/devid@="+devID+
"/rt@="+Math.floor(Date.now() / 1000)+
"/vk@="+vk+"/ver@=20150929/";
var dataTwo = "type@=qrl/rid@=" + roomID + "/";
var dataThr = "type@=keeplive/tick@=" + Math.floor(Date.now() / 1000) +
"/vbw@=0/k@=19beba41da8ac2b4c7895a66cab81e23/"

authClient.write(util.toBytes(dataThr));
authClient.write(util.toBytes(dataInit));
authClient.write(util.toBytes(dataTwo));
});

authClient.on('data', function (data) {
authInfo+=data.toString();

if (!username)
username = userRegex.exec(authInfo);
if (!gid)
gid = gidRegex.exec(authInfo);

if ((username!==null)&&(gid!== null)){
console.log('Got Auth Response');
authClient.end();
}
});

authClient.on('end', function () {
if (username&&gid){
connDanmuServ(roomID, gid[1], username[1]);
util.showMsg("弹幕服务器认证完成");
console.log('Auth server sucess');
} else {
console.log('Auth server fail');
util.showMsg("弹幕服务器认证失败");
util.showMsg("尝试重新弹幕服务器认证");
connAuthServ(serv, roomID);
}
console.log('Auth server Close');
});

authClient.on('error', function (error) {
console.log('auth fail'+ error.toString());
util.showMsg("弹幕服务器认证失败");
util.showMsg("尝试重新弹幕服务器认证");
connAuthServ(serv, roomID);
});
}

function connDanmuServ (roomID, gid, username) {
util.showMsg("连接弹幕服务器中...");
function connDanmuServ (roomID) {
util.showMsg("寻找弹幕服务器中...");
danmuClient = net.connect({host:danmuServer.ip, port:danmuServer.port},
function () {
util.showMsg("弹幕服务器连接成功");
var data = "type@=loginreq/username@="+username+
"/password@=1234567890123456/roomid@=" + roomID + "/";
var dataTwo = "type@=joingroup/rid@=" + roomID + "/gid@="+gid+"/";

danmuClient.write(util.toBytes(data));
danmuClient.write(util.toBytes(dataTwo));
console.log('Start recive data');
util.showMsg("弹幕服务器找到 开始连接");

var loginServer = "type@=loginreq/roomid@="+roomID+"/";
var joinGroup = "type@=joingroup/rid@=" + roomID + "/gid@=-9999/";

danmuClient.write(util.toBytes(loginServer));
danmuClient.write(util.toBytes(joinGroup));
console.log('login request sent');
service.chatStatus.hasStartFetchMsg = true;
//keep Alive!
$interval(function () {
danmuClient.write(util.toBytes("type@=keeplive/tick@=" + Math.floor(Date.now() / 1000) + "/"));
}, 20000);
setInterval
}, 45000);
});


Expand Down Expand Up @@ -317,6 +245,8 @@
danmuClient.on('error', function () {
console.error('Error: Danmu server');
util.showMsg("弹幕服务器连接错误");
connDanmuServ(roomID);
util.showMsg("重连弹幕服务器...");
});
}

Expand Down Expand Up @@ -367,14 +297,14 @@

if (nameRegexResult!==null)
item.userName = nameRegexResult[1];
else
else{
item.userName = /\/nn@=(.+?)\//.exec(rawData)[1];

}
if (contentRegexResult!==null)
item.content = contentRegexResult[1];
else
item.content = /\/txt@=(.+?)\//.exec(rawData)[1];

item.content = contentRegexResult[1] || "[斗鱼服务器抽风发了不可识别数据]";
else {
item.content = /\/txt@=(.+?)\//.exec(rawData)[1] || "[斗鱼服务器抽风发了不可识别数据]";
}
item.str = item.userName + ': ' + item.content;
} else if (rawData.indexOf('userenter') > -1 || rawData.indexOf('uenter') > -1) { //user enter
item.type = 'userEnter';
Expand Down Expand Up @@ -460,7 +390,7 @@

function toBytes(content) {
var length = [content.length + 9, 0x00, 0x00, 0x00];
var magic = [0xb1, 0x02, 0x00, 0x00];
var magic = [0xb1, 0x02, 0x00, 0x00]; //little ending hex number 689
var ending = [0x00];
var contentArr = [];

Expand Down Expand Up @@ -488,7 +418,7 @@ function ChatController($scope, $rootScope, chatService, $interval, util) {

angular.extend($scope, {
isOpenDial: false,
roomAddr: "http://www.douyutv.com/shanex",
roomAddr: "http://www.douyutv.com/67554",
startGetMsg: startGetMsg,
roomInfoStatus: chatService.roomInfoStatus,
roomInfo: chatService.roomInfo,
Expand All @@ -500,14 +430,19 @@ function ChatController($scope, $rootScope, chatService, $interval, util) {
},
openSearchBar: false,
disableScroll: disableScroll,
clearFilter: clearFilter
clearFilter: clearFilter,
getRoomStatusStr: getRoomStatusStr
});

$scope.$on('newMsgArrive', function () {
$scope.$apply();
if (util.enableScroll) { util.scrollChatRoom() };
});

function getRoomStatusStr () {
return chatService.roomInfo.isLive===1?["直播中","online"]:["未直播","offline"];
}

function clearFilter () {
$scope.openSearchBar = false;
$scope.danmuFilter = "";
Expand Down
2 changes: 1 addition & 1 deletion build/scripts/chat_room/chat-room.html
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
<div class="room-info-row"
layout="row"
layout-align="space-between center">
<div ng-class="roomInfo.isLive===1?'online':'offline'">{{roomInfo.isLive===1?"直播中":"未直播"}}</div>
<div ng-class="getRoomStatusStr()[1]">{{getRoomStatusStr()[0]}}</div>
<div ng-if="roomInfo.spectator">人气: {{roomInfo.spectator}}</div>
</div>
</div>
Expand Down
36 changes: 18 additions & 18 deletions build/scripts/vendor.js

Large diffs are not rendered by default.

1 change: 0 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
"rcedit": "^0.3.0"
},
"dependencies": {
"angular-uuid": "0.0.2",
"gulp-autoprefixer": "^3.1.0",
"gulp-load-plugins": "^1.2.0",
"gulp-minify-css": "^1.2.4",
Expand Down

0 comments on commit aa7606f

Please sign in to comment.