diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7337e1e --- /dev/null +++ b/.gitignore @@ -0,0 +1,64 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (http://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# Typescript v1 declaration files +typings/ + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variables file +.env + +# Local development config file +config.json +package-lock.json + +public/assets/app.js diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..9cf9495 --- /dev/null +++ b/.npmrc @@ -0,0 +1 @@ +package-lock=false \ No newline at end of file diff --git a/api/config.mjs b/api/config.mjs new file mode 100644 index 0000000..90ce437 --- /dev/null +++ b/api/config.mjs @@ -0,0 +1,24 @@ +import Nconf from 'nconf-lite' + +const nconf = new Nconf() + +// Helper method for global usage. +nconf.inTest = () => nconf.get('NODE_ENV') === 'test' + +// Load env +nconf.overrides({ + NODE_ENV: (process.env.NODE_ENV || 'development').toLocaleLowerCase() +}) + +// Load empty overrides that can be overwritten later +nconf.overrides({}) + +nconf.defaults({ + "frontend": { + "url": "http://streamer.filadelfia.is" + }, + "jwtsecret": "w2bkdWAButfdfEkCs8dpE3L2n6QzCfhna0T4" +}) + + +export default nconf diff --git a/api/encoder/routes.mjs b/api/encoder/routes.mjs new file mode 100644 index 0000000..39c9093 --- /dev/null +++ b/api/encoder/routes.mjs @@ -0,0 +1,14 @@ + +export default class EncoderRoutes { + constructor(opts = {}) { + Object.assign(this, opts) + } + + registerIo(server, ctx) { + ctx.socket.safeOn('encoder.status', this.status.bind(this)) + } + + status(ctx) { + ctx.socket.emit('encoder.status', { running: false }) + } +} diff --git a/api/io.mjs b/api/io.mjs new file mode 100644 index 0000000..6ab6022 --- /dev/null +++ b/api/io.mjs @@ -0,0 +1,59 @@ +import socket from 'socket.io-serveronly' + +export default class SocketServer { + constructor(db, log, routes) { + this.db = db + this.log = log + this.routes = routes + } + + init(server) { + this.io = new socket(server) + this.io.on('connection', this.onNewConnection.bind(this)) + } + + onNewConnection(socket) { + let ctx = { + io: this.io, + socket: socket, + log: this.log.child({ id: socket.id }), + db: this.db + } + + ctx.log.info('New socket connection', { id: socket.id }) + + ctx.socket.safeOn = this.socketSafeOn.bind(this, ctx) + + this.register(ctx) + + ctx.socket.emit('data', { bla: 'test' }) + } + + register(ctx) { + let keys = Object.keys(this.routes) + for (let key of keys) { + if (this.routes[key].registerIo) { + this.routes[key].registerIo(this, ctx) + } + } + } + + socketSafeOn(ctx, name, fn) { + ctx.socket.on(name, data => { + ctx.log.info('IO: ' + name) + let res; + try { + res = fn(ctx, data) + } catch (err) { + ctx.log.error(error, `Error processing ${name}`) + } + + if (res && typeof(res.then) === 'function') { + res.then( + () => {}, + error => ctx.log.error(error, `Error processing ${name}`) + ) + } + }) + } +} \ No newline at end of file diff --git a/api/serve.mjs b/api/serve.mjs new file mode 100644 index 0000000..146270d --- /dev/null +++ b/api/serve.mjs @@ -0,0 +1,61 @@ +import path from 'path' +import { FileResponse } from 'flaska' +import fs from 'fs/promises' +import fsSync from 'fs' + +export default class ServeHandler { + constructor(opts = {}) { + Object.assign(this, opts) + Object.assign(this, { + fs: this.fs || fs, + fsSync: this.fsSync || fsSync, + frontend: this.frontend || 'http://localhost:4000', + version: this.version || 'version', + }) + + this.index = fsSync.readFileSync(path.join(this.root, 'index.html')) + } + + register(server) { + server.flaska.get('/::file', this.serve.bind(this)) + } + + /** GET: /::file */ + serve(ctx) { + if (ctx.params.file.startsWith('api/')) { + return this.serveIndex(ctx) + } + + let file = path.resolve(path.join(this.root, ctx.params.file ? ctx.params.file : 'index.html')) + + if (!ctx.params.file + || ctx.params.file === 'index.html') { + return this.serveIndex(ctx) + } + + if (!file.startsWith(this.root)) { + return this.serveIndex(ctx) + } + + return this.fs.stat(file) + .then(function(stat) { + ctx.headers['Cache-Control'] = 'no-store' + ctx.body = new FileResponse(file, stat) + }) + .catch((err) => { + if (err.code === 'ENOENT') { + return this.serveIndex(ctx) + } + return Promise.reject(err) + }) + } + + async serveIndex(ctx) { + ctx.body = this.index + ctx.type = 'text/html; charset=utf-8' + } + + serveErrorPage(ctx) { + + } +} \ No newline at end of file diff --git a/api/server.mjs b/api/server.mjs new file mode 100644 index 0000000..40fa301 --- /dev/null +++ b/api/server.mjs @@ -0,0 +1,139 @@ +import { Flaska, QueryHandler, JsonHandler, HttpError } from 'flaska' + +import config from './config.mjs' +import StaticRoutes from './static_routes.mjs' +import ServeHandler from './serve.mjs' +import SocketServer from './io.mjs' +import EncoderRoutes from './encoder/routes.mjs' + +export default class Server { + constructor(http, port, core, opts = {}) { + Object.assign(this, opts) + Object.assign(this, { + http, port, core, + }) + let localUtil = new this.core.sc.Util(import.meta.url) + + this.flaskaOptions = { + appendHeaders: { + 'Content-Security-Policy': `default-src 'self'; style-src 'self' 'unsafe-inline'; img-src * data: blob:; font-src 'self' data:; object-src 'none'; frame-ancestors 'none'; connect-src 'self' https://media.nfp.is/; media-src 'self' https://cdn.nfp.is/`, + }, + nonce: [], + log: this.core.log, + } + this.jsonHandler = JsonHandler + + this.routes = { + static: new StaticRoutes(), + encoder: new EncoderRoutes(), + } + this.routes.serve = new ServeHandler({ + root: localUtil.getPathFromRoot('../public'), + version: this.core.app.running, + frontend: config.get('frontend:url'), + }) + } + + runCreateServer() { + // Create our server + this.flaska = new Flaska(this.flaskaOptions, this.http) + + // configure our server + if (config.get('NODE_ENV') === 'development') { + this.flaska.devMode() + } + + this.flaska.onerror((err, ctx) => { + if (err instanceof HttpError && err.status !== 500) { + ctx.status = err.status + ctx.log.warn(err.message) + } else { + ctx.log.error(err.inner || err) + if (err.extra) { + ctx.log.error({ extra: err.extra }, 'Database parameters') + } + ctx.status = 500 + } + ctx.body = { + status: ctx.status, + message: err.message, + } + }) + + this.flaska.before(function(ctx) { + ctx.state.started = new Date().getTime() + ctx.req.ip = ctx.req.headers['x-forwarded-for'] || ctx.req.connection.remoteAddress + ctx.log = ctx.log.child({ + id: Math.random().toString(36).substring(2, 14), + }) + ctx.db = this.pool + }.bind(this)) + this.flaska.before(QueryHandler()) + + let healthChecks = 0 + let healthCollectLimit = 60 * 60 * 12 + + this.flaska.after(function(ctx) { + if (ctx.aborted && ctx.status === 200) { + ctx.status = 299 + } + let ended = new Date().getTime() + var requestTime = ended - ctx.state.started + + let status = '' + let level = 'info' + if (ctx.status >= 400) { + status = ctx.status + ' ' + level = 'warn' + } + if (ctx.status >= 500) { + level = 'error' + } + + if (ctx.url === '/health' || ctx.url === '/api/health') { + healthChecks++ + if (healthChecks >= healthCollectLimit) { + ctx.log[level]({ + duration: Math.round(ended), + status: ctx.status, + }, `<-- ${status}${ctx.method} ${ctx.url} {has happened ${healthChecks} times}`) + healthChecks = 0 + } + return + } + + ctx.log[level]({ + duration: requestTime, + status: ctx.status, + ip: ctx.req.ip, + }, (ctx.aborted ? '[ABORT]' : '<--') + ` ${status}${ctx.method} ${ctx.url}`) + }) + } + + runRegisterRoutes() { + let keys = Object.keys(this.routes) + for (let key of keys) { + if (this.routes[key].register) { + this.routes[key].register(this) + } + } + } + + runCreateSocket() { + this.io = new SocketServer(this.db, this.core.log, this.routes) + this.io.init(this.flaska.server) + } + + runStartListen() { + return this.flaska.listenAsync(this.port).then(() => { + this.core.log.info('Server is listening on port ' + this.port) + this.runCreateSocket() + }) + } + + run() { + this.runCreateServer() + this.runRegisterRoutes() + return this.runStartListen() + } +} diff --git a/api/static_routes.mjs b/api/static_routes.mjs new file mode 100644 index 0000000..7ce8d01 --- /dev/null +++ b/api/static_routes.mjs @@ -0,0 +1,17 @@ +import config from './config.mjs' + +export default class StaticRoutes { + constructor(opts = {}) { + Object.assign(this, { }) + } + + register(server) { + server.flaska.get('/api/health', this.health.bind(this)) + } + + health(ctx) { + ctx.body = { + environment: config.get('NODE_ENV'), + } + } +} diff --git a/app/api/client.js b/app/api/client.js new file mode 100644 index 0000000..1c5430e --- /dev/null +++ b/app/api/client.js @@ -0,0 +1,78 @@ +const m = require('mithril') +var io = require('./socket') +var socket = io() + +class Client { + constructor(socket) { + this.socket = socket + this.isConnected = false + + this.socket.on('disconnect', this.disconnected.bind(this)) + this.socket.on('connect', this.connected.bind(this)) + this.components = new Map() + } + + registerComponent(component) { + this.components.set(component, []) + if (component.ioInit) { + component.ioInit() + } + if (this.isConnected && component.ioConnected) { + component.ioConnected() + } + } + + safeGetComponent(component) { + if (typeof(component) === 'string') { + throw new Error('io.on was called without specifying active component') + } + let arr = this.components.get(component) + if (!arr) { + throw new Error('Registered component was missing but was attempting to add socket listener') + } + return arr + } + + on(component, name, fn) { + let arr = this.safeGetComponent(component) + arr.push([name, fn]) + + this.socket.on(name, (data) => { + Promise.resolve().then(() => { + return fn(data) + }) + .catch(err => { + console.error('Error running io handler for ' + name, err) + }) + }) + } + + emit(name, data) { + this.socket.emit(name, data) + } + + unregisterComponent(component) { + let arr = this.safeGetComponent(component) + for (let item of arr) { + this.socket.off(item[0], item[1]) + } + this.components.delete(component) + } + + disconnected() { + this.isConnected = false + m.redraw() + } + + connected() { + this.isConnected = true + for (let component of this.components) { + if (component[0].ioConnected) { + component[0].ioConnected() + } + } + m.redraw() + } +} + +module.exports = new Client(socket) diff --git a/app/api/socket.js b/app/api/socket.js new file mode 100644 index 0000000..29b6a1f --- /dev/null +++ b/app/api/socket.js @@ -0,0 +1,8 @@ +/*! + * Socket.IO v2.3.0 + * (c) 2014-2019 Guillermo Rauch + * Released under the MIT License. + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.io=e():t.io=e()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){function r(t,e){"object"==typeof t&&(e=t,t=void 0),e=e||{};var n,r=o(t),i=r.source,u=r.id,p=r.path,h=c[u]&&p in c[u].nsps,f=e.forceNew||e["force new connection"]||!1===e.multiplex||h;return f?(a("ignoring socket cache for %s",i),n=s(i,e)):(c[u]||(a("new io instance for %s",i),c[u]=s(i,e)),n=c[u]),r.query&&!e.query&&(e.query=r.query),n.socket(r.path,e)}var o=n(1),i=n(7),s=n(15),a=n(3)("socket.io-client");t.exports=e=r;var c=e.managers={};e.protocol=i.protocol,e.connect=r,e.Manager=n(15),e.Socket=n(39)},function(t,e,n){function r(t,e){var n=t;e=e||"undefined"!=typeof location&&location,null==t&&(t=e.protocol+"//"+e.host),"string"==typeof t&&("/"===t.charAt(0)&&(t="/"===t.charAt(1)?e.protocol+t:e.host+t),/^(https?|wss?):\/\//.test(t)||(i("protocol-less url %s",t),t="undefined"!=typeof e?e.protocol+"//"+t:"https://"+t),i("parse %s",t),n=o(t)),n.port||(/^(http|ws)$/.test(n.protocol)?n.port="80":/^(http|ws)s$/.test(n.protocol)&&(n.port="443")),n.path=n.path||"/";var r=n.host.indexOf(":")!==-1,s=r?"["+n.host+"]":n.host;return n.id=n.protocol+"://"+s+":"+n.port,n.href=n.protocol+"://"+s+(e&&e.port===n.port?"":":"+n.port),n}var o=n(2),i=n(3)("socket.io-client:url");t.exports=r},function(t,e){var n=/^(?:(?![^:@]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,r=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];t.exports=function(t){var e=t,o=t.indexOf("["),i=t.indexOf("]");o!=-1&&i!=-1&&(t=t.substring(0,o)+t.substring(o,i).replace(/:/g,";")+t.substring(i,t.length));for(var s=n.exec(t||""),a={},c=14;c--;)a[r[c]]=s[c]||"";return o!=-1&&i!=-1&&(a.source=e,a.host=a.host.substring(1,a.host.length-1).replace(/;/g,":"),a.authority=a.authority.replace("[","").replace("]","").replace(/;/g,":"),a.ipv6uri=!0),a}},function(t,e,n){(function(r){"use strict";function o(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))}function i(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+t.exports.humanize(this.diff),this.useColors){var n="color: "+this.color;e.splice(1,0,n,"color: inherit");var r=0,o=0;e[0].replace(/%[a-zA-Z%]/g,function(t){"%%"!==t&&(r++,"%c"===t&&(o=r))}),e.splice(o,0,n)}}function s(){var t;return"object"===("undefined"==typeof console?"undefined":p(console))&&console.log&&(t=console).log.apply(t,arguments)}function a(t){try{t?e.storage.setItem("debug",t):e.storage.removeItem("debug")}catch(n){}}function c(){var t=void 0;try{t=e.storage.getItem("debug")}catch(n){}return!t&&"undefined"!=typeof r&&"env"in r&&(t=r.env.DEBUG),t}function u(){try{return localStorage}catch(t){}}var p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};e.log=s,e.formatArgs=i,e.save=a,e.load=c,e.useColors=o,e.storage=u(),e.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.exports=n(5)(e);var h=t.exports.formatters;h.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}).call(e,n(4))},function(t,e){function n(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function o(t){if(p===setTimeout)return setTimeout(t,0);if((p===n||!p)&&setTimeout)return p=setTimeout,setTimeout(t,0);try{return p(t,0)}catch(e){try{return p.call(null,t,0)}catch(e){return p.call(this,t,0)}}}function i(t){if(h===clearTimeout)return clearTimeout(t);if((h===r||!h)&&clearTimeout)return h=clearTimeout,clearTimeout(t);try{return h(t)}catch(e){try{return h.call(null,t)}catch(e){return h.call(this,t)}}}function s(){y&&l&&(y=!1,l.length?d=l.concat(d):m=-1,d.length&&a())}function a(){if(!y){var t=o(s);y=!0;for(var e=d.length;e;){for(l=d,d=[];++m1)for(var n=1;n100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var n=parseFloat(e[1]),r=(e[2]||"ms").toLowerCase();switch(r){case"years":case"year":case"yrs":case"yr":case"y":return n*h;case"weeks":case"week":case"w":return n*p;case"days":case"day":case"d":return n*u;case"hours":case"hour":case"hrs":case"hr":case"h":return n*c;case"minutes":case"minute":case"mins":case"min":case"m":return n*a;case"seconds":case"second":case"secs":case"sec":case"s":return n*s;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}}}function r(t){var e=Math.abs(t);return e>=u?Math.round(t/u)+"d":e>=c?Math.round(t/c)+"h":e>=a?Math.round(t/a)+"m":e>=s?Math.round(t/s)+"s":t+"ms"}function o(t){var e=Math.abs(t);return e>=u?i(t,e,u,"day"):e>=c?i(t,e,c,"hour"):e>=a?i(t,e,a,"minute"):e>=s?i(t,e,s,"second"):t+" ms"}function i(t,e,n,r){var o=e>=1.5*n;return Math.round(t/n)+" "+r+(o?"s":"")}var s=1e3,a=60*s,c=60*a,u=24*c,p=7*u,h=365.25*u;t.exports=function(t,e){e=e||{};var i=typeof t;if("string"===i&&t.length>0)return n(t);if("number"===i&&isFinite(t))return e["long"]?o(t):r(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))}},function(t,e,n){function r(){}function o(t){var n=""+t.type;if(e.BINARY_EVENT!==t.type&&e.BINARY_ACK!==t.type||(n+=t.attachments+"-"),t.nsp&&"/"!==t.nsp&&(n+=t.nsp+","),null!=t.id&&(n+=t.id),null!=t.data){var r=i(t.data);if(r===!1)return g;n+=r}return f("encoded %j as %s",t,n),n}function i(t){try{return JSON.stringify(t)}catch(e){return!1}}function s(t,e){function n(t){var n=d.deconstructPacket(t),r=o(n.packet),i=n.buffers;i.unshift(r),e(i)}d.removeBlobs(t,n)}function a(){this.reconstructor=null}function c(t){var n=0,r={type:Number(t.charAt(0))};if(null==e.types[r.type])return h("unknown packet type "+r.type);if(e.BINARY_EVENT===r.type||e.BINARY_ACK===r.type){for(var o="";"-"!==t.charAt(++n)&&(o+=t.charAt(n),n!=t.length););if(o!=Number(o)||"-"!==t.charAt(n))throw new Error("Illegal attachments");r.attachments=Number(o)}if("/"===t.charAt(n+1))for(r.nsp="";++n;){var i=t.charAt(n);if(","===i)break;if(r.nsp+=i,n===t.length)break}else r.nsp="/";var s=t.charAt(n+1);if(""!==s&&Number(s)==s){for(r.id="";++n;){var i=t.charAt(n);if(null==i||Number(i)!=i){--n;break}if(r.id+=t.charAt(n),n===t.length)break}r.id=Number(r.id)}if(t.charAt(++n)){var a=u(t.substr(n)),c=a!==!1&&(r.type===e.ERROR||y(a));if(!c)return h("invalid payload");r.data=a}return f("decoded %s as %j",t,r),r}function u(t){try{return JSON.parse(t)}catch(e){return!1}}function p(t){this.reconPack=t,this.buffers=[]}function h(t){return{type:e.ERROR,data:"parser error: "+t}}var f=n(8)("socket.io-parser"),l=n(11),d=n(12),y=n(13),m=n(14);e.protocol=4,e.types=["CONNECT","DISCONNECT","EVENT","ACK","ERROR","BINARY_EVENT","BINARY_ACK"],e.CONNECT=0,e.DISCONNECT=1,e.EVENT=2,e.ACK=3,e.ERROR=4,e.BINARY_EVENT=5,e.BINARY_ACK=6,e.Encoder=r,e.Decoder=a;var g=e.ERROR+'"encode error"';r.prototype.encode=function(t,n){if(f("encoding packet %j",t),e.BINARY_EVENT===t.type||e.BINARY_ACK===t.type)s(t,n);else{var r=o(t);n([r])}},l(a.prototype),a.prototype.add=function(t){var n;if("string"==typeof t)n=c(t),e.BINARY_EVENT===n.type||e.BINARY_ACK===n.type?(this.reconstructor=new p(n),0===this.reconstructor.reconPack.attachments&&this.emit("decoded",n)):this.emit("decoded",n);else{if(!m(t)&&!t.base64)throw new Error("Unknown type: "+t);if(!this.reconstructor)throw new Error("got binary data when not reconstructing a packet");n=this.reconstructor.takeBinaryData(t),n&&(this.reconstructor=null,this.emit("decoded",n))}},a.prototype.destroy=function(){this.reconstructor&&this.reconstructor.finishedReconstruction()},p.prototype.takeBinaryData=function(t){if(this.buffers.push(t),this.buffers.length===this.reconPack.attachments){var e=d.reconstructPacket(this.reconPack,this.buffers);return this.finishedReconstruction(),e}return null},p.prototype.finishedReconstruction=function(){this.reconPack=null,this.buffers=[]}},function(t,e,n){(function(r){"use strict";function o(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))}function i(t){var n=this.useColors;if(t[0]=(n?"%c":"")+this.namespace+(n?" %c":" ")+t[0]+(n?"%c ":" ")+"+"+e.humanize(this.diff),n){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var o=0,i=0;t[0].replace(/%[a-zA-Z%]/g,function(t){"%%"!==t&&(o++,"%c"===t&&(i=o))}),t.splice(i,0,r)}}function s(){return"object"===("undefined"==typeof console?"undefined":p(console))&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function a(t){try{null==t?e.storage.removeItem("debug"):e.storage.debug=t}catch(n){}}function c(){var t;try{t=e.storage.debug}catch(n){}return!t&&"undefined"!=typeof r&&"env"in r&&(t=r.env.DEBUG),t}function u(){try{return window.localStorage}catch(t){}}var p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};e=t.exports=n(9),e.log=s,e.formatArgs=i,e.save=a,e.load=c,e.useColors=o,e.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:u(),e.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],e.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},e.enable(c())}).call(e,n(4))},function(t,e,n){"use strict";function r(t){var n,r=0;for(n in t)r=(r<<5)-r+t.charCodeAt(n),r|=0;return e.colors[Math.abs(r)%e.colors.length]}function o(t){function n(){if(n.enabled){var t=n,r=+new Date,i=r-(o||r);t.diff=i,t.prev=o,t.curr=r,o=r;for(var s=new Array(arguments.length),a=0;a100)){var e=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(t);if(e){var n=parseFloat(e[1]),r=(e[2]||"ms").toLowerCase();switch(r){case"years":case"year":case"yrs":case"yr":case"y":return n*p;case"days":case"day":case"d":return n*u;case"hours":case"hour":case"hrs":case"hr":case"h":return n*c;case"minutes":case"minute":case"mins":case"min":case"m":return n*a;case"seconds":case"second":case"secs":case"sec":case"s":return n*s;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}}}function r(t){return t>=u?Math.round(t/u)+"d":t>=c?Math.round(t/c)+"h":t>=a?Math.round(t/a)+"m":t>=s?Math.round(t/s)+"s":t+"ms"}function o(t){return i(t,u,"day")||i(t,c,"hour")||i(t,a,"minute")||i(t,s,"second")||t+" ms"}function i(t,e,n){if(!(t0)return n(t);if("number"===i&&isNaN(t)===!1)return e["long"]?o(t):r(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))}},function(t,e,n){function r(t){if(t)return o(t)}function o(t){for(var e in r.prototype)t[e]=r.prototype[e];return t}t.exports=r,r.prototype.on=r.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this},r.prototype.once=function(t,e){function n(){this.off(t,n),e.apply(this,arguments)}return n.fn=e,this.on(t,n),this},r.prototype.off=r.prototype.removeListener=r.prototype.removeAllListeners=r.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n=this._callbacks["$"+t];if(!n)return this;if(1==arguments.length)return delete this._callbacks["$"+t],this;for(var r,o=0;o0&&!this.encoding){var t=this.packetBuffer.shift();this.packet(t)}},r.prototype.cleanup=function(){p("cleanup");for(var t=this.subs.length,e=0;e=this._reconnectionAttempts)p("reconnect failed"),this.backoff.reset(),this.emitAll("reconnect_failed"),this.reconnecting=!1;else{var e=this.backoff.duration();p("will wait %dms before reconnect attempt",e),this.reconnecting=!0;var n=setTimeout(function(){t.skipReconnect||(p("attempting reconnect"),t.emitAll("reconnect_attempt",t.backoff.attempts),t.emitAll("reconnecting",t.backoff.attempts),t.skipReconnect||t.open(function(e){e?(p("reconnect attempt error"),t.reconnecting=!1,t.reconnect(),t.emitAll("reconnect_error",e.data)):(p("reconnect success"),t.onreconnect())}))},e);this.subs.push({destroy:function(){clearTimeout(n)}})}},r.prototype.onreconnect=function(){var t=this.backoff.attempts;this.reconnecting=!1,this.backoff.reset(),this.updateSocketIds(),this.emitAll("reconnect",t)}},function(t,e,n){t.exports=n(17),t.exports.parser=n(24)},function(t,e,n){function r(t,e){return this instanceof r?(e=e||{},t&&"object"==typeof t&&(e=t,t=null),t?(t=p(t),e.hostname=t.host,e.secure="https"===t.protocol||"wss"===t.protocol,e.port=t.port,t.query&&(e.query=t.query)):e.host&&(e.hostname=p(e.host).host),this.secure=null!=e.secure?e.secure:"undefined"!=typeof location&&"https:"===location.protocol,e.hostname&&!e.port&&(e.port=this.secure?"443":"80"),this.agent=e.agent||!1,this.hostname=e.hostname||("undefined"!=typeof location?location.hostname:"localhost"),this.port=e.port||("undefined"!=typeof location&&location.port?location.port:this.secure?443:80),this.query=e.query||{},"string"==typeof this.query&&(this.query=h.decode(this.query)),this.upgrade=!1!==e.upgrade,this.path=(e.path||"/engine.io").replace(/\/$/,"")+"/",this.forceJSONP=!!e.forceJSONP,this.jsonp=!1!==e.jsonp,this.forceBase64=!!e.forceBase64,this.enablesXDR=!!e.enablesXDR,this.withCredentials=!1!==e.withCredentials,this.timestampParam=e.timestampParam||"t",this.timestampRequests=e.timestampRequests,this.transports=e.transports||["polling","websocket"],this.transportOptions=e.transportOptions||{},this.readyState="",this.writeBuffer=[],this.prevBufferLen=0,this.policyPort=e.policyPort||843,this.rememberUpgrade=e.rememberUpgrade||!1,this.binaryType=null,this.onlyBinaryUpgrades=e.onlyBinaryUpgrades,this.perMessageDeflate=!1!==e.perMessageDeflate&&(e.perMessageDeflate||{}),!0===this.perMessageDeflate&&(this.perMessageDeflate={}),this.perMessageDeflate&&null==this.perMessageDeflate.threshold&&(this.perMessageDeflate.threshold=1024),this.pfx=e.pfx||null,this.key=e.key||null,this.passphrase=e.passphrase||null,this.cert=e.cert||null,this.ca=e.ca||null,this.ciphers=e.ciphers||null,this.rejectUnauthorized=void 0===e.rejectUnauthorized||e.rejectUnauthorized,this.forceNode=!!e.forceNode,this.isReactNative="undefined"!=typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase(),("undefined"==typeof self||this.isReactNative)&&(e.extraHeaders&&Object.keys(e.extraHeaders).length>0&&(this.extraHeaders=e.extraHeaders),e.localAddress&&(this.localAddress=e.localAddress)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingIntervalTimer=null,this.pingTimeoutTimer=null,void this.open()):new r(t,e)}function o(t){var e={};for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}var i=n(18),s=n(11),a=n(3)("engine.io-client:socket"),c=n(38),u=n(24),p=n(2),h=n(32);t.exports=r,r.priorWebsocketSuccess=!1,s(r.prototype),r.protocol=u.protocol,r.Socket=r,r.Transport=n(23),r.transports=n(18),r.parser=n(24),r.prototype.createTransport=function(t){a('creating transport "%s"',t);var e=o(this.query);e.EIO=u.protocol,e.transport=t;var n=this.transportOptions[t]||{};this.id&&(e.sid=this.id);var r=new i[t]({query:e,socket:this,agent:n.agent||this.agent,hostname:n.hostname||this.hostname,port:n.port||this.port,secure:n.secure||this.secure,path:n.path||this.path,forceJSONP:n.forceJSONP||this.forceJSONP,jsonp:n.jsonp||this.jsonp,forceBase64:n.forceBase64||this.forceBase64,enablesXDR:n.enablesXDR||this.enablesXDR,withCredentials:n.withCredentials||this.withCredentials,timestampRequests:n.timestampRequests||this.timestampRequests,timestampParam:n.timestampParam||this.timestampParam,policyPort:n.policyPort||this.policyPort,pfx:n.pfx||this.pfx,key:n.key||this.key,passphrase:n.passphrase||this.passphrase,cert:n.cert||this.cert,ca:n.ca||this.ca,ciphers:n.ciphers||this.ciphers,rejectUnauthorized:n.rejectUnauthorized||this.rejectUnauthorized,perMessageDeflate:n.perMessageDeflate||this.perMessageDeflate,extraHeaders:n.extraHeaders||this.extraHeaders,forceNode:n.forceNode||this.forceNode,localAddress:n.localAddress||this.localAddress,requestTimeout:n.requestTimeout||this.requestTimeout,protocols:n.protocols||void 0,isReactNative:this.isReactNative});return r},r.prototype.open=function(){var t;if(this.rememberUpgrade&&r.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1)t="websocket";else{ +if(0===this.transports.length){var e=this;return void setTimeout(function(){e.emit("error","No transports available")},0)}t=this.transports[0]}this.readyState="opening";try{t=this.createTransport(t)}catch(n){return this.transports.shift(),void this.open()}t.open(),this.setTransport(t)},r.prototype.setTransport=function(t){a("setting transport %s",t.name);var e=this;this.transport&&(a("clearing existing transport %s",this.transport.name),this.transport.removeAllListeners()),this.transport=t,t.on("drain",function(){e.onDrain()}).on("packet",function(t){e.onPacket(t)}).on("error",function(t){e.onError(t)}).on("close",function(){e.onClose("transport close")})},r.prototype.probe=function(t){function e(){if(f.onlyBinaryUpgrades){var e=!this.supportsBinary&&f.transport.supportsBinary;h=h||e}h||(a('probe transport "%s" opened',t),p.send([{type:"ping",data:"probe"}]),p.once("packet",function(e){if(!h)if("pong"===e.type&&"probe"===e.data){if(a('probe transport "%s" pong',t),f.upgrading=!0,f.emit("upgrading",p),!p)return;r.priorWebsocketSuccess="websocket"===p.name,a('pausing current transport "%s"',f.transport.name),f.transport.pause(function(){h||"closed"!==f.readyState&&(a("changing transport and sending upgrade packet"),u(),f.setTransport(p),p.send([{type:"upgrade"}]),f.emit("upgrade",p),p=null,f.upgrading=!1,f.flush())})}else{a('probe transport "%s" failed',t);var n=new Error("probe error");n.transport=p.name,f.emit("upgradeError",n)}}))}function n(){h||(h=!0,u(),p.close(),p=null)}function o(e){var r=new Error("probe error: "+e);r.transport=p.name,n(),a('probe transport "%s" failed because of error: %s',t,e),f.emit("upgradeError",r)}function i(){o("transport closed")}function s(){o("socket closed")}function c(t){p&&t.name!==p.name&&(a('"%s" works - aborting "%s"',t.name,p.name),n())}function u(){p.removeListener("open",e),p.removeListener("error",o),p.removeListener("close",i),f.removeListener("close",s),f.removeListener("upgrading",c)}a('probing transport "%s"',t);var p=this.createTransport(t,{probe:1}),h=!1,f=this;r.priorWebsocketSuccess=!1,p.once("open",e),p.once("error",o),p.once("close",i),this.once("close",s),this.once("upgrading",c),p.open()},r.prototype.onOpen=function(){if(a("socket open"),this.readyState="open",r.priorWebsocketSuccess="websocket"===this.transport.name,this.emit("open"),this.flush(),"open"===this.readyState&&this.upgrade&&this.transport.pause){a("starting upgrade probes");for(var t=0,e=this.upgrades.length;t1?{type:b[o],data:t.substring(1)}:{type:b[o]}:C}var i=new Uint8Array(t),o=i[0],s=f(t,1);return w&&"blob"===n&&(s=new w([s])),{type:b[o],data:s}},e.decodeBase64Packet=function(t,e){var n=b[t.charAt(0)];if(!u)return{type:n,data:{base64:!0,data:t.substr(1)}};var r=u.decode(t.substr(1));return"blob"===e&&w&&(r=new w([r])),{type:n,data:r}},e.encodePayload=function(t,n,r){function o(t){return t.length+":"+t}function i(t,r){e.encodePacket(t,!!s&&n,!1,function(t){r(null,o(t))})}"function"==typeof n&&(r=n,n=null);var s=h(t);return n&&s?w&&!g?e.encodePayloadAsBlob(t,r):e.encodePayloadAsArrayBuffer(t,r):t.length?void c(t,i,function(t,e){return r(e.join(""))}):r("0:")},e.decodePayload=function(t,n,r){if("string"!=typeof t)return e.decodePayloadAsBinary(t,n,r);"function"==typeof n&&(r=n,n=null);var o;if(""===t)return r(C,0,1);for(var i,s,a="",c=0,u=t.length;c0;){for(var s=new Uint8Array(o),a=0===s[0],c="",u=1;255!==s[u];u++){if(c.length>310)return r(C,0,1);c+=s[u]}o=f(o,2+c.length),c=parseInt(c);var p=f(o,0,c);if(a)try{p=String.fromCharCode.apply(null,new Uint8Array(p))}catch(h){var l=new Uint8Array(p);p="";for(var u=0;ur&&(n=r),e>=r||e>=n||0===r)return new ArrayBuffer(0);for(var o=new Uint8Array(t),i=new Uint8Array(n-e),s=e,a=0;s=55296&&e<=56319&&o65535&&(e-=65536,o+=d(e>>>10&1023|55296),e=56320|1023&e),o+=d(e);return o}function o(t,e){if(t>=55296&&t<=57343){if(e)throw Error("Lone surrogate U+"+t.toString(16).toUpperCase()+" is not a scalar value");return!1}return!0}function i(t,e){return d(t>>e&63|128)}function s(t,e){if(0==(4294967168&t))return d(t);var n="";return 0==(4294965248&t)?n=d(t>>6&31|192):0==(4294901760&t)?(o(t,e)||(t=65533),n=d(t>>12&15|224),n+=i(t,6)):0==(4292870144&t)&&(n=d(t>>18&7|240),n+=i(t,12),n+=i(t,6)),n+=d(63&t|128)}function a(t,e){e=e||{};for(var r,o=!1!==e.strict,i=n(t),a=i.length,c=-1,u="";++c=f)throw Error("Invalid byte index");var t=255&h[l];if(l++,128==(192&t))return 63&t;throw Error("Invalid continuation byte")}function u(t){var e,n,r,i,s;if(l>f)throw Error("Invalid byte index");if(l==f)return!1;if(e=255&h[l],l++,0==(128&e))return e;if(192==(224&e)){if(n=c(),s=(31&e)<<6|n,s>=128)return s;throw Error("Invalid continuation byte")}if(224==(240&e)){if(n=c(),r=c(),s=(15&e)<<12|n<<6|r,s>=2048)return o(s,t)?s:65533;throw Error("Invalid continuation byte")}if(240==(248&e)&&(n=c(),r=c(),i=c(),s=(7&e)<<18|n<<12|r<<6|i,s>=65536&&s<=1114111))return s;throw Error("Invalid UTF-8 detected")}function p(t,e){e=e||{};var o=!1!==e.strict;h=n(t),f=h.length,l=0;for(var i,s=[];(i=u(o))!==!1;)s.push(i);return r(s)}/*! https://mths.be/utf8js v2.1.2 by @mathias */ +var h,f,l,d=String.fromCharCode;t.exports={version:"2.1.2",encode:a,decode:p}},function(t,e){!function(){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=new Uint8Array(256),r=0;r>2],i+=t[(3&r[n])<<4|r[n+1]>>4],i+=t[(15&r[n+1])<<2|r[n+2]>>6],i+=t[63&r[n+2]];return o%3===2?i=i.substring(0,i.length-1)+"=":o%3===1&&(i=i.substring(0,i.length-2)+"=="),i},e.decode=function(t){var e,r,o,i,s,a=.75*t.length,c=t.length,u=0;"="===t[t.length-1]&&(a--,"="===t[t.length-2]&&a--);var p=new ArrayBuffer(a),h=new Uint8Array(p);for(e=0;e>4,h[u++]=(15&o)<<4|i>>2,h[u++]=(3&i)<<6|63&s;return p}}()},function(t,e){function n(t){return t.map(function(t){if(t.buffer instanceof ArrayBuffer){var e=t.buffer;if(t.byteLength!==e.byteLength){var n=new Uint8Array(t.byteLength);n.set(new Uint8Array(e,t.byteOffset,t.byteLength)),e=n.buffer}return e}return t})}function r(t,e){e=e||{};var r=new i;return n(t).forEach(function(t){r.append(t)}),e.type?r.getBlob(e.type):r.getBlob()}function o(t,e){return new Blob(n(t),e||{})}var i="undefined"!=typeof i?i:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:"undefined"!=typeof MSBlobBuilder?MSBlobBuilder:"undefined"!=typeof MozBlobBuilder&&MozBlobBuilder,s=function(){try{var t=new Blob(["hi"]);return 2===t.size}catch(e){return!1}}(),a=s&&function(){try{var t=new Blob([new Uint8Array([1,2])]);return 2===t.size}catch(e){return!1}}(),c=i&&i.prototype.append&&i.prototype.getBlob;"undefined"!=typeof Blob&&(r.prototype=Blob.prototype,o.prototype=Blob.prototype),t.exports=function(){return s?a?Blob:o:c?r:void 0}()},function(t,e){e.encode=function(t){var e="";for(var n in t)t.hasOwnProperty(n)&&(e.length&&(e+="&"),e+=encodeURIComponent(n)+"="+encodeURIComponent(t[n]));return e},e.decode=function(t){for(var e={},n=t.split("&"),r=0,o=n.length;r0);return e}function r(t){var e=0;for(p=0;p';i=document.createElement(e)}catch(t){i=document.createElement("iframe"),i.name=o.iframeId,i.src="javascript:0"}i.id=o.iframeId,o.form.appendChild(i),o.iframe=i}var o=this;if(!this.form){var i,s=document.createElement("form"),a=document.createElement("textarea"),c=this.iframeId="eio_iframe_"+this.index;s.className="socketio",s.style.position="absolute",s.style.top="-1000px",s.style.left="-1000px",s.target=c,s.method="POST",s.setAttribute("accept-charset","utf-8"),a.name="d",s.appendChild(a),document.body.appendChild(s),this.form=s,this.area=a}this.form.action=this.uri(),r(),t=t.replace(p,"\\\n"),this.area.value=t.replace(u,"\\n");try{this.form.submit()}catch(h){}this.iframe.attachEvent?this.iframe.onreadystatechange=function(){"complete"===o.iframe.readyState&&n()}:this.iframe.onload=n}}).call(e,function(){return this}())},function(t,e,n){function r(t){var e=t&&t.forceBase64;e&&(this.supportsBinary=!1),this.perMessageDeflate=t.perMessageDeflate,this.usingBrowserWebSocket=o&&!t.forceNode,this.protocols=t.protocols,this.usingBrowserWebSocket||(l=i),s.call(this,t)}var o,i,s=n(23),a=n(24),c=n(32),u=n(33),p=n(34),h=n(3)("engine.io-client:websocket");if("undefined"!=typeof WebSocket?o=WebSocket:"undefined"!=typeof self&&(o=self.WebSocket||self.MozWebSocket),"undefined"==typeof window)try{i=n(37)}catch(f){}var l=o||i;t.exports=r,u(r,s),r.prototype.name="websocket",r.prototype.supportsBinary=!0,r.prototype.doOpen=function(){if(this.check()){var t=this.uri(),e=this.protocols,n={agent:this.agent,perMessageDeflate:this.perMessageDeflate};n.pfx=this.pfx,n.key=this.key,n.passphrase=this.passphrase,n.cert=this.cert,n.ca=this.ca,n.ciphers=this.ciphers,n.rejectUnauthorized=this.rejectUnauthorized,this.extraHeaders&&(n.headers=this.extraHeaders),this.localAddress&&(n.localAddress=this.localAddress);try{this.ws=this.usingBrowserWebSocket&&!this.isReactNative?e?new l(t,e):new l(t):new l(t,e,n)}catch(r){return this.emit("error",r)}void 0===this.ws.binaryType&&(this.supportsBinary=!1),this.ws.supports&&this.ws.supports.binary?(this.supportsBinary=!0,this.ws.binaryType="nodebuffer"):this.ws.binaryType="arraybuffer",this.addEventListeners()}},r.prototype.addEventListeners=function(){var t=this;this.ws.onopen=function(){t.onOpen()},this.ws.onclose=function(){t.onClose()},this.ws.onmessage=function(e){t.onData(e.data)},this.ws.onerror=function(e){t.onError("websocket error",e)}},r.prototype.write=function(t){function e(){n.emit("flush"),setTimeout(function(){n.writable=!0,n.emit("drain")},0)}var n=this;this.writable=!1;for(var r=t.length,o=0,i=r;o0&&t.jitter<=1?t.jitter:0,this.attempts=0}t.exports=n,n.prototype.duration=function(){var t=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),n=Math.floor(e*this.jitter*t);t=0==(1&Math.floor(10*e))?t-n:t+n}return 0|Math.min(t,this.max)},n.prototype.reset=function(){this.attempts=0},n.prototype.setMin=function(t){this.ms=t},n.prototype.setMax=function(t){this.max=t},n.prototype.setJitter=function(t){this.jitter=t}}])}); diff --git a/app/index.js b/app/index.js new file mode 100644 index 0000000..0ec6d16 --- /dev/null +++ b/app/index.js @@ -0,0 +1,21 @@ +const m = require('mithril') +const Status = require('./page_status') +window.m = m + +m.route.setOrig = m.route.set +m.route.set = function(path, data, options){ + m.route.setOrig(path, data, options) + window.scrollTo(0, 0) +} + +m.route.linkOrig = m.route.link +m.route.link = function(vnode){ + m.route.linkOrig(vnode) + window.scrollTo(0, 0) +} + +m.route.prefix = '' + +m.route(document.getElementById('main'), '/', { + '/': Status, +}) diff --git a/app/page_status.js b/app/page_status.js new file mode 100644 index 0000000..f4b65c8 --- /dev/null +++ b/app/page_status.js @@ -0,0 +1,30 @@ +const m = require('mithril') +const client = require('./api/client') + +const Status = { + oninit: function(vnode) { + client.registerComponent(this) + }, + + onremove: function(vnode) { + client.unregisterComponent(this) + }, + + ioInit: function() { + client.on(this, 'encoder.status', status => { + console.log('status', status) + }) + }, + + ioConnected: function() { + client.emit('encoder.status') + }, + + view: function(vnode) { + return [ + m('div', `Hello world, connection status: ${client.isConnected}`), + ] + }, +} + +module.exports = Status diff --git a/arduino/arduino.ino b/arduino/arduino.ino new file mode 100644 index 0000000..351137d --- /dev/null +++ b/arduino/arduino.ino @@ -0,0 +1,103 @@ +/* + Blink + +The circuit: + * VFD Data to digital pin 2 (blue) + * VFD Clock to digital pin 3 (yellow) + * VFD Chip select to digital pin 4 (green) + * VFD VCC (power) to 5V + * VFD Ground (power) to Ground +*/ + +// include the library code: +#include + +// initialize the library with the numbers of the interface pins +SPI_VFD vfd(2, 3, 4); + +// | 1 2| +// |12345678901234567890| +String vfd_line_top = "Booting up... "; +String vfd_line_bottom = "Waiting for stream. "; +unsigned int vfd_line_position = 0; +bool vfd_line_print = false; +unsigned long millis_last_incoming_ping = 0; +unsigned long millis_last_outgoing_ping = 0; + +// the setup function runs once when you press reset or power the board +void setup() { + // initialize digital pin LED_BUILTIN as an output. + pinMode(LED_BUILTIN, OUTPUT); + digitalWrite(LED_BUILTIN, LOW); + + Serial.begin(9600); + + // set up the VFD's number of columns and rows: + vfd.begin(20, 2); + update_display(); +} + +void update_display() { + vfd.setCursor(0, 0); + vfd.print(vfd_line_top); + vfd.setCursor(0, 1); + vfd.print(vfd_line_bottom); +} + +void check_serial() { + while (Serial.available() > 0) { + millis_last_incoming_ping = millis(); + int incomingByte = Serial.read(); + if (incomingByte == 0 || incomingByte == '^') { + incomingByte = vfd_line_position = 0; + } + if (incomingByte < 32) { + continue; + } + + if (vfd_line_position < 20) { + vfd_line_top.setCharAt(vfd_line_position, incomingByte); + } else { + vfd_line_bottom.setCharAt(vfd_line_position - 20, incomingByte); + } + vfd_line_position = (vfd_line_position + 1) % 40; + vfd_line_print = vfd_line_position == 0; + if (vfd_line_print) { + break; + } + } +} + +// the loop function runs over and over again forever +void loop() { + // We've been running for over 50 days and wrapped to zero. Reset all our timers + if (millis() < 10000 && (millis_last_outgoing_ping > 10000 || millis_last_incoming_ping > 10000)) { + millis_last_outgoing_ping = 0; + millis_last_incoming_ping = 0; + } + + check_serial(); + + // If it's been 10 seconds since last incoming data + if (millis() - millis_last_incoming_ping > 30000) { + // |12345678901234567890| + vfd_line_top = "Error stream is down"; + vfd_line_bottom = "Verify or restart..."; + vfd_line_print = true; + millis_last_incoming_ping = millis(); + } + + // Send outgoing ping every 5 seconds if we can. + if (millis() - millis_last_outgoing_ping > 30000 && Serial.availableForWrite()) { + Serial.write('^'); + millis_last_outgoing_ping = millis(); + } + + // If we have something to print, print it + if (vfd_line_print) { + vfd_line_print = false; + update_display(); + } + + delay(100); +} diff --git a/index.mjs b/index.mjs new file mode 100644 index 0000000..2bcb25c --- /dev/null +++ b/index.mjs @@ -0,0 +1,38 @@ +import fs from 'fs' +import { pathToFileURL } from 'url' +import config from './api/config.mjs' + +export function start(http, port, ctx) { + config.sources[1].store = ctx.config + + return import('./api/server.mjs') + .then(function(module) { + let server = new module.default(http, port, ctx) + return server.run() + }) +} + +if (import.meta.url === pathToFileURL(process.argv[1]).href) { + import('service-core').then(core => { + const port = 4510 + + var core = new core.ServiceCore('filadelfia_streamer', import.meta.url, port, '') + + let config = { + frontend: { + url: 'http://localhost:' + port + } + } + + try { + config = JSON.parse(fs.readFileSync('./config.json')) + } catch {} + + config.port = port + + core.setConfig(config) + core.init({ start }).then(function() { + return core.run() + }) + }) +} \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..bc304b3 --- /dev/null +++ b/package.json @@ -0,0 +1,49 @@ +{ + "name": "church_streamer", + "version": "1.0.0", + "description": "", + "main": "index.mjs", + "scripts": { + "start": "node index.mjs", + "test": "echo \"Error: no test specified\" && exit 1", + "build": "esbuild app/index.js --bundle --outfile=public/assets/app.js", + "dev:build": "eltro --watch build --npm build", + "dev:server": "eltro --watch server --npm server", + "dev:build:old": "npm-watch build", + "dev:server:old": "npm-watch server", + "server": "node index.mjs | bunyan" + }, + "watch": { + "server": { + "patterns": [ + "api" + ], + "extensions": "js,mjs", + "quiet": true, + "inherit": true + }, + "build": { + "patterns": [ + "app" + ], + "extensions": "js", + "quiet": true, + "inherit": true + } + }, + "author": "Jonatan Nilsson", + "license": "WTFPL", + "dependencies": { + "bunyan-lite": "^1.2.1", + "flaska": "^1.3.4", + "nconf-lite": "^2.0.0", + "serialport": "^12.0.0", + "socket.io-serveronly": "^2.3.0" + }, + "devDependencies": { + "eltro": "^1.4.4", + "esbuild": "^0.19.5", + "mithril": "^2.2.2", + "service-core": "^3.0.0-beta.17" + } +} diff --git a/public/assets/app.css b/public/assets/app.css new file mode 100644 index 0000000..5ed9f99 --- /dev/null +++ b/public/assets/app.css @@ -0,0 +1,25 @@ + +[hidden] { display: none !important; } + +:root { --bg: #fff; --bg-component: #f3f7ff; --bg-component-half: #f3f7ff77; --bg-component-alt: #ffd99c; --color: #031131; --color-alt: #7a9ad3; --main: #18597d; --main-fg: #fff; --error: red; --error-bg: hsl(0, 75%, 80%); } /* Box sizing rules */ +*, *::before, *::after { box-sizing: border-box; +} + +/* Remove default margin */ +body, h1, h2, h3, h4, p, figure, blockquote, dl, dd { margin: 0; } + +body { min-height: 100vh; text-rendering: optimizeSpeed; line-height: 1.5; font-size: 16px; font-family: 'Inter var', Helvetica, Arial, sans-serif; font-variation-settings: "slnt" 0; font-feature-settings: "case", "frac", "tnum", "ss02", "calt", "ccmp", "kern"; background: var(--bg); color: var(--color); display: flex; flex-direction: column; } + +.italic { font-variation-settings: "slnt" 10deg; } + +input, button, textarea, select { font: inherit; } + +h1 { font-size: 1.88rem; } +h2 { font-size: 1.66rem; } +h3 { font-size: 1.44rem; } +h4 { font-size: 1.22rem; } +h5 { font-size: 1.0rem; } + +.row { display: flex; } +.column { display: flex; flex-direction: column; } +.filler { flex-grow: 2; } diff --git a/public/assets/font.css b/public/assets/font.css new file mode 100644 index 0000000..8530e37 --- /dev/null +++ b/public/assets/font.css @@ -0,0 +1,13 @@ + +/* + ===================== Large assets ===================== +*/ + +@font-face { + font-family: 'Inter var'; + font-weight: 100 900; + font-display: swap; + font-style: oblique 0deg 10deg; + /* src: url("Inter.var.woff2?v=3.19") format("woff2");*/ + src: url(data:font/truetype;charset=utf-8;base64,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) format("woff2"); +} diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..c1906c9 --- /dev/null +++ b/public/index.html @@ -0,0 +1,16 @@ + + + + + Filadelfia Streamer + + + + + + + +
+ + +