var webcam_videos = []; var chat_users = []; var webcam_width = 130; var webcam_height = 90; var peerConnection; var websocketChat = { send: function (message) { rtc._socket.send(message); }, recv: function (message) { return message; }, event: 'receive_chat_msg' }; var dataChannelChat = { broadcast: function(message) { for(var connection in rtc.dataChannels) { var channel = rtc.dataChannels[connection]; if (rtc.connection_ok_to_send[connection]) { channel.send(message); } else { console.log("unable to send message to " + connection); } } }, send: function(connection, message) { var channel = rtc.dataChannels[connection]; if (rtc.connection_ok_to_send[connection]) { channel.send(message); } else { console.log("unable to send message to " + connection); } }, recv: function(channel, message) { return JSON.parse(message).data; }, event: 'data stream data' }; var ppChat = { init:function(){ $('#chat-wrapper').window('open'); }, addmsg_to_board : function(username, msg, color) { var messages = $('#msgboard'); msg = ppChat.sanitize(msg); if(color) { msg = '' + username + ' : ' + '' + msg + ''; } else { msg = '' + username + ' : ' + '' + msg + ''; } messages.html(messages.html() + msg + '
'); messages.scrollTop(10000); }, dispsystemmessage : function(msg) { var messages = $('#msgboard'); msg = ppChat.sanitize(msg); msg = '' + msg + ''; messages.html(messages.html() + msg + '
'); messages.scrollTop(10000); }, sanitize : function(msg) { /* this isn't actual security, just avoids accidential html input */ return msg.replace(/