mirror of
https://github.com/DanielnetoDotCom/YouPHPTube
synced 2025-10-03 09:49:28 +02:00
Getting ready for the socket
This commit is contained in:
parent
bb45ecff72
commit
d1db39b4d1
27 changed files with 1046 additions and 306 deletions
|
@ -1,40 +1,49 @@
|
|||
var socketMyResourceId = 0;
|
||||
var socketConnectRequested = 0;
|
||||
var totalDevicesOnline = 0;
|
||||
function socketConnect() {
|
||||
if(socketConnectRequested){
|
||||
if (socketConnectRequested) {
|
||||
return false;
|
||||
}
|
||||
socketConnectRequested = 1;
|
||||
console.log('Trying to reconnect on ' + webSocketURL);
|
||||
console.log('Trying to reconnect on socket...');
|
||||
conn = new WebSocket(webSocketURL);
|
||||
conn.onopen = function (e) {
|
||||
console.log("Socket onopen", e);
|
||||
socketMyResourceId = 0;
|
||||
sendSocketMessageToNone("webSocketToken", "");
|
||||
console.log("Socket onopen");
|
||||
return false;
|
||||
};
|
||||
conn.onmessage = function (e) {
|
||||
//console.log("Socket onmessage", e);
|
||||
var json = JSON.parse(e.data);
|
||||
console.log("Socket onmessage", json);
|
||||
if (!socketMyResourceId) {
|
||||
socketMyResourceId = parseInt(json.ResourceId);
|
||||
var msg = "Socket socketMyResourceId " + socketMyResourceId;
|
||||
//sendSocketMessage(msg, "", "");
|
||||
console.log(msg);
|
||||
parseSocketResponse(json);
|
||||
if (json.type == webSocketTypes.ON_VIDEO_MSG) {
|
||||
console.log("Socket onmessage ON_VIDEO_MSG", json);
|
||||
$('.videoUsersOnline, .videoUsersOnline_' + json.videos_id).text(json.total);
|
||||
}
|
||||
if (json.type == webSocketTypes.ON_LIVE_MSG) {
|
||||
console.log("Socket onmessage ON_LIVE_MSG", json);
|
||||
var selector = '#liveViewStatusID_' + json.live_key.key + '_' + json.live_key.live_servers_id;
|
||||
if (json.is_live) {
|
||||
onlineLabelOnline(selector);
|
||||
} else {
|
||||
onlineLabelOffline(selector);
|
||||
}
|
||||
}
|
||||
if (json.type == webSocketTypes.NEW_CONNECTION) {
|
||||
//console.log("Socket onmessage NEW_CONNECTION", json);
|
||||
} else if (json.type == webSocketTypes.NEW_DISCONNECTION) {
|
||||
//console.log("Socket onmessage NEW_DISCONNECTION", json);
|
||||
} else {
|
||||
var myfunc;
|
||||
if (json.callback) {
|
||||
console.log("Socket onmessage json.callback", json.callback);
|
||||
var code = "if(typeof " + json.callback + " == 'function'){myfunc = " + json.callback + ";}else{myfunc = defaultCallback;}";
|
||||
//console.log(code);
|
||||
eval(code);
|
||||
} else {
|
||||
console.log("onmessage: callback not found");
|
||||
console.log("onmessage: callback not found", json);
|
||||
myfunc = defaultCallback;
|
||||
}
|
||||
myfunc(json);
|
||||
myfunc(json.msg);
|
||||
}
|
||||
|
||||
};
|
||||
conn.onclose = function (e) {
|
||||
socketConnectRequested = 0;
|
||||
|
@ -59,29 +68,18 @@ function sendSocketMessageToNone(msg, callback) {
|
|||
sendSocketMessageToUser(msg, callback, -1);
|
||||
}
|
||||
|
||||
function sendSocketMessageToUser(msg, callback, users_id) {
|
||||
function sendSocketMessageToUser(msg, callback, to_users_id) {
|
||||
if (conn.readyState === 1) {
|
||||
conn.send(JSON.stringify({msg: msg, webSocketToken: webSocketToken, callback: callback, users_id, users_id}));
|
||||
conn.send(JSON.stringify({msg: msg, webSocketToken: webSocketToken, callback: callback, to_users_id: to_users_id}));
|
||||
} else {
|
||||
console.log('Socket not ready send message in 1 second');
|
||||
setTimeout(function () {
|
||||
sendSocketMessageToUser(msg, callback, to_users_id);
|
||||
sendSocketMessageToUser(msg, to_users_id, callback);
|
||||
}, 1000);
|
||||
}
|
||||
}
|
||||
|
||||
function sendSocketMessageToUser(msg, users_id, callback) {
|
||||
if (conn.readyState === 1) {
|
||||
conn.send(JSON.stringify({msg: msg, webSocketToken: webSocketToken, users_id: users_id, callback: callback}));
|
||||
} else {
|
||||
console.log('Socket not ready send message in 1 second');
|
||||
setTimeout(function () {
|
||||
sendSocketMessageToUser(msg, users_id, callback);
|
||||
}, 1000);
|
||||
}
|
||||
}
|
||||
|
||||
function isSocketActive(){
|
||||
function isSocketActive() {
|
||||
return typeof conn != 'undefined' && conn.readyState === 1;
|
||||
}
|
||||
|
||||
|
@ -89,6 +87,30 @@ function defaultCallback(json) {
|
|||
//console.log('defaultCallback', json);
|
||||
}
|
||||
|
||||
function parseSocketResponse(json) {
|
||||
console.log("parseSocketResponse", json);
|
||||
if (json && typeof json.autoUpdateOnHTML !== 'undefined') {
|
||||
//console.log("parseSocketResponse", json.autoUpdateOnHTML);
|
||||
for (var prop in json.autoUpdateOnHTML) {
|
||||
if(json.autoUpdateOnHTML[prop]===false){
|
||||
continue;
|
||||
}
|
||||
$('.'+prop).text(json.autoUpdateOnHTML[prop]);
|
||||
}
|
||||
}
|
||||
|
||||
if (json && typeof json.autoEvalCode !== 'undefined') {
|
||||
//console.log("parseSocketResponse", json.autoUpdateOnHTML);
|
||||
for (var prop in json.autoUpdateOnHTML) {
|
||||
if(json.autoEvalCode[prop]===false){
|
||||
continue;
|
||||
}
|
||||
console.log("autoEvalCode", json.autoEvalCode[prop]);
|
||||
eval(json.autoEvalCode[prop]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$(function () {
|
||||
socketConnect();
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue