From 9a11fd66ab4fb5ccc3d5804a265a4c7fbb0e50c6 Mon Sep 17 00:00:00 2001 From: casmo Date: Thu, 9 Mar 2017 11:51:05 +0100 Subject: [PATCH] Refactor emitters + Websockets -> WebRTC. --- .gitignore | 0 build/assets/controller-mode.png | Bin 0 -> 1713 bytes build/assets/couchfriends.ui.css | 239 ++ {src => build/assets}/couchfriends.ui.less | 9 + build/assets/notification.wav | Bin 0 -> 303364 bytes build/couchfriends.api-latest.js | 5 +- build/couchfriends.ui.css | 1 - gruntfile.js | 11 +- readme.md | 46 +- src/Emitter.js | 163 ++ src/assets/couchfriends.ui.css | 239 ++ src/assets/couchfriends.ui.less | 260 ++ src/assets/notification.wav | Bin 0 -> 303364 bytes src/couchfriends.api.js | 559 ++-- src/index.html | 15 + src/peer.js | 2939 ++++++++++++++++++++ 16 files changed, 4190 insertions(+), 296 deletions(-) create mode 100644 .gitignore create mode 100644 build/assets/controller-mode.png create mode 100644 build/assets/couchfriends.ui.css rename {src => build/assets}/couchfriends.ui.less (95%) create mode 100644 build/assets/notification.wav delete mode 100644 build/couchfriends.ui.css create mode 100644 src/Emitter.js create mode 100644 src/assets/couchfriends.ui.css create mode 100644 src/assets/couchfriends.ui.less create mode 100644 src/assets/notification.wav create mode 100644 src/index.html create mode 100644 src/peer.js diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/build/assets/controller-mode.png b/build/assets/controller-mode.png new file mode 100644 index 0000000000000000000000000000000000000000..a1484ec1f12a09642407e344b69ab460e0c36c8f GIT binary patch literal 1713 zcmeAS@N?(olHy`uVBq!ia0vp^T0ktt!3HD`?mYJmNJ*BsMwA5Srr5%(GQ`zk9!uLS~AsQn;zFfp39xYDT62(s|s5su(?)1Hb_`sNdc^+B->UA;;0DU00rm#qErP_Jp=B~J68 zdQ)(_#Sy1oeV}9XLD7m7%`hQg+5s`)i5AF#C;QYqU|KH%ChGRWO|OA@McvcIF{I+w zp6SsZB8ei$uV?b=F5YCI;cPx1H9XEqBzXnYB8Z@zG`l5EPR=KK83Ibhn zRR%R4%}mqv5(3>qL@GMZCTy>Ip?Gpjk}jA2U;jVqZHfDKuD#tT|NHD2%jdt(n?K*3 zQzRV%#WmeL@5%<)L;365IsoSIjM9~N9$eZeo_p_2pO1plzq$HA`i zWyF7KDQvsEHels(ul~~OjPDwaHcXlFF|Pf1%v6EfZ$cK&KKS^+|BdnrCpfcGqXRbE zt`f`*WVy>~eK1b*SEhjG-!p972aKiVPy5I7c8NHiKd4)9`1o>@XnTu;WkNE6KSUR@ ztXkW0?Uu^?g&DsM&mKM%oLzP+apM^q#_Nvq*M08pYhag2e7M}Zar(im4?=UE@69QY zn!_Tkb4sBpP&Bu`J2I!=^^x&|iAVoBZa7=;m+^^p#~#kUO|=4BnlYHRu z-{R6~zrQb8wC(rH$)_dk&DIp|{P3&uX?@7zem-eQ>qmy`!duEJIXX7K`xT@y-R@aO zb;rv~JDm5FKh&xI6Ll?hmD#D7X1yBM=-nK18GQN98NTy4nR(~`ZgCOF+s zy=76ocFk<}0~<|b!j8?@9sO~SsM75-?boCNj)y+5mSA9a(3J4MzLCr6n4{)zsf7EB i7V>@1F4=F-#KX|OYTKFB1q^pUm58USpUXO@geCyoCY`DP literal 0 HcmV?d00001 diff --git a/build/assets/couchfriends.ui.css b/build/assets/couchfriends.ui.css new file mode 100644 index 0000000..78438b4 --- /dev/null +++ b/build/assets/couchfriends.ui.css @@ -0,0 +1,239 @@ +#COUCHFRIENDS-overlay { + pointer-events: none; + font-family: OpenSans, "Open Sans", arial, sans-serif; + color: #222222; + font-size: 16px; + position: fixed; + z-index: 1001; + left: 0; + top: 0; + width: 100%; + height: 100%; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-underline { + text-decoration: underline; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications { + position: absolute; + width: 200px; + height: auto; + right: 10px; + bottom: 10px; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification { + position: relative; + overflow-y: hidden; + background-color: rgba(255, 255, 255, 0.9); + box-shadow: 0 0 25px rgba(0, 0, 0, 0.2); + animation-name: COUCHFRIENDS-slideUp; + -webkit-animation-name: COUCHFRIENDS-slideUp; + margin-top: 10px; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + animation-timing-function: ease; + -webkit-animation-timing-function: ease; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification p { + display: block; + padding: 10px; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification p:after { + display: block; + font-size: 0; + content: " "; + clear: both; + height: 0; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification img { + float: left; + margin-right: 10px; + max-width: 64px; + max-height: 64px; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification-error { + background-color: rgba(255, 0, 0, 0.5); +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification-achievement { + background-color: rgba(88, 255, 0, 0.5); +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification.COUCHFRIENDS-notification-close { + animation-name: COUCHFRIENDS-slideDown; + -webkit-animation-name: COUCHFRIENDS-slideDown; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-popup { + text-align: center; + position: absolute; + width: 25%; + bottom: 0; + left: 0; + /* bring your own prefixes */ + margin-left: -12.5%; + background-color: rgba(255, 255, 255, 0.9); + box-shadow: 0 0 25px rgba(0, 0, 0, 0.2); +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-popup #COUCHFRIENDS-code { + font-size: 150%; + display: block; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-fadeIn { + animation-name: COUCHFRIENDS-fadeIn; + -webkit-animation-name: COUCHFRIENDS-fadeIn; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-fadeOut { + animation-name: COUCHFRIENDS-fadeOut; + -webkit-animation-name: COUCHFRIENDS-fadeOut; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-moveBottomLeft { + animation-name: COUCHFRIENDS-moveBottomLeft; + -webkit-animation-name: COUCHFRIENDS-moveBottomLeft; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-moveCenter { + animation-name: COUCHFRIENDS-moveCenter; + -webkit-animation-name: COUCHFRIENDS-moveCenter; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +@keyframes COUCHFRIENDS-moveBottomLeft { + 0% { + font-size: 22px; + line-height: 37px; + padding: 15px; + bottom: 50%; + left: 50%; + } + 100% { + font-size: 14px; + line-height: 19px; + padding: 5px; + left: 13%; + bottom: .5%; + } +} +@-webkit-keyframes COUCHFRIENDS-moveBottomLeft { + 0% { + font-size: 22px; + line-height: 37px; + padding: 15px; + bottom: 50%; + left: 50%; + } + 100% { + font-size: 14px; + line-height: 19px; + padding: 5px; + left: 13%; + bottom: .5%; + } +} +@keyframes COUCHFRIENDS-moveCenter { + 0% { + font-size: 14px; + line-height: 19px; + padding: 5px; + left: 13%; + bottom: .5%; + } + 100% { + font-size: 22px; + line-height: 37px; + padding: 15px; + bottom: 50%; + left: 50%; + } +} +@-webkit-keyframes COUCHFRIENDS-moveCenter { + 0% { + font-size: 14px; + line-height: 19px; + padding: 5px; + left: 13%; + bottom: .5%; + } + 100% { + font-size: 22px; + line-height: 37px; + padding: 15px; + bottom: 50%; + left: 50%; + } +} +@keyframes COUCHFRIENDS-slideDown { + 0% { + max-height: 150px; + } + 100% { + max-height: 0; + } +} +@-webkit-keyframes COUCHFRIENDS-slideDown { + 0% { + max-height: 150px; + } + 100% { + max-height: 0; + } +} +@keyframes COUCHFRIENDS-slideUp { + 0% { + max-height: 0; + } + 100% { + max-height: 150px; + } +} +@-webkit-keyframes COUCHFRIENDS-slideUp { + 0% { + max-height: 0; + } + 100% { + max-height: 150px; + } +} +@keyframes COUCHFRIENDS-fadeIn { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@-webkit-keyframes COUCHFRIENDS-fadeIn { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@keyframes COUCHFRIENDS-fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} +@-webkit-keyframes COUCHFRIENDS-fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} diff --git a/src/couchfriends.ui.less b/build/assets/couchfriends.ui.less similarity index 95% rename from src/couchfriends.ui.less rename to build/assets/couchfriends.ui.less index 1140ebb..cbb6d27 100644 --- a/src/couchfriends.ui.less +++ b/build/assets/couchfriends.ui.less @@ -2,11 +2,14 @@ @animationDuration: .5s; @boxShadow: 0 0 25px rgba(0,0,0,.2); @backgroundPopup: rgba(255,255,255,.9); +@warning: rgba(255,0,0,.5); +@bonus: rgba(88, 255, 0, 0.5); @fontSmall: 14px; @paddingSmall: 5px; @fontLarge: 22px; @paddingLarge: 15px; #@{prefix}-overlay { + pointer-events: none; font-family: OpenSans, "Open Sans", arial, sans-serif; color: #222222; font-size: 16px; @@ -60,6 +63,12 @@ max-height: 64px; } } + .@{prefix}-notification-error { + background-color: @warning; + } + .@{prefix}-notification-achievement { + background-color: @bonus; + } .@{prefix}-notification.@{prefix}-notification-close { animation-name: COUCHFRIENDS-slideDown; -webkit-animation-name: COUCHFRIENDS-slideDown; diff --git a/build/assets/notification.wav b/build/assets/notification.wav new file mode 100644 index 0000000000000000000000000000000000000000..97e7951a2e7469509f3fc69356f5f942ef573f26 GIT binary patch literal 303364 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\NO{*5PzvHvJ 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

-5Rvs} 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 literal 0 HcmV?d00001 diff --git a/build/couchfriends.api-latest.js b/build/couchfriends.api-latest.js index d2ffcc4..3953db5 100644 --- a/build/couchfriends.api-latest.js +++ b/build/couchfriends.api-latest.js @@ -1,2 +1,3 @@ -/*! couchfriends.api 2016-01-08 */ -"use strict";function Emitter(a){return a?mixin(a):void 0}function mixin(a){for(var b in Emitter.prototype)a[b]=Emitter.prototype[b];return a}Emitter.prototype.on=Emitter.prototype.addEventListener=function(a,b){return this._callbacks=this._callbacks||{},(this._callbacks["$"+a]=this._callbacks["$"+a]||[]).push(b),this},Emitter.prototype.once=function(a,b){function c(){this.off(a,c),b.apply(this,arguments)}return c.fn=b,this.on(a,c),this},Emitter.prototype.off=Emitter.prototype.removeListener=Emitter.prototype.removeAllListeners=Emitter.prototype.removeEventListener=function(a,b){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var c=this._callbacks["$"+a];if(!c)return this;if(1==arguments.length)return delete this._callbacks["$"+a],this;for(var d,e=0;ed;++d)c[d].apply(this,b)}return this},Emitter.prototype.listeners=function(a){return this._callbacks=this._callbacks||{},this._callbacks["$"+a]||[]},Emitter.prototype.hasListeners=function(a){return!!this.listeners(a).length};var COUCHFRIENDS={REVISION:"3",_VARS:{baseUrl:"http://cdn.couchfriends.com/api/",init:!1,socket:{},connectedPlayers:[],gameCode:"",status:{connected:!1},sounds:{},soundFiles:[{play:function(){},key:"achievement",file:"achievement.wav"}]},settings:{apiKey:"",host:"ws.couchfriends.com",port:"80",ui:{showNotifications:!0,showHowTo:!0,sound:!0}}};COUCHFRIENDS.callbacks=[],COUCHFRIENDS.callbacks["game.start"]="gameStart",COUCHFRIENDS.callbacks["game.achievementUnlock"]="achievementUnlock",COUCHFRIENDS.callbacks["player.left"]="playerLeft",COUCHFRIENDS.callbacks["player.join"]="playerJoined",COUCHFRIENDS.callbacks["player.orientation"]="playerOrientation",COUCHFRIENDS.callbacks["player.click"]="playerClick",COUCHFRIENDS.callbacks["player.clickDown"]="playerClickDown",COUCHFRIENDS.callbacks["player.clickUp"]="playerClickUp",COUCHFRIENDS.callbacks["player.buttonClick"]="buttonClick",COUCHFRIENDS.callbacks["player.buttonDown"]="buttonDown",COUCHFRIENDS.callbacks["player.buttonUp"]="buttonUp",COUCHFRIENDS.callbacks["player.identify"]="playerIdentify",COUCHFRIENDS.callbacks.error="error",COUCHFRIENDS.init=function(){COUCHFRIENDS._VARS.init=!0;var a=document.getElementsByTagName("head")[0],b=document.createElement("link");b.rel="stylesheet",b.type="text/css",b.href="http://cdn.couchfriends.com/api/couchfriends.ui.css",b.media="all",a.appendChild(b);var c=document.createElement("div");c.id="COUCHFRIENDS-overlay",c.innerHTML='

',document.body.appendChild(c),this._loadAudio()},COUCHFRIENDS._loadAudio=function(){var a=!1;"function"==typeof AudioContext&&(a=new AudioContext),a&&COUCHFRIENDS._VARS.soundFiles.forEach(function(b,c){COUCHFRIENDS._VARS.sounds[b.key]={};var d=new XMLHttpRequest;d.open("GET",COUCHFRIENDS._VARS.baseUrl+"assets/"+b.file,!0),d.responseType="arraybuffer",COUCHFRIENDS._VARS.sounds[b.key].play=function(){},d.onload=function(){try{a.decodeAudioData(d.response,function(c){COUCHFRIENDS._VARS.sounds[b.key].play=function(){if(0==COUCHFRIENDS.settings.ui.sound)return!1;var b=a.createBufferSource();b.buffer=c,b.connect(a.destination),b.start||(b.start=b.noteOn),b.start(0)}})}catch(c){}},d.send()})},COUCHFRIENDS.showNotification=function(a,b){if(null==b&&(b=3500),0!=COUCHFRIENDS.settings.ui.showNotifications){var c=Date.now(),d=document.createElement("div");d.className="COUCHFRIENDS-notification",d.id="COUCHFRIENDS-"+c,d.innerHTML="

"+a+"

",document.getElementById("COUCHFRIENDS-notifications").appendChild(d),setTimeout(function(){document.getElementById("COUCHFRIENDS-"+c).className="COUCHFRIENDS-notification COUCHFRIENDS-notification-close",setTimeout(function(){var a=document.getElementById("COUCHFRIENDS-"+c);a.parentNode&&a.parentNode.removeChild(a)},1e3)},b)}},COUCHFRIENDS.showHideHowToPopup=function(){if(0==COUCHFRIENDS.settings.showHowTo)return void(1==COUCHFRIENDS.settings.showConnect?document.getElementById("COUCHFRIENDS-popup").className="COUCHFRIENDS-moveBottomLeft":document.getElementById("COUCHFRIENDS-popup").style.display="none");if(COUCHFRIENDS._VARS.connectedPlayers.length>0||""==COUCHFRIENDS._VARS.gameCode){if(null===document.getElementById("COUCHFRIENDS-popup").offsetParent)return;return void(document.getElementById("COUCHFRIENDS-popup").className="COUCHFRIENDS-moveBottomLeft")}var a=' Go to www.couchfriends.com with your phone or tablet and enter the code '+COUCHFRIENDS._VARS.gameCode+"";document.getElementById("COUCHFRIENDS-popup").innerHTML=a,null!==document.getElementById("COUCHFRIENDS-popup").offsetParent&&(document.getElementById("COUCHFRIENDS-popup").className="COUCHFRIENDS-moveCenter")},COUCHFRIENDS.connect=function(){return 0==COUCHFRIENDS._VARS.init&&COUCHFRIENDS.init(),"undefined"==typeof WebSocket?(COUCHFRIENDS.emit("error","Websockets are not supported by device."),!1):""==COUCHFRIENDS.settings.host||""==COUCHFRIENDS.settings.port?(COUCHFRIENDS.emit("error","Host or port is empty."),!1):1==COUCHFRIENDS._VARS.status.connected?!1:(COUCHFRIENDS._VARS.socket=new WebSocket("wss://"+COUCHFRIENDS.settings.host+":"+COUCHFRIENDS.settings.port),COUCHFRIENDS._VARS.socket.onmessage=function(a){var b=JSON.parse(a.data),c="";"string"==typeof b.topic&&(c+=b.topic),"string"==typeof b.action&&(c+="."+b.action),"undefined"!=typeof COUCHFRIENDS.callbacks[c]&&(COUCHFRIENDS.emit("_"+COUCHFRIENDS.callbacks[c],b.data),COUCHFRIENDS.emit(COUCHFRIENDS.callbacks[c],b.data))},COUCHFRIENDS._VARS.socket.onopen=function(){COUCHFRIENDS._VARS.status.connected=!0,COUCHFRIENDS.emit("connect")},void(COUCHFRIENDS._VARS.socket.onclose=function(){COUCHFRIENDS._VARS.status.connected=!1,COUCHFRIENDS.emit("disconnect")}))},COUCHFRIENDS.send=function(a){return 0==COUCHFRIENDS._VARS.status.connected?(COUCHFRIENDS.emit("error","Message not send because game is not connected to server."),!1):void COUCHFRIENDS._VARS.socket.send(JSON.stringify(a))},Emitter(COUCHFRIENDS),COUCHFRIENDS.on("error",function(a){}),COUCHFRIENDS.on("connect",function(){}),COUCHFRIENDS.on("disconnect",function(){}),COUCHFRIENDS.on("_disconnect",function(){COUCHFRIENDS._VARS.gameCode=""}),COUCHFRIENDS.on("gameStart",function(a){}),COUCHFRIENDS.on("_gameStart",function(a){COUCHFRIENDS._VARS.gameCode=a.code,COUCHFRIENDS.showHideHowToPopup()}),COUCHFRIENDS.on("playerLeft",function(a){}),COUCHFRIENDS.on("_playerLeft",function(a){var b=a.id;null!=a.name&&(b=a.name),COUCHFRIENDS.showNotification('Player "'+b+'" left.'),COUCHFRIENDS._VARS.connectedPlayers.splice(COUCHFRIENDS._VARS.connectedPlayers.indexOf(a.id),1),COUCHFRIENDS.showHideHowToPopup()}),COUCHFRIENDS.on("achievementUnlock",function(a){}),COUCHFRIENDS.on("_achievementUnlock",function(a){COUCHFRIENDS._VARS.sounds.achievement.play(),COUCHFRIENDS.showNotification(' Achievement unlocked: '+a.name+"",5e3)}),COUCHFRIENDS.on("playerJoined",function(a){}),COUCHFRIENDS.on("_playerJoined",function(a){var b=a.id;null!=a.name&&(b=a.name),COUCHFRIENDS.showNotification('Player "'+b+'" joined.'),COUCHFRIENDS._VARS.connectedPlayers.push(a.id),COUCHFRIENDS.showHideHowToPopup()}),COUCHFRIENDS.on("playerOrientation",function(a){}),COUCHFRIENDS.on("playerIdentify",function(a){}),COUCHFRIENDS.on("playerClick",function(a){}),COUCHFRIENDS.on("playerClickDown",function(a){}),COUCHFRIENDS.on("playerClickUp",function(a){}),COUCHFRIENDS.on("buttonClick",function(a){}),COUCHFRIENDS.on("buttonDown",function(a){}),COUCHFRIENDS.on("buttonUp",function(a){}); \ No newline at end of file +/*! couchfriends.api 2017-03-09 */ +"use strict";function Emitter(a){if(a)return mixin(a)}function mixin(a){for(var b in Emitter.prototype)a[b]=Emitter.prototype[b];return a}"undefined"!=typeof module&&(module.exports=Emitter),Emitter.prototype.on=Emitter.prototype.addEventListener=function(a,b){return this._callbacks=this._callbacks||{},(this._callbacks["$"+a]=this._callbacks["$"+a]||[]).push(b),this},Emitter.prototype.once=function(a,b){function c(){this.off(a,c),b.apply(this,arguments)}return c.fn=b,this.on(a,c),this},Emitter.prototype.off=Emitter.prototype.removeListener=Emitter.prototype.removeAllListeners=Emitter.prototype.removeEventListener=function(a,b){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var c=this._callbacks["$"+a];if(!c)return this;if(1==arguments.length)return delete this._callbacks["$"+a],this;for(var d,e=0;ee.chunkedMTU)return void this._sendChunks(d);e.supports.sctp?e.supports.binaryBlob?this._bufferedSend(d):e.blobToArrayBuffer(d,function(a){c._bufferedSend(a)}):e.blobToBinaryString(d,function(a){c._bufferedSend(a)})}else this._bufferedSend(a)},d.prototype._bufferedSend=function(a){!this._buffering&&this._trySend(a)||(this._buffer.push(a),this.bufferSize=this._buffer.length)},d.prototype._trySend=function(a){try{this._dc.send(a)}catch(b){this._buffering=!0;var c=this;return setTimeout(function(){c._buffering=!1,c._tryBuffer()},100),!1}return!0},d.prototype._tryBuffer=function(){if(0!==this._buffer.length){var a=this._buffer[0];this._trySend(a)&&(this._buffer.shift(),this.bufferSize=this._buffer.length,this._tryBuffer())}},d.prototype._sendChunks=function(a){for(var b=e.chunk(a),c=0,d=b.length;c2&&200===this.status&&this.responseText&&b._handleStream(this)},this._http.send(null),this._setHTTPTimeout()}catch(c){e.log("XMLHttpRequest not available; defaulting to WebSockets")}},d.prototype._handleStream=function(a){var b=a.responseText.split("\n");if(a._buffer)for(;a._buffer.length>0;){var c=a._buffer.shift(),d=b[c];try{d=JSON.parse(d)}catch(f){a._buffer.shift(c);break}this.emit("message",d)}var g=b[a._index];if(g)if(a._index+=1,a._index===b.length)a._buffer||(a._buffer=[]),a._buffer.push(a._index-1);else{try{g=JSON.parse(g)}catch(f){return void e.log("Invalid server message",g)}this.emit("message",g)}},d.prototype._setHTTPTimeout=function(){var a=this;this._timeout=setTimeout(function(){var b=a._http;a._wsOpen()?b.abort():(a._startXhrStream(b._streamIndex+1),a._http.old=b)},25e3)},d.prototype._wsOpen=function(){return this._socket&&1==this._socket.readyState},d.prototype._sendQueuedMessages=function(){for(var a=0,b=this._queue.length;a0&&(h.error=h._printWith("ERROR")),h.logLevel>1&&(h.warn=h._printWith("WARNING")),h.logLevel>2&&(h.log=h._print)},setLogFunction:function(a){a.constructor!==Function?h.warn("The log function you passed in is not a function. Defaulting to regular logs."):h._print=a},_printWith:function(a){return function(){var b=Array.prototype.slice.call(arguments);b.unshift(a),h._print.apply(h,b)}},_print:function(){var a=!1,b=Array.prototype.slice.call(arguments);b.unshift("PeerJS: ");for(var c=0,d=b.length;c600?new Blob([a]).size:a.replace(/[^\u0000-\u007F]/g,f).length}var h=a("./bufferbuilder").BufferBuilder,i=a("./bufferbuilder").binaryFeatures,j={unpack:function(a){var b=new d(a);return b.unpack()},pack:function(a){var b=new e;b.pack(a);var c=b.getBuffer();return c}};b.exports=j,d.prototype.unpack=function(){var a=this.unpack_uint8();if(a<128){var b=a;return b}if((224^a)<32){var c=(224^a)-32;return c}var d;if((d=160^a)<=15)return this.unpack_raw(d);if((d=176^a)<=15)return this.unpack_string(d);if((d=144^a)<=15)return this.unpack_array(d);if((d=128^a)<=15)return this.unpack_map(d);switch(a){case 192:return null;case 193:return;case 194:return!1;case 195:return!0;case 202:return this.unpack_float();case 203:return this.unpack_double();case 204:return this.unpack_uint8();case 205:return this.unpack_uint16();case 206:return this.unpack_uint32();case 207:return this.unpack_uint64();case 208:return this.unpack_int8();case 209:return this.unpack_int16();case 210:return this.unpack_int32();case 211:return this.unpack_int64();case 212:return;case 213:return;case 214:return;case 215:return;case 216:return d=this.unpack_uint16(),this.unpack_string(d);case 217:return d=this.unpack_uint32(),this.unpack_string(d);case 218:return d=this.unpack_uint16(),this.unpack_raw(d);case 219:return d=this.unpack_uint32(),this.unpack_raw(d);case 220:return d=this.unpack_uint16(),this.unpack_array(d);case 221:return d=this.unpack_uint32(),this.unpack_array(d);case 222:return d=this.unpack_uint16(),this.unpack_map(d);case 223:return d=this.unpack_uint32(),this.unpack_map(d)}},d.prototype.unpack_uint8=function(){var a=255&this.dataView[this.index];return this.index++,a},d.prototype.unpack_uint16=function(){var a=this.read(2),b=256*(255&a[0])+(255&a[1]);return this.index+=2,b},d.prototype.unpack_uint32=function(){var a=this.read(4),b=256*(256*(256*a[0]+a[1])+a[2])+a[3];return this.index+=4,b},d.prototype.unpack_uint64=function(){var a=this.read(8),b=256*(256*(256*(256*(256*(256*(256*a[0]+a[1])+a[2])+a[3])+a[4])+a[5])+a[6])+a[7];return this.index+=8,b},d.prototype.unpack_int8=function(){var a=this.unpack_uint8();return a<128?a:a-256},d.prototype.unpack_int16=function(){var a=this.unpack_uint16();return a<32768?a:a-65536},d.prototype.unpack_int32=function(){var a=this.unpack_uint32();return a>31,c=(a>>23&255)-127,d=8388607&a|8388608;return(0==b?1:-1)*d*Math.pow(2,c-23)},d.prototype.unpack_double=function(){var a=this.unpack_uint32(),b=this.unpack_uint32(),c=a>>31,d=(a>>20&2047)-1023,e=1048575&a|1048576,f=e*Math.pow(2,d-20)+b*Math.pow(2,d-52);return(0==c?1:-1)*f},d.prototype.read=function(a){var b=this.index;if(b+a<=this.length)return this.dataView.subarray(b,b+a);throw new Error("BinaryPackFailure: read index out of range")},e.prototype.getBuffer=function(){return this.bufferBuilder.getBuffer()},e.prototype.pack=function(a){var b=typeof a;if("string"==b)this.pack_string(a);else if("number"==b)Math.floor(a)===a?this.pack_integer(a):this.pack_double(a);else if("boolean"==b)a===!0?this.bufferBuilder.append(195):a===!1&&this.bufferBuilder.append(194);else if("undefined"==b)this.bufferBuilder.append(192);else{if("object"!=b)throw new Error('Type "'+b+'" not yet supported');if(null===a)this.bufferBuilder.append(192);else{var c=a.constructor;if(c==Array)this.pack_array(a);else if(c==Blob||c==File)this.pack_bin(a);else if(c==ArrayBuffer)i.useArrayBufferView?this.pack_bin(new Uint8Array(a)):this.pack_bin(a);else if("BYTES_PER_ELEMENT"in a)i.useArrayBufferView?this.pack_bin(new Uint8Array(a.buffer)):this.pack_bin(a.buffer);else if(c==Object)this.pack_object(a);else if(c==Date)this.pack_string(a.toString());else{if("function"!=typeof a.toBinaryPack)throw new Error('Type "'+c.toString()+'" not yet supported');this.bufferBuilder.append(a.toBinaryPack())}}}this.bufferBuilder.flush()},e.prototype.pack_bin=function(a){var b=a.length||a.byteLength||a.size;if(b<=15)this.pack_uint8(160+b);else if(b<=65535)this.bufferBuilder.append(218),this.pack_uint16(b);else{if(!(b<=4294967295))throw new Error("Invalid length");this.bufferBuilder.append(219),this.pack_uint32(b)}this.bufferBuilder.append(a)},e.prototype.pack_string=function(a){var b=g(a);if(b<=15)this.pack_uint8(176+b);else if(b<=65535)this.bufferBuilder.append(216),this.pack_uint16(b);else{if(!(b<=4294967295))throw new Error("Invalid length");this.bufferBuilder.append(217),this.pack_uint32(b)}this.bufferBuilder.append(a)},e.prototype.pack_array=function(a){var b=a.length;if(b<=15)this.pack_uint8(144+b);else if(b<=65535)this.bufferBuilder.append(220),this.pack_uint16(b);else{if(!(b<=4294967295))throw new Error("Invalid length");this.bufferBuilder.append(221),this.pack_uint32(b)}for(var c=0;c>8),this.bufferBuilder.append(255&a)},e.prototype.pack_uint32=function(a){var b=4294967295&a;this.bufferBuilder.append((4278190080&b)>>>24),this.bufferBuilder.append((16711680&b)>>>16),this.bufferBuilder.append((65280&b)>>>8),this.bufferBuilder.append(255&b)},e.prototype.pack_uint64=function(a){var b=a/Math.pow(2,32),c=a%Math.pow(2,32);this.bufferBuilder.append((4278190080&b)>>>24),this.bufferBuilder.append((16711680&b)>>>16),this.bufferBuilder.append((65280&b)>>>8),this.bufferBuilder.append(255&b),this.bufferBuilder.append((4278190080&c)>>>24),this.bufferBuilder.append((16711680&c)>>>16),this.bufferBuilder.append((65280&c)>>>8),this.bufferBuilder.append(255&c)},e.prototype.pack_int8=function(a){this.bufferBuilder.append(255&a)},e.prototype.pack_int16=function(a){this.bufferBuilder.append((65280&a)>>8),this.bufferBuilder.append(255&a)},e.prototype.pack_int32=function(a){this.bufferBuilder.append(a>>>24&255),this.bufferBuilder.append((16711680&a)>>>16),this.bufferBuilder.append((65280&a)>>>8),this.bufferBuilder.append(255&a)},e.prototype.pack_int64=function(a){var b=Math.floor(a/Math.pow(2,32)),c=a%Math.pow(2,32);this.bufferBuilder.append((4278190080&b)>>>24),this.bufferBuilder.append((16711680&b)>>>16),this.bufferBuilder.append((65280&b)>>>8),this.bufferBuilder.append(255&b),this.bufferBuilder.append((4278190080&c)>>>24),this.bufferBuilder.append((16711680&c)>>>16),this.bufferBuilder.append((65280&c)>>>8),this.bufferBuilder.append(255&c)}},{"./bufferbuilder":11}],11:[function(a,b,c){function d(){this._pieces=[],this._parts=[]}var e={};e.useBlobBuilder=function(){try{return new Blob([]),!1}catch(a){return!0}}(),e.useArrayBufferView=!e.useBlobBuilder&&function(){try{return 0===new Blob([new Uint8Array([])]).size}catch(a){return!0}}(),b.exports.binaryFeatures=e;var f=b.exports.BlobBuilder;"undefined"!=typeof window&&(f=b.exports.BlobBuilder=window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder||window.BlobBuilder),d.prototype.append=function(a){"number"==typeof a?this._pieces.push(a):(this.flush(),this._parts.push(a))},d.prototype.flush=function(){if(this._pieces.length>0){var a=new Uint8Array(this._pieces);e.useArrayBufferView||(a=a.buffer),this._parts.push(a),this._pieces=[]}},d.prototype.getBuffer=function(){if(this.flush(),e.useBlobBuilder){for(var a=new f,b=0,c=this._parts.length;b=b.chunks.length?(e.log("Time: ",new Date-b.timer),delete this._outgoing[c]):this._processAcks()}break;case"chunk":if(b=d,!b){var i=this._received[c];if(i===!0)break;b={ack:["ack",c,0],chunks:[]},this._incoming[c]=b}var j=a[2],k=a[3];b.chunks[j]=new Uint8Array(k),j===b.ack[2]&&this._calculateNextAck(c),this._ack(c);break;default:this._handleSend(a)}},d.prototype._chunk=function(a){for(var b=[],c=a.size,d=0;d=c.length&&d.push(["end",a,c.length]),d._multiple=!0,this._handleSend(d)},d.prototype._complete=function(a){e.log("Completed called for",a);var b=this,c=this._incoming[a].chunks,d=new Blob(c);e.blobToArrayBuffer(d,function(a){b.onmessage(e.unpack(a))}),delete this._incoming[a]},d.higherBandwidthSDP=function(a){var b=navigator.appVersion.match(/Chrome\/(.*?) /);if(b&&(b=parseInt(b[1].split(".").shift()),b<31)){var c=a.split("b=AS:30"),d="b=AS:102400";if(c.length>1)return c[0]+d+c[1]}return a},d.prototype.onmessage=function(a){},b.exports.Reliable=d},{"./util":13}],13:[function(a,b,c){var d=a("js-binarypack"),e={debug:!1,inherits:function(a,b){a.super_=b,a.prototype=Object.create(b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})},extend:function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a},pack:d.pack,unpack:d.unpack,log:function(){if(e.debug){for(var a=[],b=0;b
',document.body.appendChild(c),COUCHFRIENDS._loadAudio(),COUCHFRIENDS.connect()},document.addEventListener("DOMContentLoaded",COUCHFRIENDS.init,!1),COUCHFRIENDS._loadAudio=function(){if(0==COUCHFRIENDS.settings.ui.sound)return!1;if("function"!=typeof AudioContext)return!1;for(var a in COUCHFRIENDS._sounds)if(COUCHFRIENDS._sounds.hasOwnProperty(a)){var b=COUCHFRIENDS._sounds[a],c=new XMLHttpRequest;c.open("GET",COUCHFRIENDS._baseUrl+b.file,!0),c.responseType="arraybuffer",c.key=a,c.onload=function(){var a=new AudioContext;a.key=this.key,a.decodeAudioData(this.response,function(b){COUCHFRIENDS._sounds[a.key].play=function(){var c=a.createBufferSource();c.buffer=b,c.connect(a.destination),c.start||(c.start=c.noteOn),c.start(0)}})},c.send()}},COUCHFRIENDS.showNotification=function(a,b,c){if(c=c||{},0!=COUCHFRIENDS.settings.ui.showNotifications){var d={type:"default",sound:!0};c=Object.assign(d,c),b=b||3500,COUCHFRIENDS.settings.ui.sound&&c.sound&&COUCHFRIENDS._sounds.notification.play();var e=Date.now(),f=document.createElement("div");f.className="COUCHFRIENDS-notification COUCHFRIENDS-notification-"+c.type,f.id="COUCHFRIENDS-"+e,f.innerHTML="

"+a+"

",document.getElementById("COUCHFRIENDS-notifications").appendChild(f),setTimeout(function(){document.getElementById("COUCHFRIENDS-"+e).className="COUCHFRIENDS-notification COUCHFRIENDS-notification-"+c.type+" COUCHFRIENDS-notification-close",setTimeout(function(){var a=document.getElementById("COUCHFRIENDS-"+e);a.parentNode&&a.parentNode.removeChild(a)},1e3)},b)}},COUCHFRIENDS.showHideHowToPopup=function(){if(0==COUCHFRIENDS.settings.displayCode)return void(document.getElementById("COUCHFRIENDS-popup").style.display="none");if(COUCHFRIENDS.players.length>0||""==COUCHFRIENDS._code){if(null===document.getElementById("COUCHFRIENDS-popup").offsetParent)return;return void(document.getElementById("COUCHFRIENDS-popup").className="COUCHFRIENDS-moveBottomLeft")}var a=' Go to couchfriends.com with your phone or tablet and enter the code '+COUCHFRIENDS._code+"";document.getElementById("COUCHFRIENDS-popup").innerHTML=a,null!==document.getElementById("COUCHFRIENDS-popup").offsetParent&&(document.getElementById("COUCHFRIENDS-popup").className="COUCHFRIENDS-moveCenter")},COUCHFRIENDS._generateColor=function(){var a="#"+((1<<24)*Math.random()|0).toString(16),b=COUCHFRIENDS.settings.colorIndex;return null!=COUCHFRIENDS.settings.colors[b]?(a=COUCHFRIENDS.settings.colors[b],b++):(b=0,a=COUCHFRIENDS.settings.colors[b],b++),COUCHFRIENDS.settings.colorIndex=b,a},COUCHFRIENDS._generateCode=function(a){a=a||3;for(var b="",c="ABCDEFGHIJKLMNOPQRSTUVWXYZ",d=0;d '),b+="Achievement unlocked: "+a.name+"",COUCHFRIENDS.showNotification(b,null,{type:"achievement",sound:!1})}),COUCHFRIENDS.on("player.orientation",function(a){}),COUCHFRIENDS.on("player.identify",function(a){}),COUCHFRIENDS.on("player.click",function(a){}),COUCHFRIENDS.on("player.clickDown",function(a){}),COUCHFRIENDS.on("player.clickUp",function(a){}),COUCHFRIENDS.on("player.buttonClick",function(a){}),COUCHFRIENDS.on("player.buttonDown",function(a){}),COUCHFRIENDS.on("player.buttonUp",function(a){}); \ No newline at end of file diff --git a/build/couchfriends.ui.css b/build/couchfriends.ui.css deleted file mode 100644 index 7aa15ba..0000000 --- a/build/couchfriends.ui.css +++ /dev/null @@ -1 +0,0 @@ -#COUCHFRIENDS-overlay{font-family:OpenSans,"Open Sans",arial,sans-serif;color:#222;font-size:16px;position:fixed;z-index:1001;left:0;top:0;width:100%;height:100%}#COUCHFRIENDS-overlay .COUCHFRIENDS-underline{text-decoration:underline}#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications{position:absolute;width:200px;height:auto;right:10px;bottom:10px}#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification{position:relative;overflow-y:hidden;background-color:rgba(255,255,255,.9);box-shadow:0 0 25px rgba(0,0,0,.2);animation-name:COUCHFRIENDS-slideUp;-webkit-animation-name:COUCHFRIENDS-slideUp;margin-top:10px;animation-duration:.5s;-webkit-animation-duration:.5s;animation-timing-function:ease;-webkit-animation-timing-function:ease;-webkit-animation-fill-mode:both;animation-fill-mode:both}#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification p{display:block;padding:10px}#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification p:after{display:block;font-size:0;content:" ";clear:both;height:0}#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification img{float:left;margin-right:10px;max-width:64px;max-height:64px}#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification.COUCHFRIENDS-notification-close{animation-name:COUCHFRIENDS-slideDown;-webkit-animation-name:COUCHFRIENDS-slideDown}#COUCHFRIENDS-overlay #COUCHFRIENDS-popup{text-align:center;position:absolute;width:25%;bottom:0;left:0;margin-left:-12.5%;background-color:rgba(255,255,255,.9);box-shadow:0 0 25px rgba(0,0,0,.2)}#COUCHFRIENDS-overlay #COUCHFRIENDS-popup #COUCHFRIENDS-code{font-size:150%;display:block}#COUCHFRIENDS-overlay .COUCHFRIENDS-fadeIn{animation-name:COUCHFRIENDS-fadeIn;-webkit-animation-name:COUCHFRIENDS-fadeIn;animation-duration:.5s;-webkit-animation-duration:.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both}#COUCHFRIENDS-overlay .COUCHFRIENDS-fadeOut{animation-name:COUCHFRIENDS-fadeOut;-webkit-animation-name:COUCHFRIENDS-fadeOut;animation-duration:.5s;-webkit-animation-duration:.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both}#COUCHFRIENDS-overlay .COUCHFRIENDS-moveBottomLeft{animation-name:COUCHFRIENDS-moveBottomLeft;-webkit-animation-name:COUCHFRIENDS-moveBottomLeft;animation-duration:.5s;-webkit-animation-duration:.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both}#COUCHFRIENDS-overlay .COUCHFRIENDS-moveCenter{animation-name:COUCHFRIENDS-moveCenter;-webkit-animation-name:COUCHFRIENDS-moveCenter;animation-duration:.5s;-webkit-animation-duration:.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both}@keyframes COUCHFRIENDS-moveBottomLeft{0%{font-size:22px;line-height:37px;padding:15px;bottom:50%;left:50%}100%{font-size:14px;line-height:19px;padding:5px;left:13%;bottom:.5%}}@-webkit-keyframes COUCHFRIENDS-moveBottomLeft{0%{font-size:22px;line-height:37px;padding:15px;bottom:50%;left:50%}100%{font-size:14px;line-height:19px;padding:5px;left:13%;bottom:.5%}}@keyframes COUCHFRIENDS-moveCenter{0%{font-size:14px;line-height:19px;padding:5px;left:13%;bottom:.5%}100%{font-size:22px;line-height:37px;padding:15px;bottom:50%;left:50%}}@-webkit-keyframes COUCHFRIENDS-moveCenter{0%{font-size:14px;line-height:19px;padding:5px;left:13%;bottom:.5%}100%{font-size:22px;line-height:37px;padding:15px;bottom:50%;left:50%}}@keyframes COUCHFRIENDS-slideDown{0%{max-height:150px}100%{max-height:0}}@-webkit-keyframes COUCHFRIENDS-slideDown{0%{max-height:150px}100%{max-height:0}}@keyframes COUCHFRIENDS-slideUp{0%{max-height:0}100%{max-height:150px}}@-webkit-keyframes COUCHFRIENDS-slideUp{0%{max-height:0}100%{max-height:150px}}@keyframes COUCHFRIENDS-fadeIn{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes COUCHFRIENDS-fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes COUCHFRIENDS-fadeOut{0%{opacity:1}100%{opacity:0}}@-webkit-keyframes COUCHFRIENDS-fadeOut{0%{opacity:1}100%{opacity:0}} \ No newline at end of file diff --git a/gruntfile.js b/gruntfile.js index 03b7007..b6cf5a6 100644 --- a/gruntfile.js +++ b/gruntfile.js @@ -8,20 +8,23 @@ module.exports = function(grunt) { banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n' }, build: { - src: 'src/<%= pkg.name %>.js', - dest: 'build/<%= pkg.name %>-latest.js' + src: [ + 'src/Emitter.js', + 'src/peer.js', + 'src/couchfriends.api.js' + ], + dest: 'build/couchfriends.api-latest.js' } }, less: { production: { options: { plugins: [ - //new (require('less-plugin-autoprefix'))({browsers: ["last 2 versions"]}), new (require('less-plugin-clean-css'))({}) ] }, files: { - "build/couchfriends.ui.css": "src/couchfriends.ui.less" + "build/assets/couchfriends.ui.css": "src/assets/couchfriends.ui.less" } } }, diff --git a/readme.md b/readme.md index 11ece56..f48af35 100644 --- a/readme.md +++ b/readme.md @@ -26,13 +26,7 @@ Add the following code in the `` of your game. ## Connect -Couchfriends api uses the global `window.COUCHFRIENDS` or `COUCHFRIENDS` object variable. The following code will -connect you to the Couchfriends websocket server. - -```javascript -COUCHFRIENDS.connect(); -``` - +Couchfriends api uses the global `window.COUCHFRIENDS` or `COUCHFRIENDS` object variable. The API will automaticly connect to the websocket server. # API @@ -42,21 +36,6 @@ You can use the `.send()` function to send data to the server or (one or all) of Sending data must always be an json object. This example will host a new game. See [Sending data to Players/Server](#sending-data-to-playersserver) for more examples. -```javascript -/** - * Request a new game host. - * - * @param {string} topic The type of data to send. e.g. 'game' - * @param {sting} [action] The sub type/action to send. e.g. 'host' - * @param {object} [data] Additional data to send. - */ -var jsonData = { - topic: 'game', - action: 'host' -}; -COUCHFRIENDS.send(jsonData); -``` - ## Callbacks Each data that is received from the server is passed through the `.on('type', function(){});` callback. @@ -66,14 +45,13 @@ Each data that is received from the server is passed through the `.on('type', fu Called after a successful connection to the Websocket server. ```javascript -COUCHFRIENDS.on('connect', function() { - console.log('Ready for action!'); - // Best place to host a game: - var jsonData = { - topic: 'game', - action: 'host' - }; - COUCHFRIENDS.send(jsonData); +/** +* Callback after connected to the websocket server and ready for incoming +* players. +* @param string code a unique identifier for players to join this game. +*/ +COUCHFRIENDS.on('connect', function(code) { + console.log('Ready for action! My gamecode is: ' + code); }); ``` @@ -88,7 +66,7 @@ A new player joined the game. * @param {int} data.id The unique identifier of the player * @param {string} [data.name] The name of the player */ -COUCHFRIENDS.on('playerJoined', function(data) { +COUCHFRIENDS.on('player.join', function(data) { console.log('Player joined. Player id: ' + data.id); }); ``` @@ -103,7 +81,7 @@ One of the players disconnected or left the game. * @param {object} data list with the player information * @param {int} data.id the unique identifier of the player that left */ -COUCHFRIENDS.on('playerLeft', function(data) { +COUCHFRIENDS.on('player.left', function(data) { console.log('Player left. Player id: ' + data.id); }); ``` @@ -118,7 +96,7 @@ Player pressed or tapped a button. * @param {object} data list with the player information * @param {int} data.id the unique identifier of the button. e.g. 'a' */ -COUCHFRIENDS.on('buttonUp', function(data) { +COUCHFRIENDS.on('player.buttonUp', function(data) { console.log('Player pressed button. Player id: ' + data.playerId + ' Button: ' + data.id); }); ``` @@ -137,7 +115,7 @@ A player's device orientation has changed. * @param {float} [data.x] The x-as orientation (-1 to 1). E.g. -0.871 * @param {float} [data.y] The y-as orientation (-1 to 1). E.g. 0.12 */ -COUCHFRIENDS.on('playerOrientation', function(data) { +COUCHFRIENDS.on('player.orientation', function(data) { console.log('Player orientation changed. Player id: ' + data.id + ' Orientation: ' + data.x + ', ' + data.y); }); ``` diff --git a/src/Emitter.js b/src/Emitter.js new file mode 100644 index 0000000..c5cc621 --- /dev/null +++ b/src/Emitter.js @@ -0,0 +1,163 @@ + +/** + * Expose `Emitter`. + */ + +if (typeof module !== 'undefined') { + module.exports = Emitter; +} + +/** + * Initialize a new `Emitter`. + * + * @api public + */ + +function Emitter(obj) { + if (obj) return mixin(obj); +}; + +/** + * Mixin the emitter properties. + * + * @param {Object} obj + * @return {Object} + * @api private + */ + +function mixin(obj) { + for (var key in Emitter.prototype) { + obj[key] = Emitter.prototype[key]; + } + return obj; +} + +/** + * Listen on the given `event` with `fn`. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + +Emitter.prototype.on = + Emitter.prototype.addEventListener = function(event, fn){ + this._callbacks = this._callbacks || {}; + (this._callbacks['$' + event] = this._callbacks['$' + event] || []) + .push(fn); + return this; + }; + +/** + * Adds an `event` listener that will be invoked a single + * time then automatically removed. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + +Emitter.prototype.once = function(event, fn){ + function on() { + this.off(event, on); + fn.apply(this, arguments); + } + + on.fn = fn; + this.on(event, on); + return this; +}; + +/** + * Remove the given callback for `event` or all + * registered callbacks. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + +Emitter.prototype.off = + Emitter.prototype.removeListener = + Emitter.prototype.removeAllListeners = + Emitter.prototype.removeEventListener = function(event, fn){ + this._callbacks = this._callbacks || {}; + + // all + if (0 == arguments.length) { + this._callbacks = {}; + return this; + } + + // specific event + var callbacks = this._callbacks['$' + event]; + if (!callbacks) return this; + + // remove all handlers + if (1 == arguments.length) { + delete this._callbacks['$' + event]; + return this; + } + + // remove specific handler + var cb; + for (var i = 0; i < callbacks.length; i++) { + cb = callbacks[i]; + if (cb === fn || cb.fn === fn) { + callbacks.splice(i, 1); + break; + } + } + return this; + }; + +/** + * Emit `event` with the given args. + * + * @param {String} event + * @param {Mixed} ... + * @return {Emitter} + */ + +Emitter.prototype.emit = function(event){ + this._callbacks = this._callbacks || {}; + var args = [].slice.call(arguments, 1) + , callbacks = this._callbacks['$' + event]; + + if (callbacks) { + callbacks = callbacks.slice(0); + for (var i = 0, len = callbacks.length; i < len; ++i) { + callbacks[i].apply(this, args); + } + } + + return this; +}; + +/** + * Return array of callbacks for `event`. + * + * @param {String} event + * @return {Array} + * @api public + */ + +Emitter.prototype.listeners = function(event){ + this._callbacks = this._callbacks || {}; + return this._callbacks['$' + event] || []; +}; + +/** + * Check if this emitter has `event` handlers. + * + * @param {String} event + * @return {Boolean} + * @api public + */ + +Emitter.prototype.hasListeners = function(event){ + return !! this.listeners(event).length; +}; diff --git a/src/assets/couchfriends.ui.css b/src/assets/couchfriends.ui.css new file mode 100644 index 0000000..78438b4 --- /dev/null +++ b/src/assets/couchfriends.ui.css @@ -0,0 +1,239 @@ +#COUCHFRIENDS-overlay { + pointer-events: none; + font-family: OpenSans, "Open Sans", arial, sans-serif; + color: #222222; + font-size: 16px; + position: fixed; + z-index: 1001; + left: 0; + top: 0; + width: 100%; + height: 100%; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-underline { + text-decoration: underline; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications { + position: absolute; + width: 200px; + height: auto; + right: 10px; + bottom: 10px; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification { + position: relative; + overflow-y: hidden; + background-color: rgba(255, 255, 255, 0.9); + box-shadow: 0 0 25px rgba(0, 0, 0, 0.2); + animation-name: COUCHFRIENDS-slideUp; + -webkit-animation-name: COUCHFRIENDS-slideUp; + margin-top: 10px; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + animation-timing-function: ease; + -webkit-animation-timing-function: ease; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification p { + display: block; + padding: 10px; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification p:after { + display: block; + font-size: 0; + content: " "; + clear: both; + height: 0; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification img { + float: left; + margin-right: 10px; + max-width: 64px; + max-height: 64px; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification-error { + background-color: rgba(255, 0, 0, 0.5); +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification-achievement { + background-color: rgba(88, 255, 0, 0.5); +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-notifications .COUCHFRIENDS-notification.COUCHFRIENDS-notification-close { + animation-name: COUCHFRIENDS-slideDown; + -webkit-animation-name: COUCHFRIENDS-slideDown; +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-popup { + text-align: center; + position: absolute; + width: 25%; + bottom: 0; + left: 0; + /* bring your own prefixes */ + margin-left: -12.5%; + background-color: rgba(255, 255, 255, 0.9); + box-shadow: 0 0 25px rgba(0, 0, 0, 0.2); +} +#COUCHFRIENDS-overlay #COUCHFRIENDS-popup #COUCHFRIENDS-code { + font-size: 150%; + display: block; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-fadeIn { + animation-name: COUCHFRIENDS-fadeIn; + -webkit-animation-name: COUCHFRIENDS-fadeIn; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-fadeOut { + animation-name: COUCHFRIENDS-fadeOut; + -webkit-animation-name: COUCHFRIENDS-fadeOut; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-moveBottomLeft { + animation-name: COUCHFRIENDS-moveBottomLeft; + -webkit-animation-name: COUCHFRIENDS-moveBottomLeft; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +#COUCHFRIENDS-overlay .COUCHFRIENDS-moveCenter { + animation-name: COUCHFRIENDS-moveCenter; + -webkit-animation-name: COUCHFRIENDS-moveCenter; + animation-duration: 0.5s; + -webkit-animation-duration: 0.5s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} +@keyframes COUCHFRIENDS-moveBottomLeft { + 0% { + font-size: 22px; + line-height: 37px; + padding: 15px; + bottom: 50%; + left: 50%; + } + 100% { + font-size: 14px; + line-height: 19px; + padding: 5px; + left: 13%; + bottom: .5%; + } +} +@-webkit-keyframes COUCHFRIENDS-moveBottomLeft { + 0% { + font-size: 22px; + line-height: 37px; + padding: 15px; + bottom: 50%; + left: 50%; + } + 100% { + font-size: 14px; + line-height: 19px; + padding: 5px; + left: 13%; + bottom: .5%; + } +} +@keyframes COUCHFRIENDS-moveCenter { + 0% { + font-size: 14px; + line-height: 19px; + padding: 5px; + left: 13%; + bottom: .5%; + } + 100% { + font-size: 22px; + line-height: 37px; + padding: 15px; + bottom: 50%; + left: 50%; + } +} +@-webkit-keyframes COUCHFRIENDS-moveCenter { + 0% { + font-size: 14px; + line-height: 19px; + padding: 5px; + left: 13%; + bottom: .5%; + } + 100% { + font-size: 22px; + line-height: 37px; + padding: 15px; + bottom: 50%; + left: 50%; + } +} +@keyframes COUCHFRIENDS-slideDown { + 0% { + max-height: 150px; + } + 100% { + max-height: 0; + } +} +@-webkit-keyframes COUCHFRIENDS-slideDown { + 0% { + max-height: 150px; + } + 100% { + max-height: 0; + } +} +@keyframes COUCHFRIENDS-slideUp { + 0% { + max-height: 0; + } + 100% { + max-height: 150px; + } +} +@-webkit-keyframes COUCHFRIENDS-slideUp { + 0% { + max-height: 0; + } + 100% { + max-height: 150px; + } +} +@keyframes COUCHFRIENDS-fadeIn { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@-webkit-keyframes COUCHFRIENDS-fadeIn { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@keyframes COUCHFRIENDS-fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} +@-webkit-keyframes COUCHFRIENDS-fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} diff --git a/src/assets/couchfriends.ui.less b/src/assets/couchfriends.ui.less new file mode 100644 index 0000000..cbb6d27 --- /dev/null +++ b/src/assets/couchfriends.ui.less @@ -0,0 +1,260 @@ +@prefix: COUCHFRIENDS; +@animationDuration: .5s; +@boxShadow: 0 0 25px rgba(0,0,0,.2); +@backgroundPopup: rgba(255,255,255,.9); +@warning: rgba(255,0,0,.5); +@bonus: rgba(88, 255, 0, 0.5); +@fontSmall: 14px; +@paddingSmall: 5px; +@fontLarge: 22px; +@paddingLarge: 15px; +#@{prefix}-overlay { + pointer-events: none; + font-family: OpenSans, "Open Sans", arial, sans-serif; + color: #222222; + font-size: 16px; + position: fixed; + z-index: 1001; + left: 0; + top: 0; + width: 100%; + height: 100%; + + .@{prefix}-underline { + text-decoration: underline; + } + + #@{prefix}-notifications { + position: absolute; + width: 200px; + height: auto; + right: 10px; + bottom: 10px; + .@{prefix}-notification { + position: relative; + overflow-y: hidden; + background-color: @backgroundPopup; + box-shadow: @boxShadow; + + animation-name: COUCHFRIENDS-slideUp; + -webkit-animation-name: COUCHFRIENDS-slideUp; + margin-top: 10px; + animation-duration: @animationDuration; + -webkit-animation-duration: @animationDuration; + animation-timing-function: ease; + -webkit-animation-timing-function: ease; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; + p { + display: block; + padding: 10px; + } + p:after { + display: block; + font-size: 0; + content: " "; + clear: both; + height: 0; + } + img { + float: left; + margin-right: 10px; + max-width: 64px; + max-height: 64px; + } + } + .@{prefix}-notification-error { + background-color: @warning; + } + .@{prefix}-notification-achievement { + background-color: @bonus; + } + .@{prefix}-notification.@{prefix}-notification-close { + animation-name: COUCHFRIENDS-slideDown; + -webkit-animation-name: COUCHFRIENDS-slideDown; + } + } + + #@{prefix}-popup { + text-align: center; + position: absolute; + width: 25%; + bottom: 0; + left: 0; + /* bring your own prefixes */ + //transform: translate(-50%, -50%); + margin-left: -12.5%; + background-color: @backgroundPopup; + box-shadow: @boxShadow; + #COUCHFRIENDS-code { + font-size: 150%; + display: block; + } + } + .@{prefix}-fadeIn { + animation-name: COUCHFRIENDS-fadeIn; + -webkit-animation-name: COUCHFRIENDS-fadeIn; + animation-duration: @animationDuration; + -webkit-animation-duration: @animationDuration; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; + } + .@{prefix}-fadeOut { + animation-name: COUCHFRIENDS-fadeOut; + -webkit-animation-name: COUCHFRIENDS-fadeOut; + animation-duration: @animationDuration; + -webkit-animation-duration: @animationDuration; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; + + } + .@{prefix}-moveBottomLeft { + animation-name: COUCHFRIENDS-moveBottomLeft; + -webkit-animation-name: COUCHFRIENDS-moveBottomLeft; + animation-duration: @animationDuration; + -webkit-animation-duration: @animationDuration; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; + } + .@{prefix}-moveCenter { + animation-name: COUCHFRIENDS-moveCenter; + -webkit-animation-name: COUCHFRIENDS-moveCenter; + animation-duration: @animationDuration; + -webkit-animation-duration: @animationDuration; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; + + } +} +@keyframes COUCHFRIENDS-moveBottomLeft { + 0% { + font-size: @fontLarge; + line-height: (@fontLarge + @paddingLarge); + padding: @paddingLarge; + bottom: 50%; + left: 50%; + } + 100% { + font-size: @fontSmall; + line-height: (@fontSmall + @paddingSmall); + padding: @paddingSmall; + left: 13%; + bottom: .5%; + } +} +@-webkit-keyframes COUCHFRIENDS-moveBottomLeft { + 0% { + font-size: @fontLarge; + line-height: (@fontLarge + @paddingLarge); + padding: @paddingLarge; + bottom: 50%; + left: 50%; + } + 100% { + font-size: @fontSmall; + line-height: (@fontSmall + @paddingSmall); + padding: @paddingSmall; + left: 13%; + bottom: .5%; + } +} +@keyframes COUCHFRIENDS-moveCenter { + 0% { + font-size: @fontSmall; + line-height: (@fontSmall + @paddingSmall); + padding: @paddingSmall; + left: 13%; + bottom: .5%; + } + 100% { + font-size: @fontLarge; + line-height: (@fontLarge + @paddingLarge); + padding: @paddingLarge; + bottom: 50%; + left: 50%; + } +} +@-webkit-keyframes COUCHFRIENDS-moveCenter { + 0% { + font-size: @fontSmall; + line-height: (@fontSmall + @paddingSmall); + padding: @paddingSmall; + left: 13%; + bottom: .5%; + } + 100% { + font-size: @fontLarge; + line-height: (@fontLarge + @paddingLarge); + padding: @paddingLarge; + bottom: 50%; + left: 50%; + } +} + +@keyframes COUCHFRIENDS-slideDown { + 0% { + max-height: 150px; + } + 100% { + max-height: 0; + } +} +@-webkit-keyframes COUCHFRIENDS-slideDown { + 0% { + max-height: 150px; + } + 100% { + max-height: 0; + } +} +@keyframes COUCHFRIENDS-slideUp { + 0% { + max-height: 0; + } + 100% { + max-height: 150px; + } +} + +@-webkit-keyframes COUCHFRIENDS-slideUp { + 0% { + max-height: 0; + } + 100% { + max-height: 150px; + } +} + +@keyframes COUCHFRIENDS-fadeIn { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@-webkit-keyframes COUCHFRIENDS-fadeIn { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@keyframes COUCHFRIENDS-fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} + +@-webkit-keyframes COUCHFRIENDS-fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} \ No newline at end of file diff --git a/src/assets/notification.wav b/src/assets/notification.wav new file mode 100644 index 0000000000000000000000000000000000000000..97e7951a2e7469509f3fc69356f5f942ef573f26 GIT binary patch literal 303364 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
r>4ZYk?-)%F@PI`)CpCC#~GN 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\NO{*5PzvHvJ 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

-5Rvs} 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 literal 0 HcmV?d00001 diff --git a/src/couchfriends.api.js b/src/couchfriends.api.js index 85a8289..0f50efa 100644 --- a/src/couchfriends.api.js +++ b/src/couchfriends.api.js @@ -1,199 +1,206 @@ "use strict"; /** * Couchfriends controller api. With the Couchfriends Controller API you can connect your phone or tablet to your HTML5 - * game and use it as a controller. The Controller API uses Websockets to send and receive input. + * game and use it as a controller. The Controller API uses WebRTC (peer2peer) to send and receive input. * * @copyright (c) 2015 Mathieu de Ruiter, Couchfriends, Fellicht & Editors * @author Mathieu de Ruiter / http://www.fellicht.nl/ * - * For detailed information about the development with the Couchfriends API please visit http://couchfriends.com. + * For detailed information about the development with the Couchfriends API please visit https://couchfriends.com. * Please do not remove the header of this file. */ -/** - * component/emitter - * - * Copyright (c) 2014 Component contributors - */ -function Emitter(t) { - return t ? mixin(t) : void 0 -} -function mixin(t) { - for (var e in Emitter.prototype)t[e] = Emitter.prototype[e]; - return t -} -Emitter.prototype.on = Emitter.prototype.addEventListener = function (t, e) { - return this._callbacks = this._callbacks || {}, (this._callbacks["$" + t] = this._callbacks["$" + t] || []).push(e), this -}, Emitter.prototype.once = function (t, e) { - function i() { - this.off(t, i), e.apply(this, arguments) - } - - return i.fn = e, this.on(t, i), this -}, Emitter.prototype.off = Emitter.prototype.removeListener = Emitter.prototype.removeAllListeners = Emitter.prototype.removeEventListener = function (t, e) { - if (this._callbacks = this._callbacks || {}, 0 == arguments.length)return this._callbacks = {}, this; - var i = this._callbacks["$" + t]; - if (!i)return this; - if (1 == arguments.length)return delete this._callbacks["$" + t], this; - for (var r, s = 0; s < i.length; s++)if (r = i[s], r === e || r.fn === e) { - i.splice(s, 1); - break - } - return this -}, Emitter.prototype.emit = function (t) { - this._callbacks = this._callbacks || {}; - var e = [].slice.call(arguments, 1), i = this._callbacks["$" + t]; - if (i) { - i = i.slice(0); - for (var r = 0, s = i.length; s > r; ++r)i[r].apply(this, e) - } - return this -}, Emitter.prototype.listeners = function (t) { - return this._callbacks = this._callbacks || {}, this._callbacks["$" + t] || [] -}, Emitter.prototype.hasListeners = function (t) { - return !!this.listeners(t).length -}; - var COUCHFRIENDS = { - REVISION: '3', - _VARS: { - baseUrl: 'http://cdn.couchfriends.com/api/',//document.getElementsByTagName('script')[document.getElementsByTagName('script').length-1].src, - init: false, - socket: {}, // The Websocket object - connectedPlayers: [], - gameCode: '', - // Object with current information and state over the game - status: { - connected: false - }, - sounds: {}, - soundFiles: [ - { - play: function () { - }, - key: 'achievement', - file: 'achievement.wav' - } - ] + REVISION: '4', + /** + * Array with sounds + * @author http://opengameart.org/users/draconx + */ + _sounds: { + achievement: { + play: function () { + return false; + }, // In case the file can't be loaded + file: 'achievement.wav' }, + notification: { + play: function () { + return false; + }, // In case the file can't be loaded + file: 'notification.wav' + } + }, + /** + * Url/path to assets + */ + _baseUrl: 'https://couchfriends.com/cdn/api/assets/', + /** + * All connected players with their id, connection object, name + */ + players: [], + /** + * The game code to join this game. + */ + _code: '', + socket: {}, // The Websocket object + gameCode: '', + // Object with current information and state over the game + status: { + connected: false + } + , + /** + * Global settings for COUCHFRIENDS api + * @type {object} settings list of settings + */ + settings: { /** - * Global settings for COUCHFRIENDS api - * @type {object} settings list of settings + * The current color index. */ - settings: { - apiKey: '', - host: 'ws.couchfriends.com', - port: '80', - ui: { - showNotifications: true, - showHowTo: true, - sound: true - } + colorIndex: 0, + /** + * Available player colors. + */ + colors: [ + '#ff0000', + '#00ff00', + '#0000ff', + '#ffff00', + '#ff00ff', + '#00ffff', + '#ff9900', + '#6d00ff', + '#810000', + '#008100', + '#000081', + '#818100', + '#810081', + '#008181', + '#814c00', + '#370081', + '#ff7d7d', + '#7dff7d', + '#7d7dff', + '#ffff7d', + '#ff7dff', + '#7dffff', + '#ffcf8b', + '#a983ff' + ], + /** + * Enable SSL? + */ + secure: true, + /** + * Websocket server + */ + host: 'ws.couchfriends.com', + /** + * Websocket port + */ + port: 80, + /** + * UI Settings + */ + ui: { + displayCode: true, // Show the code to join + showNotifications: true, + sound: true } - }; - -/** - * (Temporary) Array with all possible incoming callbacks . => COUCHFRIENDS.on(, function(data) { }); - * @type {Array} - */ -COUCHFRIENDS.callbacks = []; -COUCHFRIENDS.callbacks['game.start'] = 'gameStart'; -COUCHFRIENDS.callbacks['game.achievementUnlock'] = 'achievementUnlock'; -COUCHFRIENDS.callbacks['player.left'] = 'playerLeft'; -COUCHFRIENDS.callbacks['player.join'] = 'playerJoined'; -COUCHFRIENDS.callbacks['player.orientation'] = 'playerOrientation'; -COUCHFRIENDS.callbacks['player.click'] = 'playerClick'; -COUCHFRIENDS.callbacks['player.clickDown'] = 'playerClickDown'; -COUCHFRIENDS.callbacks['player.clickUp'] = 'playerClickUp'; -COUCHFRIENDS.callbacks['player.buttonClick'] = 'buttonClick'; -COUCHFRIENDS.callbacks['player.buttonDown'] = 'buttonDown'; -COUCHFRIENDS.callbacks['player.buttonUp'] = 'buttonUp'; -COUCHFRIENDS.callbacks['player.identify'] = 'playerIdentify'; -COUCHFRIENDS.callbacks['error'] = 'error'; + } +}; /** * Init some javascript and styles to the game for dynamic overviews */ COUCHFRIENDS.init = function () { - COUCHFRIENDS._VARS.init = true; var head = document.getElementsByTagName('head')[0]; var link = document.createElement('link'); link.rel = 'stylesheet'; link.type = 'text/css'; - link.href = 'http://cdn.couchfriends.com/api/couchfriends.ui.css'; + link.href = COUCHFRIENDS._baseUrl + 'couchfriends.ui.css'; link.media = 'all'; head.appendChild(link); var containerDiv = document.createElement("div"); containerDiv.id = 'COUCHFRIENDS-overlay'; containerDiv.innerHTML = '

'; document.body.appendChild(containerDiv); - this._loadAudio(); + COUCHFRIENDS._loadAudio(); + COUCHFRIENDS.connect(); }; +document.addEventListener('DOMContentLoaded', COUCHFRIENDS.init, false); + /** * Load all audio files * @private */ COUCHFRIENDS._loadAudio = function () { - var context = false; - if (typeof AudioContext == 'function') { - context = new AudioContext(); + + if (COUCHFRIENDS.settings.ui.sound == false) { + return false; } - if (!context) { - return; + if (typeof AudioContext != 'function') { + return false; } - COUCHFRIENDS._VARS.soundFiles.forEach(function (sound, index) { - COUCHFRIENDS._VARS.sounds[sound.key] = {}; + for (var key in COUCHFRIENDS._sounds) { + if (!COUCHFRIENDS._sounds.hasOwnProperty(key)) { + continue; + } + var sound = COUCHFRIENDS._sounds[key]; var request = new XMLHttpRequest(); - request.open('GET', COUCHFRIENDS._VARS.baseUrl + 'assets/' + sound.file, true); + request.open('GET', COUCHFRIENDS._baseUrl + sound.file, true); request.responseType = 'arraybuffer'; - // Decode asynchronously - COUCHFRIENDS._VARS.sounds[sound.key].play = function() {}; + request.key = key; request.onload = function () { - try { - context.decodeAudioData(request.response, function (buffer) { - COUCHFRIENDS._VARS.sounds[sound.key].play = function () { - if (COUCHFRIENDS.settings.ui.sound == false) { - return false; - } - var source = context.createBufferSource(); - source.buffer = buffer; - source.connect(context.destination); - if (!source.start) - source.start = source.noteOn; - source.start(0); - } - }); - } - catch (e) { - - } + var context = new AudioContext(); + context.key = this.key; + context.decodeAudioData(this.response, function (buffer) { + COUCHFRIENDS._sounds[context.key].play = function () { + var source = context.createBufferSource(); + source.buffer = buffer; + source.connect(context.destination); + if (!source.start) + source.start = source.noteOn; + source.start(0); + } + }); }; request.send(); - - }); + } }; /** * Show notification and remove it after a short delay * @param message + * @param duration the duration in ms + * @param options object List with options + * @param options.type string Type of the notification. Options: 'default', 'error', 'achievement' + * @param options.sound boolean Play the default notification sound. */ -COUCHFRIENDS.showNotification = function (message, duration) { - if (duration == null) { - duration = 3500; - } +COUCHFRIENDS.showNotification = function (message, duration, options) { + options = options || {}; if (COUCHFRIENDS.settings.ui.showNotifications == false) { return; } + var defaultOptions = { + type: 'default', + sound: true + }; + options = Object.assign(defaultOptions, options); + duration = duration || 3500; + if (COUCHFRIENDS.settings.ui.sound && options.sound) { + COUCHFRIENDS._sounds.notification.play(); + } var id = Date.now(); var notificationEl = document.createElement("div"); - notificationEl.className = 'COUCHFRIENDS-notification'; + notificationEl.className = 'COUCHFRIENDS-notification COUCHFRIENDS-notification-' + options.type; notificationEl.id = 'COUCHFRIENDS-' + id; notificationEl.innerHTML = '

' + message + '

'; document.getElementById('COUCHFRIENDS-notifications').appendChild(notificationEl); setTimeout(function () { - document.getElementById('COUCHFRIENDS-' + id).className = "COUCHFRIENDS-notification COUCHFRIENDS-notification-close"; + document.getElementById('COUCHFRIENDS-' + id).className = 'COUCHFRIENDS-notification COUCHFRIENDS-notification-' + options.type + ' COUCHFRIENDS-notification-close'; setTimeout(function () { var node = document.getElementById('COUCHFRIENDS-' + id); if (node.parentNode) { @@ -204,39 +211,69 @@ COUCHFRIENDS.showNotification = function (message, duration) { }; COUCHFRIENDS.showHideHowToPopup = function () { - if (COUCHFRIENDS.settings.showHowTo == false) { - if (COUCHFRIENDS.settings.showConnect == true) { - document.getElementById('COUCHFRIENDS-popup').className = 'COUCHFRIENDS-moveBottomLeft'; - } - else { - document.getElementById('COUCHFRIENDS-popup').style.display = 'none'; - } + if (COUCHFRIENDS.settings.displayCode == false) { + document.getElementById('COUCHFRIENDS-popup').style.display = 'none'; return; } - if (COUCHFRIENDS._VARS.connectedPlayers.length > 0 || COUCHFRIENDS._VARS.gameCode == '') { + if (COUCHFRIENDS.players.length > 0 || COUCHFRIENDS._code == '') { if (document.getElementById('COUCHFRIENDS-popup').offsetParent === null) { return; } document.getElementById('COUCHFRIENDS-popup').className = 'COUCHFRIENDS-moveBottomLeft'; return; } - var message = ' Go to www.couchfriends.com with your phone or tablet and enter the code ' + COUCHFRIENDS._VARS.gameCode + ''; + var message = ' Go to couchfriends.com with your phone or tablet and enter the code ' + COUCHFRIENDS._code + ''; document.getElementById('COUCHFRIENDS-popup').innerHTML = message; if (document.getElementById('COUCHFRIENDS-popup').offsetParent !== null) { document.getElementById('COUCHFRIENDS-popup').className = 'COUCHFRIENDS-moveCenter'; } }; +/** + * Generate a "random" color for the player. This is handy for creating + * unique player indications. The color is sent back to the controller. + * @returns {string} + * @private + */ +COUCHFRIENDS._generateColor = function () { + var color = "#" + ((1 << 24) * Math.random() | 0).toString(16); + var colorIndex = COUCHFRIENDS.settings.colorIndex; + if (COUCHFRIENDS.settings.colors[colorIndex] != null) { + color = COUCHFRIENDS.settings.colors[colorIndex]; + colorIndex++; + } + else { + colorIndex = 0; + color = COUCHFRIENDS.settings.colors[colorIndex]; + colorIndex++; + } + COUCHFRIENDS.settings.colorIndex = colorIndex; + return color; +}; + +/** + * Generate a code. Code should always be in capitals. Controller will uppercase all chars. + * @param len + * @returns {string} + * @private + */ +COUCHFRIENDS._generateCode = function (len) { + len = len || 3; + var text = ""; + var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; // Caps only + for (var i = 0; i < len; i++) + text += possible.charAt(Math.floor(Math.random() * possible.length)); + + return text; +}; + /** * Connect function. This will connect the game to the websocket server. * - * @returns {void|bool} false on error or return void. See the .on('connect', function() { }) callback for more info. + * @returns {void|boolean} false on error or return void. See the .on('connect', function() { }) callback for more info. */ COUCHFRIENDS.connect = function () { - if (COUCHFRIENDS._VARS.init == false) { - COUCHFRIENDS.init(); - } if (typeof WebSocket == 'undefined') { COUCHFRIENDS.emit('error', 'Websockets are not supported by device.'); return false; @@ -245,38 +282,25 @@ COUCHFRIENDS.connect = function () { COUCHFRIENDS.emit('error', 'Host or port is empty.'); return false; } - if (COUCHFRIENDS._VARS.status.connected == true) { + if (COUCHFRIENDS._socket != null && COUCHFRIENDS._socket.open == true) { return false; } - COUCHFRIENDS._VARS.socket = new WebSocket("wss://" + COUCHFRIENDS.settings.host + ":" + COUCHFRIENDS.settings.port); - - COUCHFRIENDS._VARS.socket.onmessage = function (event) { - var data = JSON.parse(event.data); - var callback = ''; - if (typeof data.topic == 'string') { - callback += data.topic; - } - if (typeof data.action == 'string') { - callback += '.' + data.action; - } - if (typeof COUCHFRIENDS.callbacks[callback] == 'undefined') { - return; - } - /** - * Internal functions - */ - COUCHFRIENDS.emit('_' + COUCHFRIENDS.callbacks[callback], data.data); - COUCHFRIENDS.emit(COUCHFRIENDS.callbacks[callback], data.data); - }; - COUCHFRIENDS._VARS.socket.onopen = function () { - COUCHFRIENDS._VARS.status.connected = true; - COUCHFRIENDS.emit('connect'); - }; - COUCHFRIENDS._VARS.socket.onclose = function () { - COUCHFRIENDS._VARS.status.connected = false; + var code = COUCHFRIENDS._generateCode(); + var peer = new Peer(code, { + host: COUCHFRIENDS.settings.host, + port: COUCHFRIENDS.settings.port, + secure: COUCHFRIENDS.settings.secure + }); + peer.on('open', function (code) { + COUCHFRIENDS.emit('connect', code); + }); + peer.on('close', function () { COUCHFRIENDS.emit('disconnect'); - }; - + }); + peer.on('connection', function (conn) { + COUCHFRIENDS.emit('player.join', conn); + }); + COUCHFRIENDS._socket = peer; }; /** @@ -285,12 +309,7 @@ COUCHFRIENDS.connect = function () { * @param data Object object with data to send. See Api references for all available options. */ COUCHFRIENDS.send = function (data) { - - if (COUCHFRIENDS._VARS.status.connected == false) { - COUCHFRIENDS.emit('error', 'Message not send because game is not connected to server.'); - return false; - } - COUCHFRIENDS._VARS.socket.send(JSON.stringify(data)); + COUCHFRIENDS._socket.send(data); }; Emitter(COUCHFRIENDS); @@ -302,40 +321,84 @@ Emitter(COUCHFRIENDS); * @param {string} data.message the error */ COUCHFRIENDS.on('error', function (data) { + COUCHFRIENDS.showNotification(data, null, { + type: 'error' + }) }); /** * Callback after connection to the WebSocket server is successful. Best practise will be hosting a new game after * a successful connection. + * @param string code. The code players can use to join. */ -COUCHFRIENDS.on('connect', function () { +COUCHFRIENDS.on('connect', function (code) { + COUCHFRIENDS._code = code; + COUCHFRIENDS.showHideHowToPopup(); }); /** * Callback after the connection is lost from the WebSocket server. */ COUCHFRIENDS.on('disconnect', function () { + COUCHFRIENDS.showNotification('Disconnected from server...', null, { + type: 'error' + }); }); /** - * Callback after the connection is lost from the WebSocket server. - */ -COUCHFRIENDS.on('_disconnect', function () { - COUCHFRIENDS._VARS.gameCode = ''; -}); - -/** - * Callback after the server started the game and let players allow to join. + * Callback when a player connected to the game. * - * @param {object} data List with game data - * @param {string} data.code The game code players need to fill to join this game + * @param conn the peer connection to the player. */ -COUCHFRIENDS.on('gameStart', function (data) { - //console.log('Game started with code: '+ data.code); -}); +COUCHFRIENDS.on('player.join', function (conn) { + var player = { + id: conn.peer, + conn: conn, + color: COUCHFRIENDS._generateColor() + }; + conn.player = player; + conn.on('open', function () { + this.send({ + type: 'player.identify', + data: { + color: this.player.color + } + }) + }); + conn.on('close', function () { + COUCHFRIENDS.emit('player.left', { + player: this.player + }); + }); -COUCHFRIENDS.on('_gameStart', function (data) { - COUCHFRIENDS._VARS.gameCode = data.code; + /** + * Receiving data from one of the players. + * @param data object from the controller + * @param data.topic string The action of the player + * player.orientation + * player.click + * player.clickDown + * player.clickUp + * player.buttonClick + * player.buttonDown + * player.buttonUp + * player.identify + * + * @return void + */ + conn.on('data', function (data) { + if (data.topic == null) { + return; + } + var params = {}; + if (data.data != null) { + params = data.data; + } + params.player = this.player; + COUCHFRIENDS.emit(data.topic, params); + }); + COUCHFRIENDS.players.push(player); + COUCHFRIENDS.showNotification('New player joined.'); COUCHFRIENDS.showHideHowToPopup(); }); @@ -343,48 +406,32 @@ COUCHFRIENDS.on('_gameStart', function (data) { * Callback when a player disconnect from the game. * * @param {object} data list with the player information - * @param {int} data.id the unique identifier of the player that left + * @param {int} data.player the player object */ COUCHFRIENDS.on('playerLeft', function (data) { - //console.log('Player left. Player id: ' + data.id); -}); -COUCHFRIENDS.on('_playerLeft', function (data) { - //console.log('Player joined. Player id: ' + data.id); - var playerName = data.id; - if (data.name != null) { - playerName = data.name; - } - COUCHFRIENDS.showNotification('Player "' + playerName + '" left.'); - COUCHFRIENDS._VARS.connectedPlayers.splice(COUCHFRIENDS._VARS.connectedPlayers.indexOf(data.id), 1); + COUCHFRIENDS.players.splice(COUCHFRIENDS.players.indexOf(data.player), 1); + COUCHFRIENDS.showNotification('Player left.'); COUCHFRIENDS.showHideHowToPopup(); }); -COUCHFRIENDS.on('achievementUnlock', function (data) { - //console.log('Achievement unlocked! ' + data.name); -}); -COUCHFRIENDS.on('_achievementUnlock', function (data) { - COUCHFRIENDS._VARS.sounds.achievement.play(); - COUCHFRIENDS.showNotification(' Achievement unlocked: ' + data.name + '', 5000); -}); /** - * Callback when a player connected to the game. - * - * @param {object} data list with the player information - * @param {int} data.id The unique identifier of the player - * @param {string} [data.name] The name of the player + * Callback when achievement is unlocked. Displays notification and plays + * a achievement sound. + * @param object data + * data.name the name of the achievement + * data.image the url of the icon of the achievement */ -COUCHFRIENDS.on('playerJoined', function (data) { - //console.log('Player joined. Player id: ' + data.id); -}); -COUCHFRIENDS.on('_playerJoined', function (data) { - //console.log('Player joined. Player id: ' + data.id); - var playerName = data.id; - if (data.name != null) { - playerName = data.name; +COUCHFRIENDS.on('achievementUnlock', function (data) { + COUCHFRIENDS._sounds.achievement.play(); + var html = ''; + if (data.image != null) { + html += ' '; } - COUCHFRIENDS.showNotification('Player "' + playerName + '" joined.'); - COUCHFRIENDS._VARS.connectedPlayers.push(data.id); - COUCHFRIENDS.showHideHowToPopup(); + html += 'Achievement unlocked: ' + data.name + ''; + COUCHFRIENDS.showNotification(html, null, { + type: 'achievement', + sound: false + }); }); /** @@ -393,13 +440,13 @@ COUCHFRIENDS.on('_playerJoined', function (data) { * For performance reasons this function will only be called if the orientation has changed since the previous frame. * * @param {object} data list with the player id and orientation - * @param {int} data.id The unique identifier of the player - * @param {float} [data.x] The x-as orientation (-1 to 1). E.g. -0.871 - * @param {float} [data.y] The y-as orientation (-1 to 1). E.g. 0.12 - * @param {float} [data.z] The z-as orientation (-1 to 1). E.g. -0.301 + * @param {int} data.player The player object + * @param {float} [data.orientation.x] The x-as orientation (-1 to 1). E.g. -0.871 + * @param {float} [data.orientation.y] The y-as orientation (-1 to 1). E.g. 0.12 + * @param {float} [data.orientation.z] The z-as orientation (-1 to 1). E.g. -0.301 */ -COUCHFRIENDS.on('playerOrientation', function (data) { - //console.log('Player orientation changed. Player id: ' + data.id + ' Orientation: ' + data.x + ', ' + data.y + ', ' + data.z); +COUCHFRIENDS.on('player.orientation', function (data) { + //console.log('Player orientation changed. Player id: ' + data.id + ' Orientation: ' + data.orientation.x + ', ' + data.orientation.y + ', ' + data.orientation.z); }); /** @@ -410,7 +457,7 @@ COUCHFRIENDS.on('playerOrientation', function (data) { * @param {float} [data.name] The (new) name of the player. See http://couchfriends.com/pages/profile.html for possible * names and characters that might be included in the name. */ -COUCHFRIENDS.on('playerIdentify', function (data) { +COUCHFRIENDS.on('player.identify', function (data) { //console.log('Player with id: '+ data.id +' changed its name to: ' + data.name); }); @@ -422,7 +469,7 @@ COUCHFRIENDS.on('playerIdentify', function (data) { * @param {float} data.x Left position clicked in percentage * @param {float} data.y Top position clicked in percentage */ -COUCHFRIENDS.on('playerClick', function (data) { +COUCHFRIENDS.on('player.click', function (data) { //console.log('Player clicked. Player id: ' + data.id + ' Click position: ' + data.x + ', ' + data.y); }); @@ -434,7 +481,7 @@ COUCHFRIENDS.on('playerClick', function (data) { * @param {float} data.x Left position clicked in percentage * @param {float} data.y Top position clicked in percentage */ -COUCHFRIENDS.on('playerClickDown', function (data) { +COUCHFRIENDS.on('player.clickDown', function (data) { //console.log('Player clicked. Player id: ' + data.id + ' Click position: ' + data.x + ', ' + data.y); }); @@ -446,7 +493,7 @@ COUCHFRIENDS.on('playerClickDown', function (data) { * @param {float} data.x Left position clicked in percentage * @param {float} data.y Top position clicked in percentage */ -COUCHFRIENDS.on('playerClickUp', function (data) { +COUCHFRIENDS.on('player.clickUp', function (data) { //console.log('Player clicked. Player id: ' + data.id + ' Click position: ' + data.x + ', ' + data.y); }); @@ -457,7 +504,7 @@ COUCHFRIENDS.on('playerClickUp', function (data) { * @param {int} data.id The unique identifier of the button * @param {int} data.playerId The unique identifier of the player */ -COUCHFRIENDS.on('buttonClick', function (data) { +COUCHFRIENDS.on('player.buttonClick', function (data) { //console.log('Player clicked a button. Player id: ' + data.playerId + ' Button id: ' + data.id); }); @@ -465,20 +512,22 @@ COUCHFRIENDS.on('buttonClick', function (data) { * Callback when a player tapped a button * * @param {object} data list with the player and button information - * @param {int} data.id The unique identifier of the button - * @param {int} data.playerId The unique identifier of the player + * @param {int} data.player the player object + * @param {object} data.button Object of the button information + * @param {string} data.button.id The Button id */ -COUCHFRIENDS.on('buttonDown', function (data) { - //console.log('Player clicked a button. Player id: ' + data.playerId + ' Button id: ' + data.id); +COUCHFRIENDS.on('player.buttonDown', function (data) { + //console.log('Player clicked a button. Player id: ' + data.playerId + ' Button id: ' + data.button.id); }); /** - * Callback when a player tapped a button + * Callback when a player released a button * * @param {object} data list with the player and button information - * @param {int} data.id The unique identifier of the button - * @param {int} data.playerId The unique identifier of the player + * @param {int} data.player the player object + * @param {object} data.button Object of the button information + * @param {string} data.button.id The Button id */ -COUCHFRIENDS.on('buttonUp', function (data) { - //console.log('Player clicked a button. Player id: ' + data.playerId + ' Button id: ' + data.id); -}); \ No newline at end of file +COUCHFRIENDS.on('player.buttonUp', function (data) { + //console.log('Player clicked a button. Player id: ' + data.playerId + ' Button id: ' + data.button.id); +}); diff --git a/src/index.html b/src/index.html new file mode 100644 index 0000000..8534c92 --- /dev/null +++ b/src/index.html @@ -0,0 +1,15 @@ + + + + + Title + + + + + +
Show notification hello, 1000ms
+show hidehowto
+Unlock achievement
+ + \ No newline at end of file diff --git a/src/peer.js b/src/peer.js new file mode 100644 index 0000000..f7508b7 --- /dev/null +++ b/src/peer.js @@ -0,0 +1,2939 @@ +/*! peerjs build:0.3.13, development. Copyright(c) 2013 Michelle Bu */(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o util.chunkedMTU) { + this._sendChunks(blob); + return; + } + + // DataChannel currently only supports strings. + if (!util.supports.sctp) { + util.blobToBinaryString(blob, function(str) { + self._bufferedSend(str); + }); + } else if (!util.supports.binaryBlob) { + // We only do this if we really need to (e.g. blobs are not supported), + // because this conversion is costly. + util.blobToArrayBuffer(blob, function(ab) { + self._bufferedSend(ab); + }); + } else { + this._bufferedSend(blob); + } + } else { + this._bufferedSend(data); + } + } + + DataConnection.prototype._bufferedSend = function(msg) { + if (this._buffering || !this._trySend(msg)) { + this._buffer.push(msg); + this.bufferSize = this._buffer.length; + } + } + +// Returns true if the send succeeds. + DataConnection.prototype._trySend = function(msg) { + try { + this._dc.send(msg); + } catch (e) { + this._buffering = true; + + var self = this; + setTimeout(function() { + // Try again. + self._buffering = false; + self._tryBuffer(); + }, 100); + return false; + } + return true; + } + +// Try to send the first message in the buffer. + DataConnection.prototype._tryBuffer = function() { + if (this._buffer.length === 0) { + return; + } + + var msg = this._buffer[0]; + + if (this._trySend(msg)) { + this._buffer.shift(); + this.bufferSize = this._buffer.length; + this._tryBuffer(); + } + } + + DataConnection.prototype._sendChunks = function(blob) { + var blobs = util.chunk(blob); + for (var i = 0, ii = blobs.length; i < ii; i += 1) { + var blob = blobs[i]; + this.send(blob, true); + } + } + + DataConnection.prototype.handleMessage = function(message) { + var payload = message.payload; + + switch (message.type) { + case 'ANSWER': + this._peerBrowser = payload.browser; + + // Forward to negotiator + Negotiator.handleSDP(message.type, this, payload.sdp); + break; + case 'CANDIDATE': + Negotiator.handleCandidate(this, payload.candidate); + break; + default: + util.warn('Unrecognized message type:', message.type, 'from peer:', this.peer); + break; + } + } + + module.exports = DataConnection; + +},{"./negotiator":5,"./util":8,"eventemitter3":9,"reliable":12}],3:[function(require,module,exports){ + window.Socket = require('./socket'); + window.MediaConnection = require('./mediaconnection'); + window.DataConnection = require('./dataconnection'); + window.Peer = require('./peer'); + window.RTCPeerConnection = require('./adapter').RTCPeerConnection; + window.RTCSessionDescription = require('./adapter').RTCSessionDescription; + window.RTCIceCandidate = require('./adapter').RTCIceCandidate; + window.Negotiator = require('./negotiator'); + window.util = require('./util'); + window.BinaryPack = require('js-binarypack'); + +},{"./adapter":1,"./dataconnection":2,"./mediaconnection":4,"./negotiator":5,"./peer":6,"./socket":7,"./util":8,"js-binarypack":10}],4:[function(require,module,exports){ + var util = require('./util'); + var EventEmitter = require('eventemitter3'); + var Negotiator = require('./negotiator'); + + /** + * Wraps the streaming interface between two Peers. + */ + function MediaConnection(peer, provider, options) { + if (!(this instanceof MediaConnection)) return new MediaConnection(peer, provider, options); + EventEmitter.call(this); + + this.options = util.extend({}, options); + + this.open = false; + this.type = 'media'; + this.peer = peer; + this.provider = provider; + this.metadata = this.options.metadata; + this.localStream = this.options._stream; + + this.id = this.options.connectionId || MediaConnection._idPrefix + util.randomToken(); + if (this.localStream) { + Negotiator.startConnection( + this, + {_stream: this.localStream, originator: true} + ); + } + }; + + util.inherits(MediaConnection, EventEmitter); + + MediaConnection._idPrefix = 'mc_'; + + MediaConnection.prototype.addStream = function(remoteStream) { + util.log('Receiving stream', remoteStream); + + this.remoteStream = remoteStream; + this.emit('stream', remoteStream); // Should we call this `open`? + + }; + + MediaConnection.prototype.handleMessage = function(message) { + var payload = message.payload; + + switch (message.type) { + case 'ANSWER': + // Forward to negotiator + Negotiator.handleSDP(message.type, this, payload.sdp); + this.open = true; + break; + case 'CANDIDATE': + Negotiator.handleCandidate(this, payload.candidate); + break; + default: + util.warn('Unrecognized message type:', message.type, 'from peer:', this.peer); + break; + } + } + + MediaConnection.prototype.answer = function(stream) { + if (this.localStream) { + util.warn('Local stream already exists on this MediaConnection. Are you answering a call twice?'); + return; + } + + this.options._payload._stream = stream; + + this.localStream = stream; + Negotiator.startConnection( + this, + this.options._payload + ) + // Retrieve lost messages stored because PeerConnection not set up. + var messages = this.provider._getMessages(this.id); + for (var i = 0, ii = messages.length; i < ii; i += 1) { + this.handleMessage(messages[i]); + } + this.open = true; + }; + + /** + * Exposed functionality for users. + */ + + /** Allows user to close connection. */ + MediaConnection.prototype.close = function() { + if (!this.open) { + return; + } + this.open = false; + Negotiator.cleanup(this); + this.emit('close') + }; + + module.exports = MediaConnection; + +},{"./negotiator":5,"./util":8,"eventemitter3":9}],5:[function(require,module,exports){ + var util = require('./util'); + var RTCPeerConnection = require('./adapter').RTCPeerConnection; + var RTCSessionDescription = require('./adapter').RTCSessionDescription; + var RTCIceCandidate = require('./adapter').RTCIceCandidate; + + /** + * Manages all negotiations between Peers. + */ + var Negotiator = { + pcs: { + data: {}, + media: {} + }, // type => {peerId: {pc_id: pc}}. + //providers: {}, // provider's id => providers (there may be multiple providers/client. + queue: [] // connections that are delayed due to a PC being in use. + } + + Negotiator._idPrefix = 'pc_'; + + /** Returns a PeerConnection object set up correctly (for data, media). */ + Negotiator.startConnection = function(connection, options) { + var pc = Negotiator._getPeerConnection(connection, options); + + if (connection.type === 'media' && options._stream) { + // Add the stream. + pc.addStream(options._stream); + } + + // Set the connection's PC. + connection.pc = connection.peerConnection = pc; + // What do we need to do now? + if (options.originator) { + if (connection.type === 'data') { + // Create the datachannel. + var config = {}; + // Dropping reliable:false support, since it seems to be crashing + // Chrome. + /*if (util.supports.sctp && !options.reliable) { + // If we have canonical reliable support... + config = {maxRetransmits: 0}; + }*/ + // Fallback to ensure older browsers don't crash. + if (!util.supports.sctp) { + config = {reliable: options.reliable}; + } + var dc = pc.createDataChannel(connection.label, config); + connection.initialize(dc); + } + + if (!util.supports.onnegotiationneeded) { + Negotiator._makeOffer(connection); + } + } else { + Negotiator.handleSDP('OFFER', connection, options.sdp); + } + } + + Negotiator._getPeerConnection = function(connection, options) { + if (!Negotiator.pcs[connection.type]) { + util.error(connection.type + ' is not a valid connection type. Maybe you overrode the `type` property somewhere.'); + } + + if (!Negotiator.pcs[connection.type][connection.peer]) { + Negotiator.pcs[connection.type][connection.peer] = {}; + } + var peerConnections = Negotiator.pcs[connection.type][connection.peer]; + + var pc; + // Not multiplexing while FF and Chrome have not-great support for it. + /*if (options.multiplex) { + ids = Object.keys(peerConnections); + for (var i = 0, ii = ids.length; i < ii; i += 1) { + pc = peerConnections[ids[i]]; + if (pc.signalingState === 'stable') { + break; // We can go ahead and use this PC. + } + } + } else */ + if (options.pc) { // Simplest case: PC id already provided for us. + pc = Negotiator.pcs[connection.type][connection.peer][options.pc]; + } + + if (!pc || pc.signalingState !== 'stable') { + pc = Negotiator._startPeerConnection(connection); + } + return pc; + } + + /* + Negotiator._addProvider = function(provider) { + if ((!provider.id && !provider.disconnected) || !provider.socket.open) { + // Wait for provider to obtain an ID. + provider.on('open', function(id) { + Negotiator._addProvider(provider); + }); + } else { + Negotiator.providers[provider.id] = provider; + } + }*/ + + + /** Start a PC. */ + Negotiator._startPeerConnection = function(connection) { + util.log('Creating RTCPeerConnection.'); + + var id = Negotiator._idPrefix + util.randomToken(); + var optional = {}; + + if (connection.type === 'data' && !util.supports.sctp) { + optional = {optional: [{RtpDataChannels: true}]}; + } else if (connection.type === 'media') { + // Interop req for chrome. + optional = {optional: [{DtlsSrtpKeyAgreement: true}]}; + } + + var pc = new RTCPeerConnection(connection.provider.options.config, optional); + Negotiator.pcs[connection.type][connection.peer][id] = pc; + + Negotiator._setupListeners(connection, pc, id); + + return pc; + } + + /** Set up various WebRTC listeners. */ + Negotiator._setupListeners = function(connection, pc, pc_id) { + var peerId = connection.peer; + var connectionId = connection.id; + var provider = connection.provider; + + // ICE CANDIDATES. + util.log('Listening for ICE candidates.'); + pc.onicecandidate = function(evt) { + if (evt.candidate) { + util.log('Received ICE candidates for:', connection.peer); + provider.socket.send({ + type: 'CANDIDATE', + payload: { + candidate: evt.candidate, + type: connection.type, + connectionId: connection.id + }, + dst: peerId + }); + } + }; + + pc.oniceconnectionstatechange = function() { + switch (pc.iceConnectionState) { + case 'disconnected': + case 'failed': + util.log('iceConnectionState is disconnected, closing connections to ' + peerId); + connection.close(); + break; + case 'completed': + pc.onicecandidate = util.noop; + break; + } + }; + + // Fallback for older Chrome impls. + pc.onicechange = pc.oniceconnectionstatechange; + + // ONNEGOTIATIONNEEDED (Chrome) + util.log('Listening for `negotiationneeded`'); + pc.onnegotiationneeded = function() { + util.log('`negotiationneeded` triggered'); + if (pc.signalingState == 'stable') { + Negotiator._makeOffer(connection); + } else { + util.log('onnegotiationneeded triggered when not stable. Is another connection being established?'); + } + }; + + // DATACONNECTION. + util.log('Listening for data channel'); + // Fired between offer and answer, so options should already be saved + // in the options hash. + pc.ondatachannel = function(evt) { + util.log('Received data channel'); + var dc = evt.channel; + var connection = provider.getConnection(peerId, connectionId); + connection.initialize(dc); + }; + + // MEDIACONNECTION. + util.log('Listening for remote stream'); + pc.onaddstream = function(evt) { + util.log('Received remote stream'); + var stream = evt.stream; + var connection = provider.getConnection(peerId, connectionId); + // 10/10/2014: looks like in Chrome 38, onaddstream is triggered after + // setting the remote description. Our connection object in these cases + // is actually a DATA connection, so addStream fails. + // TODO: This is hopefully just a temporary fix. We should try to + // understand why this is happening. + if (connection.type === 'media') { + connection.addStream(stream); + } + }; + } + + Negotiator.cleanup = function(connection) { + util.log('Cleaning up PeerConnection to ' + connection.peer); + + var pc = connection.pc; + + if (!!pc && (pc.readyState !== 'closed' || pc.signalingState !== 'closed')) { + pc.close(); + connection.pc = null; + } + } + + Negotiator._makeOffer = function(connection) { + var pc = connection.pc; + pc.createOffer(function(offer) { + util.log('Created offer.'); + + if (!util.supports.sctp && connection.type === 'data' && connection.reliable) { + offer.sdp = Reliable.higherBandwidthSDP(offer.sdp); + } + + pc.setLocalDescription(offer, function() { + util.log('Set localDescription: offer', 'for:', connection.peer); + connection.provider.socket.send({ + type: 'OFFER', + payload: { + sdp: offer, + type: connection.type, + label: connection.label, + connectionId: connection.id, + reliable: connection.reliable, + serialization: connection.serialization, + metadata: connection.metadata, + browser: util.browser + }, + dst: connection.peer + }); + }, function(err) { + connection.provider.emitError('webrtc', err); + util.log('Failed to setLocalDescription, ', err); + }); + }, function(err) { + connection.provider.emitError('webrtc', err); + util.log('Failed to createOffer, ', err); + }, connection.options.constraints); + } + + Negotiator._makeAnswer = function(connection) { + var pc = connection.pc; + + pc.createAnswer(function(answer) { + util.log('Created answer.'); + + if (!util.supports.sctp && connection.type === 'data' && connection.reliable) { + answer.sdp = Reliable.higherBandwidthSDP(answer.sdp); + } + + pc.setLocalDescription(answer, function() { + util.log('Set localDescription: answer', 'for:', connection.peer); + connection.provider.socket.send({ + type: 'ANSWER', + payload: { + sdp: answer, + type: connection.type, + connectionId: connection.id, + browser: util.browser + }, + dst: connection.peer + }); + }, function(err) { + connection.provider.emitError('webrtc', err); + util.log('Failed to setLocalDescription, ', err); + }); + }, function(err) { + connection.provider.emitError('webrtc', err); + util.log('Failed to create answer, ', err); + }); + } + + /** Handle an SDP. */ + Negotiator.handleSDP = function(type, connection, sdp) { + sdp = new RTCSessionDescription(sdp); + var pc = connection.pc; + + util.log('Setting remote description', sdp); + pc.setRemoteDescription(sdp, function() { + util.log('Set remoteDescription:', type, 'for:', connection.peer); + + if (type === 'OFFER') { + Negotiator._makeAnswer(connection); + } + }, function(err) { + connection.provider.emitError('webrtc', err); + util.log('Failed to setRemoteDescription, ', err); + }); + } + + /** Handle a candidate. */ + Negotiator.handleCandidate = function(connection, ice) { + var candidate = ice.candidate; + var sdpMLineIndex = ice.sdpMLineIndex; + connection.pc.addIceCandidate(new RTCIceCandidate({ + sdpMLineIndex: sdpMLineIndex, + candidate: candidate + })); + util.log('Added ICE candidate for:', connection.peer); + } + + module.exports = Negotiator; + +},{"./adapter":1,"./util":8}],6:[function(require,module,exports){ + var util = require('./util'); + var EventEmitter = require('eventemitter3'); + var Socket = require('./socket'); + var MediaConnection = require('./mediaconnection'); + var DataConnection = require('./dataconnection'); + + /** + * A peer who can initiate connections with other peers. + */ + function Peer(id, options) { + if (!(this instanceof Peer)) return new Peer(id, options); + EventEmitter.call(this); + + // Deal with overloading + if (id && id.constructor == Object) { + options = id; + id = undefined; + } else if (id) { + // Ensure id is a string + id = id.toString(); + } + // + + // Configurize options + options = util.extend({ + debug: 0, // 1: Errors, 2: Warnings, 3: All logs + host: util.CLOUD_HOST, + port: util.CLOUD_PORT, + key: 'peerjs', + path: '/', + token: util.randomToken(), + config: util.defaultConfig + }, options); + this.options = options; + // Detect relative URL host. + if (options.host === '/') { + options.host = window.location.hostname; + } + // Set path correctly. + if (options.path[0] !== '/') { + options.path = '/' + options.path; + } + if (options.path[options.path.length - 1] !== '/') { + options.path += '/'; + } + + // Set whether we use SSL to same as current host + if (options.secure === undefined && options.host !== util.CLOUD_HOST) { + options.secure = util.isSecure(); + } + // Set a custom log function if present + if (options.logFunction) { + util.setLogFunction(options.logFunction); + } + util.setLogLevel(options.debug); + // + + // Sanity checks + // Ensure WebRTC supported + if (!util.supports.audioVideo && !util.supports.data ) { + this._delayedAbort('browser-incompatible', 'The current browser does not support WebRTC'); + return; + } + // Ensure alphanumeric id + if (!util.validateId(id)) { + this._delayedAbort('invalid-id', 'ID "' + id + '" is invalid'); + return; + } + // Ensure valid key + if (!util.validateKey(options.key)) { + this._delayedAbort('invalid-key', 'API KEY "' + options.key + '" is invalid'); + return; + } + // Ensure not using unsecure cloud server on SSL page + if (options.secure && options.host === '0.peerjs.com') { + this._delayedAbort('ssl-unavailable', + 'The cloud server currently does not support HTTPS. Please run your own PeerServer to use HTTPS.'); + return; + } + // + + // States. + this.destroyed = false; // Connections have been killed + this.disconnected = false; // Connection to PeerServer killed but P2P connections still active + this.open = false; // Sockets and such are not yet open. + // + + // References + this.connections = {}; // DataConnections for this peer. + this._lostMessages = {}; // src => [list of messages] + // + + // Start the server connection + this._initializeServerConnection(); + if (id) { + this._initialize(id); + } else { + this._retrieveId(); + } + // + } + + util.inherits(Peer, EventEmitter); + +// Initialize the 'socket' (which is actually a mix of XHR streaming and +// websockets.) + Peer.prototype._initializeServerConnection = function() { + var self = this; + this.socket = new Socket(this.options.secure, this.options.host, this.options.port, this.options.path, this.options.key); + this.socket.on('message', function(data) { + self._handleMessage(data); + }); + this.socket.on('error', function(error) { + self._abort('socket-error', error); + }); + this.socket.on('disconnected', function() { + // If we haven't explicitly disconnected, emit error and disconnect. + if (!self.disconnected) { + self.emitError('network', 'Lost connection to server.'); + self.disconnect(); + } + }); + this.socket.on('close', function() { + // If we haven't explicitly disconnected, emit error. + if (!self.disconnected) { + self._abort('socket-closed', 'Underlying socket is already closed.'); + } + }); + }; + + /** Get a unique ID from the server via XHR. */ + Peer.prototype._retrieveId = function(cb) { + var self = this; + var http = new XMLHttpRequest(); + var protocol = this.options.secure ? 'https://' : 'http://'; + var url = protocol + this.options.host + ':' + this.options.port + + this.options.path + this.options.key + '/id'; + var queryString = '?ts=' + new Date().getTime() + '' + Math.random(); + url += queryString; + + // If there's no ID we need to wait for one before trying to init socket. + http.open('get', url, true); + http.onerror = function(e) { + util.error('Error retrieving ID', e); + var pathError = ''; + if (self.options.path === '/' && self.options.host !== util.CLOUD_HOST) { + pathError = ' If you passed in a `path` to your self-hosted PeerServer, ' + + 'you\'ll also need to pass in that same path when creating a new ' + + 'Peer.'; + } + self._abort('server-error', 'Could not get an ID from the server.' + pathError); + }; + http.onreadystatechange = function() { + if (http.readyState !== 4) { + return; + } + if (http.status !== 200) { + http.onerror(); + return; + } + self._initialize(http.responseText); + }; + http.send(null); + }; + + /** Initialize a connection with the server. */ + Peer.prototype._initialize = function(id) { + this.id = id; + this.socket.start(this.id, this.options.token); + }; + + /** Handles messages from the server. */ + Peer.prototype._handleMessage = function(message) { + var type = message.type; + var payload = message.payload; + var peer = message.src; + var connection; + + switch (type) { + case 'OPEN': // The connection to the server is open. + this.emit('open', this.id); + this.open = true; + break; + case 'ERROR': // Server error. + this._abort('server-error', payload.msg); + break; + case 'ID-TAKEN': // The selected ID is taken. + this._abort('unavailable-id', 'ID `' + this.id + '` is taken'); + break; + case 'INVALID-KEY': // The given API key cannot be found. + this._abort('invalid-key', 'API KEY "' + this.options.key + '" is invalid'); + break; + + // + case 'LEAVE': // Another peer has closed its connection to this peer. + util.log('Received leave message from', peer); + this._cleanupPeer(peer); + break; + + case 'EXPIRE': // The offer sent to a peer has expired without response. + this.emitError('peer-unavailable', 'Could not connect to peer ' + peer); + break; + case 'OFFER': // we should consider switching this to CALL/CONNECT, but this is the least breaking option. + var connectionId = payload.connectionId; + connection = this.getConnection(peer, connectionId); + + if (connection) { + util.warn('Offer received for existing Connection ID:', connectionId); + //connection.handleMessage(message); + } else { + // Create a new connection. + if (payload.type === 'media') { + connection = new MediaConnection(peer, this, { + connectionId: connectionId, + _payload: payload, + metadata: payload.metadata + }); + this._addConnection(peer, connection); + this.emit('call', connection); + } else if (payload.type === 'data') { + connection = new DataConnection(peer, this, { + connectionId: connectionId, + _payload: payload, + metadata: payload.metadata, + label: payload.label, + serialization: payload.serialization, + reliable: payload.reliable + }); + this._addConnection(peer, connection); + this.emit('connection', connection); + } else { + util.warn('Received malformed connection type:', payload.type); + return; + } + // Find messages. + var messages = this._getMessages(connectionId); + for (var i = 0, ii = messages.length; i < ii; i += 1) { + connection.handleMessage(messages[i]); + } + } + break; + default: + if (!payload) { + util.warn('You received a malformed message from ' + peer + ' of type ' + type); + return; + } + + var id = payload.connectionId; + connection = this.getConnection(peer, id); + + if (connection && connection.pc) { + // Pass it on. + connection.handleMessage(message); + } else if (id) { + // Store for possible later use + this._storeMessage(id, message); + } else { + util.warn('You received an unrecognized message:', message); + } + break; + } + }; + + /** Stores messages without a set up connection, to be claimed later. */ + Peer.prototype._storeMessage = function(connectionId, message) { + if (!this._lostMessages[connectionId]) { + this._lostMessages[connectionId] = []; + } + this._lostMessages[connectionId].push(message); + }; + + /** Retrieve messages from lost message store */ + Peer.prototype._getMessages = function(connectionId) { + var messages = this._lostMessages[connectionId]; + if (messages) { + delete this._lostMessages[connectionId]; + return messages; + } else { + return []; + } + }; + + /** + * Returns a DataConnection to the specified peer. See documentation for a + * complete list of options. + */ + Peer.prototype.connect = function(peer, options) { + if (this.disconnected) { + util.warn('You cannot connect to a new Peer because you called ' + + '.disconnect() on this Peer and ended your connection with the ' + + 'server. You can create a new Peer to reconnect, or call reconnect ' + + 'on this peer if you believe its ID to still be available.'); + this.emitError('disconnected', 'Cannot connect to new Peer after disconnecting from server.'); + return; + } + var connection = new DataConnection(peer, this, options); + this._addConnection(peer, connection); + return connection; + }; + + /** + * Returns a MediaConnection to the specified peer. See documentation for a + * complete list of options. + */ + Peer.prototype.call = function(peer, stream, options) { + if (this.disconnected) { + util.warn('You cannot connect to a new Peer because you called ' + + '.disconnect() on this Peer and ended your connection with the ' + + 'server. You can create a new Peer to reconnect.'); + this.emitError('disconnected', 'Cannot connect to new Peer after disconnecting from server.'); + return; + } + if (!stream) { + util.error('To call a peer, you must provide a stream from your browser\'s `getUserMedia`.'); + return; + } + options = options || {}; + options._stream = stream; + var call = new MediaConnection(peer, this, options); + this._addConnection(peer, call); + return call; + }; + + /** Add a data/media connection to this peer. */ + Peer.prototype._addConnection = function(peer, connection) { + if (!this.connections[peer]) { + this.connections[peer] = []; + } + this.connections[peer].push(connection); + }; + + /** Retrieve a data/media connection for this peer. */ + Peer.prototype.getConnection = function(peer, id) { + var connections = this.connections[peer]; + if (!connections) { + return null; + } + for (var i = 0, ii = connections.length; i < ii; i++) { + if (connections[i].id === id) { + return connections[i]; + } + } + return null; + }; + + Peer.prototype._delayedAbort = function(type, message) { + var self = this; + util.setZeroTimeout(function(){ + self._abort(type, message); + }); + }; + + /** + * Destroys the Peer and emits an error message. + * The Peer is not destroyed if it's in a disconnected state, in which case + * it retains its disconnected state and its existing connections. + */ + Peer.prototype._abort = function(type, message) { + util.error('Aborting!'); + if (!this._lastServerId) { + this.destroy(); + } else { + this.disconnect(); + } + this.emitError(type, message); + }; + + /** Emits a typed error message. */ + Peer.prototype.emitError = function(type, err) { + util.error('Error:', err); + if (typeof err === 'string') { + err = new Error(err); + } + err.type = type; + this.emit('error', err); + }; + + /** + * Destroys the Peer: closes all active connections as well as the connection + * to the server. + * Warning: The peer can no longer create or accept connections after being + * destroyed. + */ + Peer.prototype.destroy = function() { + if (!this.destroyed) { + this._cleanup(); + this.disconnect(); + this.destroyed = true; + } + }; + + + /** Disconnects every connection on this peer. */ + Peer.prototype._cleanup = function() { + if (this.connections) { + var peers = Object.keys(this.connections); + for (var i = 0, ii = peers.length; i < ii; i++) { + this._cleanupPeer(peers[i]); + } + } + this.emit('close'); + }; + + /** Closes all connections to this peer. */ + Peer.prototype._cleanupPeer = function(peer) { + var connections = this.connections[peer]; + for (var j = 0, jj = connections.length; j < jj; j += 1) { + connections[j].close(); + } + }; + + /** + * Disconnects the Peer's connection to the PeerServer. Does not close any + * active connections. + * Warning: The peer can no longer create or accept connections after being + * disconnected. It also cannot reconnect to the server. + */ + Peer.prototype.disconnect = function() { + var self = this; + util.setZeroTimeout(function(){ + if (!self.disconnected) { + self.disconnected = true; + self.open = false; + if (self.socket) { + self.socket.close(); + } + self.emit('disconnected', self.id); + self._lastServerId = self.id; + self.id = null; + } + }); + }; + + /** Attempts to reconnect with the same ID. */ + Peer.prototype.reconnect = function() { + if (this.disconnected && !this.destroyed) { + util.log('Attempting reconnection to server with ID ' + this._lastServerId); + this.disconnected = false; + this._initializeServerConnection(); + this._initialize(this._lastServerId); + } else if (this.destroyed) { + throw new Error('This peer cannot reconnect to the server. It has already been destroyed.'); + } else if (!this.disconnected && !this.open) { + // Do nothing. We're still connecting the first time. + util.error('In a hurry? We\'re still trying to make the initial connection!'); + } else { + throw new Error('Peer ' + this.id + ' cannot reconnect because it is not disconnected from the server!'); + } + }; + + /** + * Get a list of available peer IDs. If you're running your own server, you'll + * want to set allow_discovery: true in the PeerServer options. If you're using + * the cloud server, email team@peerjs.com to get the functionality enabled for + * your key. + */ + Peer.prototype.listAllPeers = function(cb) { + cb = cb || function() {}; + var self = this; + var http = new XMLHttpRequest(); + var protocol = this.options.secure ? 'https://' : 'http://'; + var url = protocol + this.options.host + ':' + this.options.port + + this.options.path + this.options.key + '/peers'; + var queryString = '?ts=' + new Date().getTime() + '' + Math.random(); + url += queryString; + + // If there's no ID we need to wait for one before trying to init socket. + http.open('get', url, true); + http.onerror = function(e) { + self._abort('server-error', 'Could not get peers from the server.'); + cb([]); + }; + http.onreadystatechange = function() { + if (http.readyState !== 4) { + return; + } + if (http.status === 401) { + var helpfulError = ''; + if (self.options.host !== util.CLOUD_HOST) { + helpfulError = 'It looks like you\'re using the cloud server. You can email ' + + 'team@peerjs.com to enable peer listing for your API key.'; + } else { + helpfulError = 'You need to enable `allow_discovery` on your self-hosted ' + + 'PeerServer to use this feature.'; + } + cb([]); + throw new Error('It doesn\'t look like you have permission to list peers IDs. ' + helpfulError); + } else if (http.status !== 200) { + cb([]); + } else { + cb(JSON.parse(http.responseText)); + } + }; + http.send(null); + }; + + module.exports = Peer; + +},{"./dataconnection":2,"./mediaconnection":4,"./socket":7,"./util":8,"eventemitter3":9}],7:[function(require,module,exports){ + var util = require('./util'); + var EventEmitter = require('eventemitter3'); + + /** + * An abstraction on top of WebSockets and XHR streaming to provide fastest + * possible connection for peers. + */ + function Socket(secure, host, port, path, key) { + if (!(this instanceof Socket)) return new Socket(secure, host, port, path, key); + + EventEmitter.call(this); + + // Disconnected manually. + this.disconnected = false; + this._queue = []; + + var httpProtocol = secure ? 'https://' : 'http://'; + var wsProtocol = secure ? 'wss://' : 'ws://'; + this._httpUrl = httpProtocol + host + ':' + port + path + key; + this._wsUrl = wsProtocol + host + ':' + port + path + 'peerjs?key=' + key; + } + + util.inherits(Socket, EventEmitter); + + + /** Check in with ID or get one from server. */ + Socket.prototype.start = function(id, token) { + this.id = id; + + this._httpUrl += '/' + id + '/' + token; + this._wsUrl += '&id=' + id + '&token=' + token; + + this._startXhrStream(); + this._startWebSocket(); + } + + + /** Start up websocket communications. */ + Socket.prototype._startWebSocket = function(id) { + var self = this; + + if (this._socket) { + return; + } + + this._socket = new WebSocket(this._wsUrl); + + this._socket.onmessage = function(event) { + try { + var data = JSON.parse(event.data); + } catch(e) { + util.log('Invalid server message', event.data); + return; + } + self.emit('message', data); + }; + + this._socket.onclose = function(event) { + util.log('Socket closed.'); + self.disconnected = true; + self.emit('disconnected'); + }; + + // Take care of the queue of connections if necessary and make sure Peer knows + // socket is open. + this._socket.onopen = function() { + if (self._timeout) { + clearTimeout(self._timeout); + setTimeout(function(){ + self._http.abort(); + self._http = null; + }, 5000); + } + self._sendQueuedMessages(); + util.log('Socket open'); + }; + } + + /** Start XHR streaming. */ + Socket.prototype._startXhrStream = function(n) { + try { + var self = this; + this._http = new XMLHttpRequest(); + this._http._index = 1; + this._http._streamIndex = n || 0; + this._http.open('post', this._httpUrl + '/id?i=' + this._http._streamIndex, true); + this._http.onerror = function() { + // If we get an error, likely something went wrong. + // Stop streaming. + clearTimeout(self._timeout); + self.emit('disconnected'); + } + this._http.onreadystatechange = function() { + if (this.readyState == 2 && this.old) { + this.old.abort(); + delete this.old; + } else if (this.readyState > 2 && this.status === 200 && this.responseText) { + self._handleStream(this); + } + }; + this._http.send(null); + this._setHTTPTimeout(); + } catch(e) { + util.log('XMLHttpRequest not available; defaulting to WebSockets'); + } + } + + + /** Handles onreadystatechange response as a stream. */ + Socket.prototype._handleStream = function(http) { + // 3 and 4 are loading/done state. All others are not relevant. + var messages = http.responseText.split('\n'); + + // Check to see if anything needs to be processed on buffer. + if (http._buffer) { + while (http._buffer.length > 0) { + var index = http._buffer.shift(); + var bufferedMessage = messages[index]; + try { + bufferedMessage = JSON.parse(bufferedMessage); + } catch(e) { + http._buffer.shift(index); + break; + } + this.emit('message', bufferedMessage); + } + } + + var message = messages[http._index]; + if (message) { + http._index += 1; + // Buffering--this message is incomplete and we'll get to it next time. + // This checks if the httpResponse ended in a `\n`, in which case the last + // element of messages should be the empty string. + if (http._index === messages.length) { + if (!http._buffer) { + http._buffer = []; + } + http._buffer.push(http._index - 1); + } else { + try { + message = JSON.parse(message); + } catch(e) { + util.log('Invalid server message', message); + return; + } + this.emit('message', message); + } + } + } + + Socket.prototype._setHTTPTimeout = function() { + var self = this; + this._timeout = setTimeout(function() { + var old = self._http; + if (!self._wsOpen()) { + self._startXhrStream(old._streamIndex + 1); + self._http.old = old; + } else { + old.abort(); + } + }, 25000); + } + + /** Is the websocket currently open? */ + Socket.prototype._wsOpen = function() { + return this._socket && this._socket.readyState == 1; + } + + /** Send queued messages. */ + Socket.prototype._sendQueuedMessages = function() { + for (var i = 0, ii = this._queue.length; i < ii; i += 1) { + this.send(this._queue[i]); + } + } + + /** Exposed send for DC & Peer. */ + Socket.prototype.send = function(data) { + if (this.disconnected) { + return; + } + + // If we didn't get an ID yet, we can't yet send anything so we should queue + // up these messages. + if (!this.id) { + this._queue.push(data); + return; + } + + if (!data.type) { + this.emit('error', 'Invalid message'); + return; + } + + var message = JSON.stringify(data); + if (this._wsOpen()) { + this._socket.send(message); + } else { + var http = new XMLHttpRequest(); + var url = this._httpUrl + '/' + data.type.toLowerCase(); + http.open('post', url, true); + http.setRequestHeader('Content-Type', 'application/json'); + http.send(message); + } + } + + Socket.prototype.close = function() { + if (!this.disconnected && this._wsOpen()) { + this._socket.close(); + this.disconnected = true; + } + } + + module.exports = Socket; + +},{"./util":8,"eventemitter3":9}],8:[function(require,module,exports){ + var defaultConfig = {'iceServers': [{ 'url': 'stun:stun.l.google.com:19302' }]}; + var dataCount = 1; + + var BinaryPack = require('js-binarypack'); + var RTCPeerConnection = require('./adapter').RTCPeerConnection; + + var util = { + noop: function() {}, + + CLOUD_HOST: '0.peerjs.com', + CLOUD_PORT: 9000, + + // Browsers that need chunking: + chunkedBrowsers: {'Chrome': 1}, + chunkedMTU: 16300, // The original 60000 bytes setting does not work when sending data from Firefox to Chrome, which is "cut off" after 16384 bytes and delivered individually. + + // Logging logic + logLevel: 0, + setLogLevel: function(level) { + var debugLevel = parseInt(level, 10); + if (!isNaN(parseInt(level, 10))) { + util.logLevel = debugLevel; + } else { + // If they are using truthy/falsy values for debug + util.logLevel = level ? 3 : 0; + } + util.log = util.warn = util.error = util.noop; + if (util.logLevel > 0) { + util.error = util._printWith('ERROR'); + } + if (util.logLevel > 1) { + util.warn = util._printWith('WARNING'); + } + if (util.logLevel > 2) { + util.log = util._print; + } + }, + setLogFunction: function(fn) { + if (fn.constructor !== Function) { + util.warn('The log function you passed in is not a function. Defaulting to regular logs.'); + } else { + util._print = fn; + } + }, + + _printWith: function(prefix) { + return function() { + var copy = Array.prototype.slice.call(arguments); + copy.unshift(prefix); + util._print.apply(util, copy); + }; + }, + _print: function () { + var err = false; + var copy = Array.prototype.slice.call(arguments); + copy.unshift('PeerJS: '); + for (var i = 0, l = copy.length; i < l; i++){ + if (copy[i] instanceof Error) { + copy[i] = '(' + copy[i].name + ') ' + copy[i].message; + err = true; + } + } + err ? console.error.apply(console, copy) : console.log.apply(console, copy); + }, + // + + // Returns browser-agnostic default config + defaultConfig: defaultConfig, + // + + // Returns the current browser. + browser: (function() { + if (window.mozRTCPeerConnection) { + return 'Firefox'; + } else if (window.webkitRTCPeerConnection) { + return 'Chrome'; + } else if (window.RTCPeerConnection) { + return 'Supported'; + } else { + return 'Unsupported'; + } + })(), + // + + // Lists which features are supported + supports: (function() { + if (typeof RTCPeerConnection === 'undefined') { + return {}; + } + + var data = true; + var audioVideo = true; + + var binaryBlob = false; + var sctp = false; + var onnegotiationneeded = !!window.webkitRTCPeerConnection; + + var pc, dc; + try { + pc = new RTCPeerConnection(defaultConfig, {optional: [{RtpDataChannels: true}]}); + } catch (e) { + data = false; + audioVideo = false; + } + + if (data) { + try { + dc = pc.createDataChannel('_PEERJSTEST'); + } catch (e) { + data = false; + } + } + + if (data) { + // Binary test + try { + dc.binaryType = 'blob'; + binaryBlob = true; + } catch (e) { + } + + // Reliable test. + // Unfortunately Chrome is a bit unreliable about whether or not they + // support reliable. + var reliablePC = new RTCPeerConnection(defaultConfig, {}); + try { + var reliableDC = reliablePC.createDataChannel('_PEERJSRELIABLETEST', {}); + sctp = reliableDC.reliable; + } catch (e) { + } + reliablePC.close(); + } + + // FIXME: not really the best check... + if (audioVideo) { + audioVideo = !!pc.addStream; + } + + // FIXME: this is not great because in theory it doesn't work for + // av-only browsers (?). + if (!onnegotiationneeded && data) { + // sync default check. + var negotiationPC = new RTCPeerConnection(defaultConfig, {optional: [{RtpDataChannels: true}]}); + negotiationPC.onnegotiationneeded = function() { + onnegotiationneeded = true; + // async check. + if (util && util.supports) { + util.supports.onnegotiationneeded = true; + } + }; + negotiationPC.createDataChannel('_PEERJSNEGOTIATIONTEST'); + + setTimeout(function() { + negotiationPC.close(); + }, 1000); + } + + if (pc) { + pc.close(); + } + + return { + audioVideo: audioVideo, + data: data, + binaryBlob: binaryBlob, + binary: sctp, // deprecated; sctp implies binary support. + reliable: sctp, // deprecated; sctp implies reliable data. + sctp: sctp, + onnegotiationneeded: onnegotiationneeded + }; + }()), + // + + // Ensure alphanumeric ids + validateId: function(id) { + // Allow empty ids + return !id || /^[A-Za-z0-9_-]+(?:[ _-][A-Za-z0-9]+)*$/.exec(id); + }, + + validateKey: function(key) { + // Allow empty keys + return !key || /^[A-Za-z0-9_-]+(?:[ _-][A-Za-z0-9]+)*$/.exec(key); + }, + + + debug: false, + + inherits: function(ctor, superCtor) { + ctor.super_ = superCtor; + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); + }, + extend: function(dest, source) { + for(var key in source) { + if(source.hasOwnProperty(key)) { + dest[key] = source[key]; + } + } + return dest; + }, + pack: BinaryPack.pack, + unpack: BinaryPack.unpack, + + log: function () { + if (util.debug) { + var err = false; + var copy = Array.prototype.slice.call(arguments); + copy.unshift('PeerJS: '); + for (var i = 0, l = copy.length; i < l; i++){ + if (copy[i] instanceof Error) { + copy[i] = '(' + copy[i].name + ') ' + copy[i].message; + err = true; + } + } + err ? console.error.apply(console, copy) : console.log.apply(console, copy); + } + }, + + setZeroTimeout: (function(global) { + var timeouts = []; + var messageName = 'zero-timeout-message'; + + // Like setTimeout, but only takes a function argument. There's + // no time argument (always zero) and no arguments (you have to + // use a closure). + function setZeroTimeoutPostMessage(fn) { + timeouts.push(fn); + global.postMessage(messageName, '*'); + } + + function handleMessage(event) { + if (event.source == global && event.data == messageName) { + if (event.stopPropagation) { + event.stopPropagation(); + } + if (timeouts.length) { + timeouts.shift()(); + } + } + } + if (global.addEventListener) { + global.addEventListener('message', handleMessage, true); + } else if (global.attachEvent) { + global.attachEvent('onmessage', handleMessage); + } + return setZeroTimeoutPostMessage; + }(window)), + + // Binary stuff + + // chunks a blob. + chunk: function(bl) { + var chunks = []; + var size = bl.size; + var start = index = 0; + var total = Math.ceil(size / util.chunkedMTU); + while (start < size) { + var end = Math.min(size, start + util.chunkedMTU); + var b = bl.slice(start, end); + + var chunk = { + __peerData: dataCount, + n: index, + data: b, + total: total + }; + + chunks.push(chunk); + + start = end; + index += 1; + } + dataCount += 1; + return chunks; + }, + + blobToArrayBuffer: function(blob, cb){ + var fr = new FileReader(); + fr.onload = function(evt) { + cb(evt.target.result); + }; + fr.readAsArrayBuffer(blob); + }, + blobToBinaryString: function(blob, cb){ + var fr = new FileReader(); + fr.onload = function(evt) { + cb(evt.target.result); + }; + fr.readAsBinaryString(blob); + }, + binaryStringToArrayBuffer: function(binary) { + var byteArray = new Uint8Array(binary.length); + for (var i = 0; i < binary.length; i++) { + byteArray[i] = binary.charCodeAt(i) & 0xff; + } + return byteArray.buffer; + }, + randomToken: function () { + return Math.random().toString(36).substr(2); + }, + // + + isSecure: function() { + return location.protocol === 'https:'; + } + }; + + module.exports = util; + +},{"./adapter":1,"js-binarypack":10}],9:[function(require,module,exports){ + 'use strict'; + + /** + * Representation of a single EventEmitter function. + * + * @param {Function} fn Event handler to be called. + * @param {Mixed} context Context for function execution. + * @param {Boolean} once Only emit once + * @api private + */ + function EE(fn, context, once) { + this.fn = fn; + this.context = context; + this.once = once || false; + } + + /** + * Minimal EventEmitter interface that is molded against the Node.js + * EventEmitter interface. + * + * @constructor + * @api public + */ + function EventEmitter() { /* Nothing to set */ } + + /** + * Holds the assigned EventEmitters by name. + * + * @type {Object} + * @private + */ + EventEmitter.prototype._events = undefined; + + /** + * Return a list of assigned event listeners. + * + * @param {String} event The events that should be listed. + * @returns {Array} + * @api public + */ + EventEmitter.prototype.listeners = function listeners(event) { + if (!this._events || !this._events[event]) return []; + + for (var i = 0, l = this._events[event].length, ee = []; i < l; i++) { + ee.push(this._events[event][i].fn); + } + + return ee; + }; + + /** + * Emit an event to all registered event listeners. + * + * @param {String} event The name of the event. + * @returns {Boolean} Indication if we've emitted an event. + * @api public + */ + EventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) { + if (!this._events || !this._events[event]) return false; + + var listeners = this._events[event] + , length = listeners.length + , len = arguments.length + , ee = listeners[0] + , args + , i, j; + + if (1 === length) { + if (ee.once) this.removeListener(event, ee.fn, true); + + switch (len) { + case 1: return ee.fn.call(ee.context), true; + case 2: return ee.fn.call(ee.context, a1), true; + case 3: return ee.fn.call(ee.context, a1, a2), true; + case 4: return ee.fn.call(ee.context, a1, a2, a3), true; + case 5: return ee.fn.call(ee.context, a1, a2, a3, a4), true; + case 6: return ee.fn.call(ee.context, a1, a2, a3, a4, a5), true; + } + + for (i = 1, args = new Array(len -1); i < len; i++) { + args[i - 1] = arguments[i]; + } + + ee.fn.apply(ee.context, args); + } else { + for (i = 0; i < length; i++) { + if (listeners[i].once) this.removeListener(event, listeners[i].fn, true); + + switch (len) { + case 1: listeners[i].fn.call(listeners[i].context); break; + case 2: listeners[i].fn.call(listeners[i].context, a1); break; + case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break; + default: + if (!args) for (j = 1, args = new Array(len -1); j < len; j++) { + args[j - 1] = arguments[j]; + } + + listeners[i].fn.apply(listeners[i].context, args); + } + } + } + + return true; + }; + + /** + * Register a new EventListener for the given event. + * + * @param {String} event Name of the event. + * @param {Functon} fn Callback function. + * @param {Mixed} context The context of the function. + * @api public + */ + EventEmitter.prototype.on = function on(event, fn, context) { + if (!this._events) this._events = {}; + if (!this._events[event]) this._events[event] = []; + this._events[event].push(new EE( fn, context || this )); + + return this; + }; + + /** + * Add an EventListener that's only called once. + * + * @param {String} event Name of the event. + * @param {Function} fn Callback function. + * @param {Mixed} context The context of the function. + * @api public + */ + EventEmitter.prototype.once = function once(event, fn, context) { + if (!this._events) this._events = {}; + if (!this._events[event]) this._events[event] = []; + this._events[event].push(new EE(fn, context || this, true )); + + return this; + }; + + /** + * Remove event listeners. + * + * @param {String} event The event we want to remove. + * @param {Function} fn The listener that we need to find. + * @param {Boolean} once Only remove once listeners. + * @api public + */ + EventEmitter.prototype.removeListener = function removeListener(event, fn, once) { + if (!this._events || !this._events[event]) return this; + + var listeners = this._events[event] + , events = []; + + if (fn) for (var i = 0, length = listeners.length; i < length; i++) { + if (listeners[i].fn !== fn && listeners[i].once !== once) { + events.push(listeners[i]); + } + } + + // + // Reset the array, or remove it completely if we have no more listeners. + // + if (events.length) this._events[event] = events; + else this._events[event] = null; + + return this; + }; + + /** + * Remove all listeners or only the listeners for the specified event. + * + * @param {String} event The event want to remove all listeners for. + * @api public + */ + EventEmitter.prototype.removeAllListeners = function removeAllListeners(event) { + if (!this._events) return this; + + if (event) this._events[event] = null; + else this._events = {}; + + return this; + }; + +// +// Alias methods names because people roll like that. +// + EventEmitter.prototype.off = EventEmitter.prototype.removeListener; + EventEmitter.prototype.addListener = EventEmitter.prototype.on; + +// +// This function doesn't apply anymore. +// + EventEmitter.prototype.setMaxListeners = function setMaxListeners() { + return this; + }; + +// +// Expose the module. +// + EventEmitter.EventEmitter = EventEmitter; + EventEmitter.EventEmitter2 = EventEmitter; + EventEmitter.EventEmitter3 = EventEmitter; + + if ('object' === typeof module && module.exports) { + module.exports = EventEmitter; + } + +},{}],10:[function(require,module,exports){ + var BufferBuilder = require('./bufferbuilder').BufferBuilder; + var binaryFeatures = require('./bufferbuilder').binaryFeatures; + + var BinaryPack = { + unpack: function(data){ + var unpacker = new Unpacker(data); + return unpacker.unpack(); + }, + pack: function(data){ + var packer = new Packer(); + packer.pack(data); + var buffer = packer.getBuffer(); + return buffer; + } + }; + + module.exports = BinaryPack; + + function Unpacker (data){ + // Data is ArrayBuffer + this.index = 0; + this.dataBuffer = data; + this.dataView = new Uint8Array(this.dataBuffer); + this.length = this.dataBuffer.byteLength; + } + + Unpacker.prototype.unpack = function(){ + var type = this.unpack_uint8(); + if (type < 0x80){ + var positive_fixnum = type; + return positive_fixnum; + } else if ((type ^ 0xe0) < 0x20){ + var negative_fixnum = (type ^ 0xe0) - 0x20; + return negative_fixnum; + } + var size; + if ((size = type ^ 0xa0) <= 0x0f){ + return this.unpack_raw(size); + } else if ((size = type ^ 0xb0) <= 0x0f){ + return this.unpack_string(size); + } else if ((size = type ^ 0x90) <= 0x0f){ + return this.unpack_array(size); + } else if ((size = type ^ 0x80) <= 0x0f){ + return this.unpack_map(size); + } + switch(type){ + case 0xc0: + return null; + case 0xc1: + return undefined; + case 0xc2: + return false; + case 0xc3: + return true; + case 0xca: + return this.unpack_float(); + case 0xcb: + return this.unpack_double(); + case 0xcc: + return this.unpack_uint8(); + case 0xcd: + return this.unpack_uint16(); + case 0xce: + return this.unpack_uint32(); + case 0xcf: + return this.unpack_uint64(); + case 0xd0: + return this.unpack_int8(); + case 0xd1: + return this.unpack_int16(); + case 0xd2: + return this.unpack_int32(); + case 0xd3: + return this.unpack_int64(); + case 0xd4: + return undefined; + case 0xd5: + return undefined; + case 0xd6: + return undefined; + case 0xd7: + return undefined; + case 0xd8: + size = this.unpack_uint16(); + return this.unpack_string(size); + case 0xd9: + size = this.unpack_uint32(); + return this.unpack_string(size); + case 0xda: + size = this.unpack_uint16(); + return this.unpack_raw(size); + case 0xdb: + size = this.unpack_uint32(); + return this.unpack_raw(size); + case 0xdc: + size = this.unpack_uint16(); + return this.unpack_array(size); + case 0xdd: + size = this.unpack_uint32(); + return this.unpack_array(size); + case 0xde: + size = this.unpack_uint16(); + return this.unpack_map(size); + case 0xdf: + size = this.unpack_uint32(); + return this.unpack_map(size); + } + } + + Unpacker.prototype.unpack_uint8 = function(){ + var byte = this.dataView[this.index] & 0xff; + this.index++; + return byte; + }; + + Unpacker.prototype.unpack_uint16 = function(){ + var bytes = this.read(2); + var uint16 = + ((bytes[0] & 0xff) * 256) + (bytes[1] & 0xff); + this.index += 2; + return uint16; + } + + Unpacker.prototype.unpack_uint32 = function(){ + var bytes = this.read(4); + var uint32 = + ((bytes[0] * 256 + + bytes[1]) * 256 + + bytes[2]) * 256 + + bytes[3]; + this.index += 4; + return uint32; + } + + Unpacker.prototype.unpack_uint64 = function(){ + var bytes = this.read(8); + var uint64 = + ((((((bytes[0] * 256 + + bytes[1]) * 256 + + bytes[2]) * 256 + + bytes[3]) * 256 + + bytes[4]) * 256 + + bytes[5]) * 256 + + bytes[6]) * 256 + + bytes[7]; + this.index += 8; + return uint64; + } + + + Unpacker.prototype.unpack_int8 = function(){ + var uint8 = this.unpack_uint8(); + return (uint8 < 0x80 ) ? uint8 : uint8 - (1 << 8); + }; + + Unpacker.prototype.unpack_int16 = function(){ + var uint16 = this.unpack_uint16(); + return (uint16 < 0x8000 ) ? uint16 : uint16 - (1 << 16); + } + + Unpacker.prototype.unpack_int32 = function(){ + var uint32 = this.unpack_uint32(); + return (uint32 < Math.pow(2, 31) ) ? uint32 : + uint32 - Math.pow(2, 32); + } + + Unpacker.prototype.unpack_int64 = function(){ + var uint64 = this.unpack_uint64(); + return (uint64 < Math.pow(2, 63) ) ? uint64 : + uint64 - Math.pow(2, 64); + } + + Unpacker.prototype.unpack_raw = function(size){ + if ( this.length < this.index + size){ + throw new Error('BinaryPackFailure: index is out of range' + + ' ' + this.index + ' ' + size + ' ' + this.length); + } + var buf = this.dataBuffer.slice(this.index, this.index + size); + this.index += size; + + //buf = util.bufferToString(buf); + + return buf; + } + + Unpacker.prototype.unpack_string = function(size){ + var bytes = this.read(size); + var i = 0, str = '', c, code; + while(i < size){ + c = bytes[i]; + if ( c < 128){ + str += String.fromCharCode(c); + i++; + } else if ((c ^ 0xc0) < 32){ + code = ((c ^ 0xc0) << 6) | (bytes[i+1] & 63); + str += String.fromCharCode(code); + i += 2; + } else { + code = ((c & 15) << 12) | ((bytes[i+1] & 63) << 6) | + (bytes[i+2] & 63); + str += String.fromCharCode(code); + i += 3; + } + } + this.index += size; + return str; + } + + Unpacker.prototype.unpack_array = function(size){ + var objects = new Array(size); + for(var i = 0; i < size ; i++){ + objects[i] = this.unpack(); + } + return objects; + } + + Unpacker.prototype.unpack_map = function(size){ + var map = {}; + for(var i = 0; i < size ; i++){ + var key = this.unpack(); + var value = this.unpack(); + map[key] = value; + } + return map; + } + + Unpacker.prototype.unpack_float = function(){ + var uint32 = this.unpack_uint32(); + var sign = uint32 >> 31; + var exp = ((uint32 >> 23) & 0xff) - 127; + var fraction = ( uint32 & 0x7fffff ) | 0x800000; + return (sign == 0 ? 1 : -1) * + fraction * Math.pow(2, exp - 23); + } + + Unpacker.prototype.unpack_double = function(){ + var h32 = this.unpack_uint32(); + var l32 = this.unpack_uint32(); + var sign = h32 >> 31; + var exp = ((h32 >> 20) & 0x7ff) - 1023; + var hfrac = ( h32 & 0xfffff ) | 0x100000; + var frac = hfrac * Math.pow(2, exp - 20) + + l32 * Math.pow(2, exp - 52); + return (sign == 0 ? 1 : -1) * frac; + } + + Unpacker.prototype.read = function(length){ + var j = this.index; + if (j + length <= this.length) { + return this.dataView.subarray(j, j + length); + } else { + throw new Error('BinaryPackFailure: read index out of range'); + } + } + + function Packer(){ + this.bufferBuilder = new BufferBuilder(); + } + + Packer.prototype.getBuffer = function(){ + return this.bufferBuilder.getBuffer(); + } + + Packer.prototype.pack = function(value){ + var type = typeof(value); + if (type == 'string'){ + this.pack_string(value); + } else if (type == 'number'){ + if (Math.floor(value) === value){ + this.pack_integer(value); + } else{ + this.pack_double(value); + } + } else if (type == 'boolean'){ + if (value === true){ + this.bufferBuilder.append(0xc3); + } else if (value === false){ + this.bufferBuilder.append(0xc2); + } + } else if (type == 'undefined'){ + this.bufferBuilder.append(0xc0); + } else if (type == 'object'){ + if (value === null){ + this.bufferBuilder.append(0xc0); + } else { + var constructor = value.constructor; + if (constructor == Array){ + this.pack_array(value); + } else if (constructor == Blob || constructor == File) { + this.pack_bin(value); + } else if (constructor == ArrayBuffer) { + if(binaryFeatures.useArrayBufferView) { + this.pack_bin(new Uint8Array(value)); + } else { + this.pack_bin(value); + } + } else if ('BYTES_PER_ELEMENT' in value){ + if(binaryFeatures.useArrayBufferView) { + this.pack_bin(new Uint8Array(value.buffer)); + } else { + this.pack_bin(value.buffer); + } + } else if (constructor == Object){ + this.pack_object(value); + } else if (constructor == Date){ + this.pack_string(value.toString()); + } else if (typeof value.toBinaryPack == 'function'){ + this.bufferBuilder.append(value.toBinaryPack()); + } else { + throw new Error('Type "' + constructor.toString() + '" not yet supported'); + } + } + } else { + throw new Error('Type "' + type + '" not yet supported'); + } + this.bufferBuilder.flush(); + } + + + Packer.prototype.pack_bin = function(blob){ + var length = blob.length || blob.byteLength || blob.size; + if (length <= 0x0f){ + this.pack_uint8(0xa0 + length); + } else if (length <= 0xffff){ + this.bufferBuilder.append(0xda) ; + this.pack_uint16(length); + } else if (length <= 0xffffffff){ + this.bufferBuilder.append(0xdb); + this.pack_uint32(length); + } else{ + throw new Error('Invalid length'); + } + this.bufferBuilder.append(blob); + } + + Packer.prototype.pack_string = function(str){ + var length = utf8Length(str); + + if (length <= 0x0f){ + this.pack_uint8(0xb0 + length); + } else if (length <= 0xffff){ + this.bufferBuilder.append(0xd8) ; + this.pack_uint16(length); + } else if (length <= 0xffffffff){ + this.bufferBuilder.append(0xd9); + this.pack_uint32(length); + } else{ + throw new Error('Invalid length'); + } + this.bufferBuilder.append(str); + } + + Packer.prototype.pack_array = function(ary){ + var length = ary.length; + if (length <= 0x0f){ + this.pack_uint8(0x90 + length); + } else if (length <= 0xffff){ + this.bufferBuilder.append(0xdc) + this.pack_uint16(length); + } else if (length <= 0xffffffff){ + this.bufferBuilder.append(0xdd); + this.pack_uint32(length); + } else{ + throw new Error('Invalid length'); + } + for(var i = 0; i < length ; i++){ + this.pack(ary[i]); + } + } + + Packer.prototype.pack_integer = function(num){ + if ( -0x20 <= num && num <= 0x7f){ + this.bufferBuilder.append(num & 0xff); + } else if (0x00 <= num && num <= 0xff){ + this.bufferBuilder.append(0xcc); + this.pack_uint8(num); + } else if (-0x80 <= num && num <= 0x7f){ + this.bufferBuilder.append(0xd0); + this.pack_int8(num); + } else if ( 0x0000 <= num && num <= 0xffff){ + this.bufferBuilder.append(0xcd); + this.pack_uint16(num); + } else if (-0x8000 <= num && num <= 0x7fff){ + this.bufferBuilder.append(0xd1); + this.pack_int16(num); + } else if ( 0x00000000 <= num && num <= 0xffffffff){ + this.bufferBuilder.append(0xce); + this.pack_uint32(num); + } else if (-0x80000000 <= num && num <= 0x7fffffff){ + this.bufferBuilder.append(0xd2); + this.pack_int32(num); + } else if (-0x8000000000000000 <= num && num <= 0x7FFFFFFFFFFFFFFF){ + this.bufferBuilder.append(0xd3); + this.pack_int64(num); + } else if (0x0000000000000000 <= num && num <= 0xFFFFFFFFFFFFFFFF){ + this.bufferBuilder.append(0xcf); + this.pack_uint64(num); + } else{ + throw new Error('Invalid integer'); + } + } + + Packer.prototype.pack_double = function(num){ + var sign = 0; + if (num < 0){ + sign = 1; + num = -num; + } + var exp = Math.floor(Math.log(num) / Math.LN2); + var frac0 = num / Math.pow(2, exp) - 1; + var frac1 = Math.floor(frac0 * Math.pow(2, 52)); + var b32 = Math.pow(2, 32); + var h32 = (sign << 31) | ((exp+1023) << 20) | + (frac1 / b32) & 0x0fffff; + var l32 = frac1 % b32; + this.bufferBuilder.append(0xcb); + this.pack_int32(h32); + this.pack_int32(l32); + } + + Packer.prototype.pack_object = function(obj){ + var keys = Object.keys(obj); + var length = keys.length; + if (length <= 0x0f){ + this.pack_uint8(0x80 + length); + } else if (length <= 0xffff){ + this.bufferBuilder.append(0xde); + this.pack_uint16(length); + } else if (length <= 0xffffffff){ + this.bufferBuilder.append(0xdf); + this.pack_uint32(length); + } else{ + throw new Error('Invalid length'); + } + for(var prop in obj){ + if (obj.hasOwnProperty(prop)){ + this.pack(prop); + this.pack(obj[prop]); + } + } + } + + Packer.prototype.pack_uint8 = function(num){ + this.bufferBuilder.append(num); + } + + Packer.prototype.pack_uint16 = function(num){ + this.bufferBuilder.append(num >> 8); + this.bufferBuilder.append(num & 0xff); + } + + Packer.prototype.pack_uint32 = function(num){ + var n = num & 0xffffffff; + this.bufferBuilder.append((n & 0xff000000) >>> 24); + this.bufferBuilder.append((n & 0x00ff0000) >>> 16); + this.bufferBuilder.append((n & 0x0000ff00) >>> 8); + this.bufferBuilder.append((n & 0x000000ff)); + } + + Packer.prototype.pack_uint64 = function(num){ + var high = num / Math.pow(2, 32); + var low = num % Math.pow(2, 32); + this.bufferBuilder.append((high & 0xff000000) >>> 24); + this.bufferBuilder.append((high & 0x00ff0000) >>> 16); + this.bufferBuilder.append((high & 0x0000ff00) >>> 8); + this.bufferBuilder.append((high & 0x000000ff)); + this.bufferBuilder.append((low & 0xff000000) >>> 24); + this.bufferBuilder.append((low & 0x00ff0000) >>> 16); + this.bufferBuilder.append((low & 0x0000ff00) >>> 8); + this.bufferBuilder.append((low & 0x000000ff)); + } + + Packer.prototype.pack_int8 = function(num){ + this.bufferBuilder.append(num & 0xff); + } + + Packer.prototype.pack_int16 = function(num){ + this.bufferBuilder.append((num & 0xff00) >> 8); + this.bufferBuilder.append(num & 0xff); + } + + Packer.prototype.pack_int32 = function(num){ + this.bufferBuilder.append((num >>> 24) & 0xff); + this.bufferBuilder.append((num & 0x00ff0000) >>> 16); + this.bufferBuilder.append((num & 0x0000ff00) >>> 8); + this.bufferBuilder.append((num & 0x000000ff)); + } + + Packer.prototype.pack_int64 = function(num){ + var high = Math.floor(num / Math.pow(2, 32)); + var low = num % Math.pow(2, 32); + this.bufferBuilder.append((high & 0xff000000) >>> 24); + this.bufferBuilder.append((high & 0x00ff0000) >>> 16); + this.bufferBuilder.append((high & 0x0000ff00) >>> 8); + this.bufferBuilder.append((high & 0x000000ff)); + this.bufferBuilder.append((low & 0xff000000) >>> 24); + this.bufferBuilder.append((low & 0x00ff0000) >>> 16); + this.bufferBuilder.append((low & 0x0000ff00) >>> 8); + this.bufferBuilder.append((low & 0x000000ff)); + } + + function _utf8Replace(m){ + var code = m.charCodeAt(0); + + if(code <= 0x7ff) return '00'; + if(code <= 0xffff) return '000'; + if(code <= 0x1fffff) return '0000'; + if(code <= 0x3ffffff) return '00000'; + return '000000'; + } + + function utf8Length(str){ + if (str.length > 600) { + // Blob method faster for large strings + return (new Blob([str])).size; + } else { + return str.replace(/[^\u0000-\u007F]/g, _utf8Replace).length; + } + } + +},{"./bufferbuilder":11}],11:[function(require,module,exports){ + var binaryFeatures = {}; + binaryFeatures.useBlobBuilder = (function(){ + try { + new Blob([]); + return false; + } catch (e) { + return true; + } + })(); + + binaryFeatures.useArrayBufferView = !binaryFeatures.useBlobBuilder && (function(){ + try { + return (new Blob([new Uint8Array([])])).size === 0; + } catch (e) { + return true; + } + })(); + + module.exports.binaryFeatures = binaryFeatures; + var BlobBuilder = module.exports.BlobBuilder; + if (typeof window != 'undefined') { + BlobBuilder = module.exports.BlobBuilder = window.WebKitBlobBuilder || + window.MozBlobBuilder || window.MSBlobBuilder || window.BlobBuilder; + } + + function BufferBuilder(){ + this._pieces = []; + this._parts = []; + } + + BufferBuilder.prototype.append = function(data) { + if(typeof data === 'number') { + this._pieces.push(data); + } else { + this.flush(); + this._parts.push(data); + } + }; + + BufferBuilder.prototype.flush = function() { + if (this._pieces.length > 0) { + var buf = new Uint8Array(this._pieces); + if(!binaryFeatures.useArrayBufferView) { + buf = buf.buffer; + } + this._parts.push(buf); + this._pieces = []; + } + }; + + BufferBuilder.prototype.getBuffer = function() { + this.flush(); + if(binaryFeatures.useBlobBuilder) { + var builder = new BlobBuilder(); + for(var i = 0, ii = this._parts.length; i < ii; i++) { + builder.append(this._parts[i]); + } + return builder.getBlob(); + } else { + return new Blob(this._parts); + } + }; + + module.exports.BufferBuilder = BufferBuilder; + +},{}],12:[function(require,module,exports){ + var util = require('./util'); + + /** + * Reliable transfer for Chrome Canary DataChannel impl. + * Author: @michellebu + */ + function Reliable(dc, debug) { + if (!(this instanceof Reliable)) return new Reliable(dc); + this._dc = dc; + + util.debug = debug; + + // Messages sent/received so far. + // id: { ack: n, chunks: [...] } + this._outgoing = {}; + // id: { ack: ['ack', id, n], chunks: [...] } + this._incoming = {}; + this._received = {}; + + // Window size. + this._window = 1000; + // MTU. + this._mtu = 500; + // Interval for setInterval. In ms. + this._interval = 0; + + // Messages sent. + this._count = 0; + + // Outgoing message queue. + this._queue = []; + + this._setupDC(); + }; + +// Send a message reliably. + Reliable.prototype.send = function(msg) { + // Determine if chunking is necessary. + var bl = util.pack(msg); + if (bl.size < this._mtu) { + this._handleSend(['no', bl]); + return; + } + + this._outgoing[this._count] = { + ack: 0, + chunks: this._chunk(bl) + }; + + if (util.debug) { + this._outgoing[this._count].timer = new Date(); + } + + // Send prelim window. + this._sendWindowedChunks(this._count); + this._count += 1; + }; + +// Set up interval for processing queue. + Reliable.prototype._setupInterval = function() { + // TODO: fail gracefully. + + var self = this; + this._timeout = setInterval(function() { + // FIXME: String stuff makes things terribly async. + var msg = self._queue.shift(); + if (msg._multiple) { + for (var i = 0, ii = msg.length; i < ii; i += 1) { + self._intervalSend(msg[i]); + } + } else { + self._intervalSend(msg); + } + }, this._interval); + }; + + Reliable.prototype._intervalSend = function(msg) { + var self = this; + msg = util.pack(msg); + util.blobToBinaryString(msg, function(str) { + self._dc.send(str); + }); + if (self._queue.length === 0) { + clearTimeout(self._timeout); + self._timeout = null; + //self._processAcks(); + } + }; + +// Go through ACKs to send missing pieces. + Reliable.prototype._processAcks = function() { + for (var id in this._outgoing) { + if (this._outgoing.hasOwnProperty(id)) { + this._sendWindowedChunks(id); + } + } + }; + +// Handle sending a message. +// FIXME: Don't wait for interval time for all messages... + Reliable.prototype._handleSend = function(msg) { + var push = true; + for (var i = 0, ii = this._queue.length; i < ii; i += 1) { + var item = this._queue[i]; + if (item === msg) { + push = false; + } else if (item._multiple && item.indexOf(msg) !== -1) { + push = false; + } + } + if (push) { + this._queue.push(msg); + if (!this._timeout) { + this._setupInterval(); + } + } + }; + +// Set up DataChannel handlers. + Reliable.prototype._setupDC = function() { + // Handle various message types. + var self = this; + this._dc.onmessage = function(e) { + var msg = e.data; + var datatype = msg.constructor; + // FIXME: msg is String until binary is supported. + // Once that happens, this will have to be smarter. + if (datatype === String) { + var ab = util.binaryStringToArrayBuffer(msg); + msg = util.unpack(ab); + self._handleMessage(msg); + } + }; + }; + +// Handles an incoming message. + Reliable.prototype._handleMessage = function(msg) { + var id = msg[1]; + var idata = this._incoming[id]; + var odata = this._outgoing[id]; + var data; + switch (msg[0]) { + // No chunking was done. + case 'no': + var message = id; + if (!!message) { + this.onmessage(util.unpack(message)); + } + break; + // Reached the end of the message. + case 'end': + data = idata; + + // In case end comes first. + this._received[id] = msg[2]; + + if (!data) { + break; + } + + this._ack(id); + break; + case 'ack': + data = odata; + if (!!data) { + var ack = msg[2]; + // Take the larger ACK, for out of order messages. + data.ack = Math.max(ack, data.ack); + + // Clean up when all chunks are ACKed. + if (data.ack >= data.chunks.length) { + util.log('Time: ', new Date() - data.timer); + delete this._outgoing[id]; + } else { + this._processAcks(); + } + } + // If !data, just ignore. + break; + // Received a chunk of data. + case 'chunk': + // Create a new entry if none exists. + data = idata; + if (!data) { + var end = this._received[id]; + if (end === true) { + break; + } + data = { + ack: ['ack', id, 0], + chunks: [] + }; + this._incoming[id] = data; + } + + var n = msg[2]; + var chunk = msg[3]; + data.chunks[n] = new Uint8Array(chunk); + + // If we get the chunk we're looking for, ACK for next missing. + // Otherwise, ACK the same N again. + if (n === data.ack[2]) { + this._calculateNextAck(id); + } + this._ack(id); + break; + default: + // Shouldn't happen, but would make sense for message to just go + // through as is. + this._handleSend(msg); + break; + } + }; + +// Chunks BL into smaller messages. + Reliable.prototype._chunk = function(bl) { + var chunks = []; + var size = bl.size; + var start = 0; + while (start < size) { + var end = Math.min(size, start + this._mtu); + var b = bl.slice(start, end); + var chunk = { + payload: b + } + chunks.push(chunk); + start = end; + } + util.log('Created', chunks.length, 'chunks.'); + return chunks; + }; + +// Sends ACK N, expecting Nth blob chunk for message ID. + Reliable.prototype._ack = function(id) { + var ack = this._incoming[id].ack; + + // if ack is the end value, then call _complete. + if (this._received[id] === ack[2]) { + this._complete(id); + this._received[id] = true; + } + + this._handleSend(ack); + }; + +// Calculates the next ACK number, given chunks. + Reliable.prototype._calculateNextAck = function(id) { + var data = this._incoming[id]; + var chunks = data.chunks; + for (var i = 0, ii = chunks.length; i < ii; i += 1) { + // This chunk is missing!!! Better ACK for it. + if (chunks[i] === undefined) { + data.ack[2] = i; + return; + } + } + data.ack[2] = chunks.length; + }; + +// Sends the next window of chunks. + Reliable.prototype._sendWindowedChunks = function(id) { + util.log('sendWindowedChunks for: ', id); + var data = this._outgoing[id]; + var ch = data.chunks; + var chunks = []; + var limit = Math.min(data.ack + this._window, ch.length); + for (var i = data.ack; i < limit; i += 1) { + if (!ch[i].sent || i === data.ack) { + ch[i].sent = true; + chunks.push(['chunk', id, i, ch[i].payload]); + } + } + if (data.ack + this._window >= ch.length) { + chunks.push(['end', id, ch.length]) + } + chunks._multiple = true; + this._handleSend(chunks); + }; + +// Puts together a message from chunks. + Reliable.prototype._complete = function(id) { + util.log('Completed called for', id); + var self = this; + var chunks = this._incoming[id].chunks; + var bl = new Blob(chunks); + util.blobToArrayBuffer(bl, function(ab) { + self.onmessage(util.unpack(ab)); + }); + delete this._incoming[id]; + }; + +// Ups bandwidth limit on SDP. Meant to be called during offer/answer. + Reliable.higherBandwidthSDP = function(sdp) { + // AS stands for Application-Specific Maximum. + // Bandwidth number is in kilobits / sec. + // See RFC for more info: http://www.ietf.org/rfc/rfc2327.txt + + // Chrome 31+ doesn't want us munging the SDP, so we'll let them have their + // way. + var version = navigator.appVersion.match(/Chrome\/(.*?) /); + if (version) { + version = parseInt(version[1].split('.').shift()); + if (version < 31) { + var parts = sdp.split('b=AS:30'); + var replace = 'b=AS:102400'; // 100 Mbps + if (parts.length > 1) { + return parts[0] + replace + parts[1]; + } + } + } + + return sdp; + }; + +// Overwritten, typically. + Reliable.prototype.onmessage = function(msg) {}; + + module.exports.Reliable = Reliable; + +},{"./util":13}],13:[function(require,module,exports){ + var BinaryPack = require('js-binarypack'); + + var util = { + debug: false, + + inherits: function(ctor, superCtor) { + ctor.super_ = superCtor; + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); + }, + extend: function(dest, source) { + for(var key in source) { + if(source.hasOwnProperty(key)) { + dest[key] = source[key]; + } + } + return dest; + }, + pack: BinaryPack.pack, + unpack: BinaryPack.unpack, + + log: function () { + if (util.debug) { + var copy = []; + for (var i = 0; i < arguments.length; i++) { + copy[i] = arguments[i]; + } + copy.unshift('Reliable: '); + console.log.apply(console, copy); + } + }, + + setZeroTimeout: (function(global) { + var timeouts = []; + var messageName = 'zero-timeout-message'; + + // Like setTimeout, but only takes a function argument. There's + // no time argument (always zero) and no arguments (you have to + // use a closure). + function setZeroTimeoutPostMessage(fn) { + timeouts.push(fn); + global.postMessage(messageName, '*'); + } + + function handleMessage(event) { + if (event.source == global && event.data == messageName) { + if (event.stopPropagation) { + event.stopPropagation(); + } + if (timeouts.length) { + timeouts.shift()(); + } + } + } + if (global.addEventListener) { + global.addEventListener('message', handleMessage, true); + } else if (global.attachEvent) { + global.attachEvent('onmessage', handleMessage); + } + return setZeroTimeoutPostMessage; + }(this)), + + blobToArrayBuffer: function(blob, cb){ + var fr = new FileReader(); + fr.onload = function(evt) { + cb(evt.target.result); + }; + fr.readAsArrayBuffer(blob); + }, + blobToBinaryString: function(blob, cb){ + var fr = new FileReader(); + fr.onload = function(evt) { + cb(evt.target.result); + }; + fr.readAsBinaryString(blob); + }, + binaryStringToArrayBuffer: function(binary) { + var byteArray = new Uint8Array(binary.length); + for (var i = 0; i < binary.length; i++) { + byteArray[i] = binary.charCodeAt(i) & 0xff; + } + return byteArray.buffer; + }, + randomToken: function () { + return Math.random().toString(36).substr(2); + } + }; + + module.exports = util; + +},{"js-binarypack":10}]},{},[3]);

;#F=L`&a(e$inx_6kwBfu6CEfW0bZxLgCJ;& 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 *>JL(D)xrs&c7fEwvhm+q*@Z@~a`{a89 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

;#F=L`&a(e$inx_6kwBfu6CEfW0bZxLgCJ;& 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 *>JL(D)xrs&c7fEwvhm+q*@Z@~a`{a89 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