diff --git a/WS-node/app.js b/WS-node/app.js
index 3374e2b..665ae36 100644
--- a/WS-node/app.js
+++ b/WS-node/app.js
@@ -5,7 +5,6 @@ var WebSocketServer = require('websocket').server;
var http = require('http');
var HttpDispatcher = require('httpdispatcher');
-var nexmoApp = require('./nexmo-app')
var dispatcher = new HttpDispatcher();
const fs = require('fs');
const winston = require('winston')
@@ -16,6 +15,7 @@ var myAsrClient;
var engineStartedMs;
var connections = []
+
//Create a server
var server = http.createServer(function(req, res) {
handleRequest(req,res);
@@ -26,7 +26,7 @@ var io = require('socket.io').listen(server);
// When a client connects, we note it in the console
io.sockets.on('connection', function (socket) {
- console.log('info','A client is connected!');
+ winston.log('info','A client is connected!');
});
@@ -41,7 +41,7 @@ var wsServer = new WebSocketServer({
function handleRequest(request, response){
try {
//log the request on console
- console.log('info', 'handleRequest',request.url);
+ winston.log('info', 'handleRequest',request.url);
//Dispatch
dispatcher.dispatch(request, response);
} catch(err) {
@@ -51,10 +51,10 @@ function handleRequest(request, response){
dispatcher.setStatic('/public');
dispatcher.setStaticDirname('public');
dispatcher.onGet("/", function(req, res) {
- console.log('info', 'loading index');
- console.log('info', 'port', process.env.PORT)
+ winston.log('info', 'loading index');
+ winston.log('info', 'port', process.env.PORT)
fs.readFile('./public/index.html', 'utf-8', function(error, content) {
- console.log('debug', 'loading Index');
+ winston.log('debug', 'loading Index');
res.writeHead(200, {"Content-Type": "text/html"});
res.end(content);
});
@@ -62,107 +62,84 @@ dispatcher.onGet("/", function(req, res) {
// Serve the ncco
dispatcher.onGet("/ncco", function(req, res) {
fs.readFile('./ncco.json', function(error, data) {
- console.log('debug', 'loading ncco');
+ winston.log('debug', 'loading ncco');
res.writeHead(200, { 'Content-Type': 'application/json' });
res.end(data, 'utf-8');
});
});
dispatcher.onPost("/terminate", function(req, res) {
- console.log('info', 'terminate called');
+ winston.log('info', 'terminate called');
wsServer.closeAllConnections();
res.writeHead(200, { 'Content-Type': 'application/json' });
res.end();
});
-
-dispatcher.onGet("/answer", function(req, res) {
- return nexmoApp.answer(req, res)
-
-});
-
-dispatcher.onGet("/conference", function(req, res) {
- return nexmoApp.conference(req, res)
-});
-
-dispatcher.onGet("/events_ivr", function(req, res) {
- return nexmoApp.events_ivr(req, res)
-});
-
-dispatcher.onPost("/events", function(req, res) {
- return nexmoApp.events(req, res)
-});
-
-dispatcher.onPost("/events-ws", function(req, res) {
- return nexmoApp.eventsWS(req, res)
-});
-
-
-
wsServer.on('connect', function(connection) {
connections.push(connection);
- console.log('info', (new Date()) + ' Connection accepted' + ' - Protocol Version ' + connection.webSocketVersion);
+ winston.log('info', (new Date()) + ' Connection accepted' + ' - Protocol Version ' + connection.webSocketVersion);
connection.on('message', function(message) {
if (message.type === 'utf8') {
try {
var json = JSON.parse(message.utf8Data);
- console.log('info', "json", json['app']);
+ winston.log('info', "json", json['app']);
if (json['app'] == "audiosocket") {
VBConnect();
- console.log('info', 'connecting to VB');
+ winston.log('info', 'connecting to VB');
}
} catch (e) {
- console.log('error', 'message error catch', e)
+ winston.log('error', 'message error catch', e)
}
- console.log('info', "utf ",message.utf8Data);
+ winston.log('info', "utf ",message.utf8Data);
}
else if (message.type === 'binary') {
// Reflect the message back
// connection.sendBytes(message.binaryData);
if (myAsrClient != null && asrActive) {
- myAsrClient.sendData(message.binaryData)
+ winston.log('debug', "sendingDate ",message.binaryData);
+ myAsrClient.onAudio(message.binaryData)
}
}
});
connection.on('close', function(reasonCode, description) {
- console.log('info', (new Date()) + ' Peer ' + connection.remoteAddress + ' disconnected.');
+ winston.log('info', (new Date()) + ' Peer ' + connection.remoteAddress + ' disconnected.');
wsServer.closeAllConnections();
});
});
wsServer.on('close', function(connection) {
- console.log('info', 'socket closed');
+ winston.log('info', 'socket closed');
if (asrActive) {
io.sockets.emit('status', "disconnected");
- console.log('info', 'trying to close ASR client');
- myAsrClient.close();
+ winston.log('info', 'trying to close ASR client');
+ myAsrClient.endOfAudio();
myAsrClient = null;
asrActive = false;
}
else {
- console.log('info', 'asr not active, cant close');
+ winston.log('info', 'asr not active, cant close');
}
})
wsServer.on('error', function(error) {
- console.log('error', 'Websocket error', error);
+ winston.log('error', 'Websocket error', error);
})
var port = process.env.PORT || 8000
server.listen(port, function(){
- console.log('info', "Server listening on :%s", port);
+ winston.log('info', "Server listening on :%s", port);
});
function VBConnect() {
- console.log('debug', 'load AsrClient');
+ winston.log('debug', 'load AsrClient');
myAsrClient = new AsrClient()
var url = process.env.ASR_URL;
client_key = process.env.ASR_CLIENT_KEY;
@@ -177,42 +154,42 @@ function VBConnect() {
controlMessage.sampleRate = '16000'
controlMessage.windowSize = 10
myAsrClient.reserveAsr(controlMessage)
- console.log('debug', "sending control message", controlMessage);
+ winston.log('debug', "sending control message", controlMessage);
myAsrClient.subscribeEvent('engineState', (msg) => {
- console.log('info', 'Engine State Event', msg)
+ winston.log('info', 'Engine State Event', msg)
if (msg === 'ready') {
asrActive = true
engineStartedMs = Date.now()
- console.log('info', 'Setting asrActive to true: ', asrActive, ' this.asrActive ', this.asrActive)
+ winston.log('info', 'Setting asrActive to true: ', asrActive, ' this.asrActive ', this.asrActive)
io.sockets.emit('status', "connected");
}
})
myAsrClient.subscribeEvent('transcript', (msg) => {
- console.log('debug', 'transcript', msg);
+ winston.log('debug', 'transcript', msg);
io.sockets.emit('transcript', msg);
})
myAsrClient.subscribeEvent('sentiment', (msg) => {
- console.log('debug', 'sentiment', msg);
+ winston.log('debug', 'sentiment', msg);
io.sockets.emit('sentiment', msg);
})
myAsrClient.subscribeEvent('nlp', (msg) => {
- console.log('debug', 'nlp', msg);
+ winston.log('debug', 'nlp', msg);
io.sockets.emit('nlp', msg);
})
myAsrClient.subscribeEvent('keywords', (msg) => {
- console.log('info', 'keywords', msg);
+ winston.log('info', 'keywords', msg);
io.sockets.emit('keywords', msg);
})
myAsrClient.subscribeEvent('latency', (msg) => {
- console.log('info', 'latency', msg);
+ winston.log('info', 'latency', msg);
io.sockets.emit('latency', msg);
})
})
diff --git a/WS-node/lib/asrClient.js b/WS-node/lib/asrClient.js
old mode 100644
new mode 100755
index 45000e3..730f1a7
--- a/WS-node/lib/asrClient.js
+++ b/WS-node/lib/asrClient.js
@@ -72,14 +72,15 @@ function AsrClient () {
self.emit('engineState', msg) // ready means start streaming
})
- self.socket.on('sentiment estimate', (msg) => {
- let x = JSON.parse(msg)
- console.log("sentiment", x)
+ self.socket.on('sentiment event', (msg) => {
+ let x = JSON.parse(msg)[0]
+ console.log('sentiment: ', x)
self.emit('sentiment', x)
})
self.socket.on('basic keywords event', (msg) => {
let x = JSON.parse(msg)
+ console.log('basic keywords event: ', x)
self.emit('keywords', x)
})
@@ -140,8 +141,7 @@ function AsrClient () {
text = text + ' ' + item.w
})
var re = /<\/s> /gi
- // text = text.replace(re, '... ')
- text = text.replace(re, '
')
+ text = text.replace(re, '... ')
self.emit('transcript', text)
} else {
console.log('Empty transcript event!')
@@ -195,14 +195,6 @@ function AsrClient () {
callback(null)
})
}
-
- self.sendData = function(data) {
- self.onAudio(data);
- }
-
- self.close = function() {
- self.endOfAudio()
- }
}
AsrClient.prototype.convertFloat32ToInt16 = (buffer) => {
@@ -214,4 +206,4 @@ AsrClient.prototype.convertFloat32ToInt16 = (buffer) => {
return buf.buffer
}
-module.exports = AsrClient
\ No newline at end of file
+module.exports = AsrClient
diff --git a/WS-node/nexmo-app.js b/WS-node/nexmo-app.js
deleted file mode 100644
index ee69f6a..0000000
--- a/WS-node/nexmo-app.js
+++ /dev/null
@@ -1,363 +0,0 @@
-require('dotenv').config()
-
-var Nexmo = require('nexmo');
-var Promise = require('bluebird');
-
-var executed = false;
-var didStart = false
-var USER_NUMBER = ""
-var WEB_SOCKET = 'ws://' + process.env.WEB_SOCKET_URL + '/socket';
-
-var SMS_TEXT = "View the transcription service here: " + "http://" + process.env.WEB_SOCKET_URL;
-var converstationIDs = [];
-var connectedUsers = [];
-
-var nexmo = new Nexmo({
- apiKey: process.env.API_KEY,
- apiSecret: process.env.API_SECRET,
- applicationId: process.env.APPLICATION_ID,
- privateKey: __dirname + '/' + process.env.PRIVATE_KEY_PATH
-},
- { debug: process.env.NEXMO_DEBUG }
-);
-
-var calls = Promise.promisifyAll(nexmo.calls);
-
-
-
-const answer = (req, res) => {
- console.log('info', 'answer route called', req.body);
- reset()
- var url = require('url');
- var url_parts = url.parse(req.url, true);
- var query = url_parts.query;
-
- connectedUsers.push(query.from);
- console.log('debug', 'adding user to sms list', connectedUsers);
- if (process.env.SINGLE_USER) {
- console.log('debug', 'In single user mode');
- var json = [
- {
- "action": "connect",
- "eventUrl": [
- "http://" + req.headers.host + "/events-ws"
- ],
- "from": process.env.NEXMO_NUMBER,
- "endpoint": [
- {
- "type": "websocket",
- "uri": WEB_SOCKET,
- "content-type": "audio/l16;rate=16000",
- "headers": {
- "app": "audiosocket"
- }
- }
- ]
- }
- ]
- console.log('info', 'conference JSON', json);
- res.writeHead(200, { 'Content-Type': 'application/json' });
- res.end(JSON.stringify(json));
- return
- }
-
- if (process.env.TO_NUMBER) {
- var json = [
- {
- "action": "talk",
- "text": "Calling user"
- },
- {
- "action": "conversation",
- "name": process.env.CONFERENCE_NAME,
- "endOnExit": "true"
- }
- ]
-
- var to = {
- type: 'phone',
- number: process.env.TO_NUMBER,
- }
- console.log('info', 'answer JSON', json);
- dial(to, process.env.NEXMO_NUMBER, req.headers.host, function (result) {
- console.log('info', 'dial result', result);
- res.writeHead(200, { 'Content-Type': 'application/json' });
- res.end(JSON.stringify(json));
- })
-
- } else {
- var baseURL = "http://" + req.headers.host;
- var json = [
- {
- "action": "talk",
- "text": "Please enter a phone number to call, press the pound key when complete",
- "bargeIn": "false"
- },
- {
- "action": "input",
- "submitOnHash": true,
- "timeOut": 60,
- "maxDigits": 20,
- "eventUrl": [baseURL + "/events_ivr"]
- },
- {
- "action": "conversation",
- "name": process.env.CONFERENCE_NAME,
- "endOnExit": "true",
- }
- ]
-
- console.log('info', 'answer JSON', json);
- res.writeHead(200, { 'Content-Type': 'application/json' });
- res.end(JSON.stringify(json));
- }
-}
-
-
-const conference = (req, res) => {
- var url = require('url');
- var url_parts = url.parse(req.url, true);
- var query = url_parts.query;
- var json = [
- {
- "action": "talk",
- "text": "Dialing into the conference now",
- },
- {
- "action": "conversation",
- "name": process.env.CONFERENCE_NAME,
- "startOnEnter": "false"
- }
- ]
- console.log('info', 'conference JSON', json);
- // res.send(json)
- res.writeHead(200, { 'Content-Type': 'application/json' });
- res.end(JSON.stringify(json));
-}
-
-
-
-const events_ivr = (req, res) => {
- console.log('info', 'events_ivr', req.body);
-
- var baseURL = req.headers.host;
- var number = req.body.dtmf;
- var from = req.body.from;
-
- USER_NUMBER = number
-
- if (number == '' || number.length < 11) {
- console.log('debug', 'could not get dtmf number', number);
- var json = [
- {
- "action": "talk",
- "text": "Sorry, I did not get that phone number. Goodbye"
- }
- ]
- res.writeHead(200, { 'Content-Type': 'application/json' });
- res.end(JSON.stringify(json));
- } else {
- var to = {
- type: 'phone',
- number: number,
- }
- dial(to, process.env.NEXMO_NUMBER, baseURL, function (result) {
- console.log('info', 'IVR Dial result', result);
- })
-
- res.writeHead(200, { 'Content-Type': 'application/json' });
- res.end(JSON.stringify(json));
- }
-
-};
-
-
-const events = (req, res) => {
- console.log('info', 'events', req.body);
-
- var baseURL = req.headers.host;
- req.body = JSON.parse(req.body);
-
- var from = req.body.from;
-
- if (req.body.status == "answered") {
- converstationIDs.push(req.body.uuid);
- console.log('debug', 'adding converstaion uuid', converstationIDs);
-
- if (req.body.to != process.env.NEXMO_NUMBER && req.body.to != WEB_SOCKET) {
- connectedUsers.push(req.body.to);
- console.log('debug', 'adding user to sms list', connectedUsers);
- }
-
- if (req.body.to == USER_NUMBER || req.body.to == process.env.TO_NUMBER) {
-
- var to = {
- type: 'websocket',
- uri: WEB_SOCKET,
- "content-type": "audio/l16;rate=16000",
- "headers": {
- "app": "audiosocket"
- }
- }
- console.log('debug', 'calling websocket', req.body);
- dial(to, from, baseURL, function (result) {
- console.log('debug', 'called websocket', result);
- sendAllSms(SMS_TEXT, function () {
- console.log('info', 'all sms sent');
- })
- })
- res.writeHead(200, { 'Content-Type': 'application/json' });
- res.end();
- return
-
- }
- }
- else if (req.body.status == "completed") {
- console.log('debug', 'called ended', req.body);
- console.log('debug', 'calling hangup');
- performHangup()
- }
- res.writeHead(200, { 'Content-Type': 'application/json' });
- res.end();
-};
-
-const eventsWS = (req, res) => {
- console.log('eventsWS', req.body);
-}
-
-var performHangup = (function () {
- return function () {
- console.log('debug', "executed " + executed + " didStart " + didStart)
- if (!executed && !didStart) {
- didStart = true
- hangupCalls(function () {
- executed = true;
- console.log('info', 'hangup complete');
- })
- }
- };
-})();
-
-process.on('unhandledRejection', (reason) => {
- console.log('error', 'unhandledRejection', reason)
-});
-
-function dial(to, from, serverURL, callback) {
- var json = {
- to: [to],
- from: {
- type: 'phone',
- number: from
- },
- answer_url: ['http://' + serverURL + '/conference'],
- event_url: ['http://' + serverURL + '/events', 'http://' + process.env.WEB_SOCKET_URL + '/events']
- }
- winston.debug('debug', 'dial JSON', json);
- calls.createAsync(json).then(function (res) {
- console.log('debug', 'call created', res)
- callback(res)
- })
-}
-
-function hangupCalls(callback) {
- Promise.each(converstationIDs, function (converstationID) {
- return new Promise(function (resolve, reject) {
- calls.updateAsync(converstationID, { action: 'hangup' })
- .then(function (resp) {
- setTimeout(function () {
- console.log('info', 'hangup result: for id: ' + converstationID, resp)
- resolve();
- }, 2000)
-
- })
- });
-
- })
- .then(function (allItems) {
- console.log('debug', 'all items', allItems)
- callback();
- })
-}
-
-function terminate(callback) {
- console.log('debug', 'calling terminate');
- var request = require('request');
- request({
- url: 'http://' + process.env.WEB_SOCKET_URL + '/terminate',
- method: 'POST',
- json: true,
- headers: { 'content-type': 'application/json' },
- }, (err, res, body) => {
- console.log('debug', 'terminate called');
- callback()
- })
-}
-
-function sendAllSms(message, callback) {
-
- Promise.each(connectedUsers, function (phoneNumber) {
- return new Promise(function (resolve, reject) {
- sendSMS(phoneNumber, SMS_TEXT, function (resp) {
- setTimeout(function () {
- console.log('info', 'sending sms to phoneNumber: ' + phoneNumber, resp)
- resolve();
- }, 1000)
- })
- });
- })
- .then(function (allItems) {
- console.log('debug', 'all items', allItems)
- callback();
- })
-}
-
-function sendSMS(phoneNumber, message, callback) {
- var https = require('https');
- var data = JSON.stringify({
- api_key: process.env.API_KEY,
- api_secret: process.env.API_SECRET,
- to: phoneNumber,
- from: process.env.NEXMO_NUMBER,
- text: message
- });
-
- var options = {
- host: 'rest.nexmo.com',
- path: '/sms/json',
- port: 443,
- method: 'POST',
- headers: {
- 'Content-Type': 'application/json',
- 'Content-Length': Buffer.byteLength(data)
- }
- };
-
- var req = https.request(options);
-
- req.write(data);
- req.end();
-
- var responseData = '';
- req.on('response', function (res) {
- res.on('data', function (chunk) {
- responseData += chunk;
- });
-
- res.on('end', function () {
- callback(JSON.parse(responseData))
- });
- });
-}
-
-function reset() {
- connectedUsers.length = 0
- converstationIDs.length = 0;
- executed = false;
- didStart = false
-}
-
-module.exports.answer = answer
-module.exports.conference = conference
-module.exports.events_ivr = events_ivr
-module.exports.events = events
-module.exports.eventsWS = eventsWS
\ No newline at end of file
diff --git a/WS-node/package-lock.json b/WS-node/package-lock.json
index 8a419b6..817a295 100644
--- a/WS-node/package-lock.json
+++ b/WS-node/package-lock.json
@@ -5,11 +5,11 @@
"requires": true,
"dependencies": {
"accepts": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
- "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=",
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz",
+ "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=",
"requires": {
- "mime-types": "2.1.18",
+ "mime-types": "2.1.14",
"negotiator": "0.6.1"
}
},
@@ -18,16 +18,15 @@
"resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
"integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8="
},
- "ajv": {
- "version": "5.5.2",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
- "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
- "requires": {
- "co": "4.6.0",
- "fast-deep-equal": "1.1.0",
- "fast-json-stable-stringify": "2.0.0",
- "json-schema-traverse": "0.3.1"
- }
+ "ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
+ },
+ "ansi-styles": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
},
"array-flatten": {
"version": "1.1.1",
@@ -45,9 +44,9 @@
"integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y="
},
"assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
+ "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ="
},
"async": {
"version": "1.0.0",
@@ -65,14 +64,14 @@
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
},
"aws-sign2": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
- "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg="
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
+ "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8="
},
"aws4": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz",
- "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w=="
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz",
+ "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4="
},
"backo2": {
"version": "1.0.2",
@@ -111,57 +110,40 @@
"resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
"integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE="
},
- "bluebird": {
- "version": "3.5.1",
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
- "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA=="
- },
- "body-parser": {
- "version": "1.18.2",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz",
- "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
+ "boom": {
+ "version": "2.10.1",
+ "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
+ "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
"requires": {
- "bytes": "3.0.0",
- "content-type": "1.0.4",
- "debug": "2.6.9",
- "depd": "1.1.2",
- "http-errors": "1.6.3",
- "iconv-lite": "0.4.19",
- "on-finished": "2.3.0",
- "qs": "6.5.1",
- "raw-body": "2.3.2",
- "type-is": "1.6.16"
+ "hoek": "2.16.3"
}
},
- "buffer-equal-constant-time": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
- "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk="
- },
"buffer-to-arraybuffer": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.4.tgz",
"integrity": "sha1-8+Xj9vJjLHHnzevnbtFxj61CHUw="
},
- "bytes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
- "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg="
- },
"callsite": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
"integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA="
},
"caseless": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
- "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
- },
- "co": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
- "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ="
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz",
+ "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c="
+ },
+ "chalk": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+ "requires": {
+ "ansi-styles": "2.2.1",
+ "escape-string-regexp": "1.0.5",
+ "has-ansi": "2.0.0",
+ "strip-ansi": "3.0.1",
+ "supports-color": "2.0.0"
+ }
},
"colors": {
"version": "1.0.3",
@@ -169,22 +151,30 @@
"integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs="
},
"combined-stream": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
- "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz",
+ "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=",
"requires": {
"delayed-stream": "1.0.0"
}
},
+ "commander": {
+ "version": "2.9.0",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz",
+ "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=",
+ "requires": {
+ "graceful-readlink": "1.0.1"
+ }
+ },
"component-bind": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
"integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E="
},
"component-emitter": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
- "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY="
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz",
+ "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM="
},
"component-inherit": {
"version": "0.0.3",
@@ -197,9 +187,9 @@
"integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ="
},
"content-type": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
- "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.2.tgz",
+ "integrity": "sha1-t9ETrueo3Se9IRM8TcJSnfFyHu0="
},
"cookie": {
"version": "0.3.1",
@@ -211,10 +201,13 @@
"resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
},
- "core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
+ "cryptiles": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
+ "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
+ "requires": {
+ "boom": "2.10.1"
+ }
},
"cycle": {
"version": "1.0.3",
@@ -227,14 +220,21 @@
"integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
"requires": {
"assert-plus": "1.0.0"
+ },
+ "dependencies": {
+ "assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
+ }
}
},
"debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.1.tgz",
+ "integrity": "sha1-eYVQkLosTjEVzH2HaUkdWPBJE1E=",
"requires": {
- "ms": "2.0.0"
+ "ms": "0.7.2"
}
},
"delayed-stream": {
@@ -243,9 +243,9 @@
"integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
},
"depd": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
- "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.0.tgz",
+ "integrity": "sha1-4b2Cxqq2ztlluXuIsX7T5SjKGMM="
},
"destroy": {
"version": "1.0.4",
@@ -266,23 +266,15 @@
"jsbn": "0.1.1"
}
},
- "ecdsa-sig-formatter": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.10.tgz",
- "integrity": "sha1-HFlQAPBKiJffuFAAiSoPTDOvhsM=",
- "requires": {
- "safe-buffer": "5.1.1"
- }
- },
"ee-first": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
},
"encodeurl": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.1.tgz",
+ "integrity": "sha1-eePVhlU0aQn+bw9Fpd5oEDspTSA="
},
"engine.io": {
"version": "3.2.0",
@@ -297,6 +289,15 @@
"ws": "3.3.3"
},
"dependencies": {
+ "accepts": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
+ "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=",
+ "requires": {
+ "mime-types": "2.1.19",
+ "negotiator": "0.6.1"
+ }
+ },
"arraybuffer.slice": {
"version": "0.0.7",
"resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
@@ -322,6 +323,29 @@
"has-binary2": "1.0.3"
}
},
+ "mime-db": {
+ "version": "1.35.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz",
+ "integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg=="
+ },
+ "mime-types": {
+ "version": "2.1.19",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz",
+ "integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==",
+ "requires": {
+ "mime-db": "1.35.0"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
+ },
"ultron": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz",
@@ -333,16 +357,16 @@
"integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==",
"requires": {
"async-limiter": "1.0.0",
- "safe-buffer": "5.1.1",
+ "safe-buffer": "5.1.2",
"ultron": "1.1.1"
}
}
}
},
"engine.io-client": {
- "version": "1.8.5",
- "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.5.tgz",
- "integrity": "sha512-AYTgHyeVUPitsseqjoedjhYJapNVoSPShbZ+tEUX9/73jgZ/Z3sUlJf9oYgdEBBdVhupUpUqSxH0kBCXlQnmZg==",
+ "version": "1.8.3",
+ "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.3.tgz",
+ "integrity": "sha1-F5jtk0USRkU9TG9jXXogH+lA1as=",
"requires": {
"component-emitter": "1.2.1",
"component-inherit": "0.0.3",
@@ -353,11 +377,16 @@
"parsejson": "0.0.3",
"parseqs": "0.0.5",
"parseuri": "0.0.5",
- "ws": "1.1.5",
+ "ws": "1.1.2",
"xmlhttprequest-ssl": "1.5.3",
"yeast": "0.1.2"
},
"dependencies": {
+ "component-emitter": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
+ "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY="
+ },
"debug": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
@@ -365,11 +394,6 @@
"requires": {
"ms": "0.7.2"
}
- },
- "ms": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
- "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U="
}
}
},
@@ -391,84 +415,84 @@
"resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
"integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
},
+ "escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
+ },
"etag": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
- "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc="
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.0.tgz",
+ "integrity": "sha1-b2Ma7zNtbEY2K1F2QETOIWvjwFE="
},
"express": {
- "version": "4.16.3",
- "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz",
- "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=",
+ "version": "4.15.2",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.15.2.tgz",
+ "integrity": "sha1-rxB/wUhQRFfy3Kmm8lcdcSm5ezU=",
"requires": {
- "accepts": "1.3.5",
+ "accepts": "1.3.3",
"array-flatten": "1.1.1",
- "body-parser": "1.18.2",
"content-disposition": "0.5.2",
- "content-type": "1.0.4",
+ "content-type": "1.0.2",
"cookie": "0.3.1",
"cookie-signature": "1.0.6",
- "debug": "2.6.9",
- "depd": "1.1.2",
- "encodeurl": "1.0.2",
+ "debug": "2.6.1",
+ "depd": "1.1.0",
+ "encodeurl": "1.0.1",
"escape-html": "1.0.3",
- "etag": "1.8.1",
- "finalhandler": "1.1.1",
- "fresh": "0.5.2",
+ "etag": "1.8.0",
+ "finalhandler": "1.0.0",
+ "fresh": "0.5.0",
"merge-descriptors": "1.0.1",
"methods": "1.1.2",
"on-finished": "2.3.0",
- "parseurl": "1.3.2",
+ "parseurl": "1.3.1",
"path-to-regexp": "0.1.7",
- "proxy-addr": "2.0.3",
- "qs": "6.5.1",
+ "proxy-addr": "1.1.3",
+ "qs": "6.4.0",
"range-parser": "1.2.0",
- "safe-buffer": "5.1.1",
- "send": "0.16.2",
- "serve-static": "1.13.2",
- "setprototypeof": "1.1.0",
- "statuses": "1.4.0",
- "type-is": "1.6.16",
- "utils-merge": "1.0.1",
- "vary": "1.1.2"
+ "send": "0.15.1",
+ "serve-static": "1.12.1",
+ "setprototypeof": "1.0.3",
+ "statuses": "1.3.1",
+ "type-is": "1.6.14",
+ "utils-merge": "1.0.0",
+ "vary": "1.1.0"
+ },
+ "dependencies": {
+ "qs": {
+ "version": "6.4.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz",
+ "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM="
+ }
}
},
"extend": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
- "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ="
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz",
+ "integrity": "sha1-WkdDU7nzNT3dgXbf03uRyDpG8dQ="
},
"extsprintf": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
- "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz",
+ "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA="
},
"eyes": {
"version": "0.1.8",
"resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz",
"integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A="
},
- "fast-deep-equal": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
- "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ="
- },
- "fast-json-stable-stringify": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
- "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I="
- },
"finalhandler": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
- "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.0.0.tgz",
+ "integrity": "sha1-tWkcLAkSCS8YrCPpQWveXNfcZ1U=",
"requires": {
- "debug": "2.6.9",
- "encodeurl": "1.0.2",
+ "debug": "2.6.1",
+ "encodeurl": "1.0.1",
"escape-html": "1.0.3",
"on-finished": "2.3.0",
- "parseurl": "1.3.2",
- "statuses": "1.4.0",
+ "parseurl": "1.3.1",
+ "statuses": "1.3.1",
"unpipe": "1.0.0"
}
},
@@ -478,45 +502,75 @@
"integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
},
"form-data": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz",
- "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.2.tgz",
+ "integrity": "sha1-icNTQAi5fq2ky7FX1Y9vXfAl6uQ=",
"requires": {
"asynckit": "0.4.0",
- "combined-stream": "1.0.6",
- "mime-types": "2.1.18"
+ "combined-stream": "1.0.5",
+ "mime-types": "2.1.14"
}
},
"forwarded": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
- "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ="
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.0.tgz",
+ "integrity": "sha1-Ge+YdMSuHCl7zweP3mOgm2aoQ2M="
},
"fresh": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
- "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.0.tgz",
+ "integrity": "sha1-9HTKXmqSRtb9jglTz6m5yAWvp44="
+ },
+ "generate-function": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
+ "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ="
+ },
+ "generate-object-property": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
+ "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
+ "requires": {
+ "is-property": "1.0.2"
+ }
},
"getpass": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
- "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.6.tgz",
+ "integrity": "sha1-KD/9n8ElaECHUxHBtg6MQBhxEOY=",
"requires": {
"assert-plus": "1.0.0"
+ },
+ "dependencies": {
+ "assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
+ }
}
},
- "har-schema": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
- "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI="
+ "graceful-readlink": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz",
+ "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU="
},
"har-validator": {
- "version": "5.0.3",
- "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz",
- "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz",
+ "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=",
"requires": {
- "ajv": "5.5.2",
- "har-schema": "2.0.0"
+ "chalk": "1.1.3",
+ "commander": "2.9.0",
+ "is-my-json-valid": "2.16.0",
+ "pinkie-promise": "2.0.1"
+ }
+ },
+ "has-ansi": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
+ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
+ "requires": {
+ "ansi-regex": "2.1.1"
}
},
"has-binary": {
@@ -547,45 +601,56 @@
"resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
"integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk="
},
+ "hawk": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
+ "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
+ "requires": {
+ "boom": "2.10.1",
+ "cryptiles": "2.0.5",
+ "hoek": "2.16.3",
+ "sntp": "1.0.9"
+ }
+ },
+ "hoek": {
+ "version": "2.16.3",
+ "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
+ "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0="
+ },
"http": {
"version": "0.0.0",
"resolved": "https://registry.npmjs.org/http/-/http-0.0.0.tgz",
"integrity": "sha1-huYybSnF0Dnen6xYSkVon5KfT3I="
},
"http-errors": {
- "version": "1.6.3",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
- "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.1.tgz",
+ "integrity": "sha1-X4uO2YrKVFZWv1cplzh/kEpyIlc=",
"requires": {
- "depd": "1.1.2",
+ "depd": "1.1.0",
"inherits": "2.0.3",
- "setprototypeof": "1.1.0",
- "statuses": "1.4.0"
+ "setprototypeof": "1.0.3",
+ "statuses": "1.3.1"
}
},
"http-signature": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
- "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
+ "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
"requires": {
- "assert-plus": "1.0.0",
- "jsprim": "1.4.1",
- "sshpk": "1.14.1"
+ "assert-plus": "0.2.0",
+ "jsprim": "1.3.1",
+ "sshpk": "1.11.0"
}
},
"httpdispatcher": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/httpdispatcher/-/httpdispatcher-2.1.2.tgz",
- "integrity": "sha1-wfLIpR2h8vpdCyAxQ3UW0hg3wik=",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/httpdispatcher/-/httpdispatcher-2.0.1.tgz",
+ "integrity": "sha1-FqbT9dB9ddDdD4l27S2Bx1hSe7k=",
"requires": {
- "mime-types": "2.1.18"
+ "mime": "1.3.4"
}
},
- "iconv-lite": {
- "version": "0.4.19",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
- "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ=="
- },
"indexof": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
@@ -597,9 +662,25 @@
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
},
"ipaddr.js": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz",
- "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs="
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.2.0.tgz",
+ "integrity": "sha1-irpJyRknmVhb3WQ+DMtQ6K53e6Q="
+ },
+ "is-my-json-valid": {
+ "version": "2.16.0",
+ "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz",
+ "integrity": "sha1-8Hndm/2uZe4gOKrorLyGqxCeNpM=",
+ "requires": {
+ "generate-function": "2.0.0",
+ "generate-object-property": "1.2.0",
+ "jsonpointer": "4.0.1",
+ "xtend": "4.0.1"
+ }
+ },
+ "is-property": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
+ "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ="
},
"is-typedarray": {
"version": "1.0.0",
@@ -616,6 +697,15 @@
"resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
"integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
},
+ "jodid25519": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/jodid25519/-/jodid25519-1.0.2.tgz",
+ "integrity": "sha1-BtSRIlUJNBlHfUJWM2BuDpB4KWc=",
+ "optional": true,
+ "requires": {
+ "jsbn": "0.1.1"
+ }
+ },
"jsbn": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
@@ -627,11 +717,6 @@
"resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
"integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM="
},
- "json-schema-traverse": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
- "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A="
- },
"json-stringify-safe": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
@@ -642,95 +727,21 @@
"resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz",
"integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE="
},
- "jsonwebtoken": {
- "version": "8.2.1",
- "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.2.1.tgz",
- "integrity": "sha512-l8rUBr0fqYYwPc8/ZGrue7GiW7vWdZtZqelxo4Sd5lMvuEeCK8/wS54sEo6tJhdZ6hqfutsj6COgC0d1XdbHGw==",
- "requires": {
- "jws": "3.1.5",
- "lodash.includes": "4.3.0",
- "lodash.isboolean": "3.0.3",
- "lodash.isinteger": "4.0.4",
- "lodash.isnumber": "3.0.3",
- "lodash.isplainobject": "4.0.6",
- "lodash.isstring": "4.0.1",
- "lodash.once": "4.1.1",
- "ms": "2.1.1",
- "xtend": "4.0.1"
- },
- "dependencies": {
- "ms": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
- "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg=="
- }
- }
+ "jsonpointer": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz",
+ "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk="
},
"jsprim": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
- "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.3.1.tgz",
+ "integrity": "sha1-KnJW9wQSop7jZwqspiWZTE3P8lI=",
"requires": {
- "assert-plus": "1.0.0",
- "extsprintf": "1.3.0",
+ "extsprintf": "1.0.2",
"json-schema": "0.2.3",
- "verror": "1.10.0"
+ "verror": "1.3.6"
}
},
- "jwa": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.1.6.tgz",
- "integrity": "sha512-tBO/cf++BUsJkYql/kBbJroKOgHWEigTKBAjjBEmrMGYd1QMBC74Hr4Wo2zCZw6ZrVhlJPvoMrkcOnlWR/DJfw==",
- "requires": {
- "buffer-equal-constant-time": "1.0.1",
- "ecdsa-sig-formatter": "1.0.10",
- "safe-buffer": "5.1.1"
- }
- },
- "jws": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/jws/-/jws-3.1.5.tgz",
- "integrity": "sha512-GsCSexFADNQUr8T5HPJvayTjvPIfoyJPtLQBwn5a4WZQchcrPMPMAWcC1AzJVRDKyD6ZPROPAxgv6rfHViO4uQ==",
- "requires": {
- "jwa": "1.1.6",
- "safe-buffer": "5.1.1"
- }
- },
- "lodash.includes": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz",
- "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8="
- },
- "lodash.isboolean": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz",
- "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY="
- },
- "lodash.isinteger": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz",
- "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M="
- },
- "lodash.isnumber": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz",
- "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w="
- },
- "lodash.isplainobject": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
- "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs="
- },
- "lodash.isstring": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz",
- "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE="
- },
- "lodash.once": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz",
- "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w="
- },
"media-typer": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
@@ -747,55 +758,38 @@
"integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
},
"mime": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
- "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ=="
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz",
+ "integrity": "sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM="
},
"mime-db": {
- "version": "1.33.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
- "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ=="
+ "version": "1.26.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.26.0.tgz",
+ "integrity": "sha1-6v/NDk/Gk1z4E02iRuLmw1MFrf8="
},
"mime-types": {
- "version": "2.1.18",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
- "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
+ "version": "2.1.14",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.14.tgz",
+ "integrity": "sha1-9+99l1g/yvO30oK2+LVnnaselO4=",
"requires": {
- "mime-db": "1.33.0"
+ "mime-db": "1.26.0"
}
},
"ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
+ "version": "0.7.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
+ "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U="
},
"nan": {
- "version": "2.10.0",
- "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
- "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA=="
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.5.1.tgz",
+ "integrity": "sha1-1bAWkSUzJql6K77p5hxV2NYDUeI="
},
"negotiator": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
"integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk="
},
- "nexmo": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/nexmo/-/nexmo-2.2.1.tgz",
- "integrity": "sha512-Gr6uSxvVVMJy3gJE/HznkgkxbstwOZbG03t6Ln8ehcgNkY2GrU0vsP4ZdadGuxfgTJ3oZHvijXAYBpb3d2W3XA==",
- "requires": {
- "jsonwebtoken": "8.2.1",
- "request": "2.87.0",
- "uuid": "2.0.3"
- },
- "dependencies": {
- "uuid": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
- "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho="
- }
- }
- },
"oauth-sign": {
"version": "0.8.2",
"resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
@@ -844,27 +838,35 @@
}
},
"parseurl": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz",
- "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M="
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.1.tgz",
+ "integrity": "sha1-yKuMkiO6NIiKpkopeyiFO+wY2lY="
},
"path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
"integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
},
- "performance-now": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
- "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
+ "pinkie": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
+ "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA="
+ },
+ "pinkie-promise": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
+ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
+ "requires": {
+ "pinkie": "2.0.4"
+ }
},
"proxy-addr": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz",
- "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==",
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.1.3.tgz",
+ "integrity": "sha1-3JdQL1ci6IhGez+iKXp7H/R98HQ=",
"requires": {
- "forwarded": "0.1.2",
- "ipaddr.js": "1.6.0"
+ "forwarded": "0.1.0",
+ "ipaddr.js": "1.2.0"
}
},
"punycode": {
@@ -873,116 +875,85 @@
"integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4="
},
"qs": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz",
- "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A=="
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.1.tgz",
+ "integrity": "sha1-kYwLO802Z5dyuvE1say0wWUe150="
},
"range-parser": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz",
"integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4="
},
- "raw-body": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz",
- "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=",
- "requires": {
- "bytes": "3.0.0",
- "http-errors": "1.6.2",
- "iconv-lite": "0.4.19",
- "unpipe": "1.0.0"
- },
- "dependencies": {
- "depd": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz",
- "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k="
- },
- "http-errors": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz",
- "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
- "requires": {
- "depd": "1.1.1",
- "inherits": "2.0.3",
- "setprototypeof": "1.0.3",
- "statuses": "1.4.0"
- }
- },
- "setprototypeof": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
- "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
- }
- }
- },
"request": {
- "version": "2.87.0",
- "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz",
- "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==",
+ "version": "2.79.0",
+ "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz",
+ "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=",
"requires": {
- "aws-sign2": "0.7.0",
- "aws4": "1.7.0",
- "caseless": "0.12.0",
- "combined-stream": "1.0.6",
- "extend": "3.0.1",
+ "aws-sign2": "0.6.0",
+ "aws4": "1.6.0",
+ "caseless": "0.11.0",
+ "combined-stream": "1.0.5",
+ "extend": "3.0.0",
"forever-agent": "0.6.1",
- "form-data": "2.3.2",
- "har-validator": "5.0.3",
- "http-signature": "1.2.0",
+ "form-data": "2.1.2",
+ "har-validator": "2.0.6",
+ "hawk": "3.1.3",
+ "http-signature": "1.1.1",
"is-typedarray": "1.0.0",
"isstream": "0.1.2",
"json-stringify-safe": "5.0.1",
- "mime-types": "2.1.18",
+ "mime-types": "2.1.14",
"oauth-sign": "0.8.2",
- "performance-now": "2.1.0",
- "qs": "6.5.1",
- "safe-buffer": "5.1.1",
- "tough-cookie": "2.3.4",
- "tunnel-agent": "0.6.0",
- "uuid": "3.2.1"
+ "qs": "6.3.1",
+ "stringstream": "0.0.5",
+ "tough-cookie": "2.3.2",
+ "tunnel-agent": "0.4.3",
+ "uuid": "3.0.1"
}
},
- "safe-buffer": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
- "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
- },
"send": {
- "version": "0.16.2",
- "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
- "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==",
+ "version": "0.15.1",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.15.1.tgz",
+ "integrity": "sha1-igI1TCbm9cynAAZfXwzeupDse18=",
"requires": {
- "debug": "2.6.9",
- "depd": "1.1.2",
+ "debug": "2.6.1",
+ "depd": "1.1.0",
"destroy": "1.0.4",
- "encodeurl": "1.0.2",
+ "encodeurl": "1.0.1",
"escape-html": "1.0.3",
- "etag": "1.8.1",
- "fresh": "0.5.2",
- "http-errors": "1.6.3",
- "mime": "1.4.1",
- "ms": "2.0.0",
+ "etag": "1.8.0",
+ "fresh": "0.5.0",
+ "http-errors": "1.6.1",
+ "mime": "1.3.4",
+ "ms": "0.7.2",
"on-finished": "2.3.0",
"range-parser": "1.2.0",
- "statuses": "1.4.0"
+ "statuses": "1.3.1"
}
},
"serve-static": {
- "version": "1.13.2",
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz",
- "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==",
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.12.1.tgz",
+ "integrity": "sha1-dEOpZePO1kes61Y5+ga/TRu+ADk=",
"requires": {
- "encodeurl": "1.0.2",
+ "encodeurl": "1.0.1",
"escape-html": "1.0.3",
- "parseurl": "1.3.2",
- "send": "0.16.2"
+ "parseurl": "1.3.1",
+ "send": "0.15.1"
}
},
"setprototypeof": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
- "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ=="
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
+ "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
+ },
+ "sntp": {
+ "version": "1.0.9",
+ "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
+ "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
+ "requires": {
+ "hoek": "2.16.3"
+ }
},
"socket.io": {
"version": "2.1.1",
@@ -1002,6 +973,11 @@
"resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
"integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog=="
},
+ "component-emitter": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
+ "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY="
+ },
"debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
@@ -1045,6 +1021,16 @@
"resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
"integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4="
},
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
+ },
"socket.io-client": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz",
@@ -1087,7 +1073,7 @@
"integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==",
"requires": {
"async-limiter": "1.0.0",
- "safe-buffer": "5.1.1",
+ "safe-buffer": "5.1.2",
"ultron": "1.1.1"
}
},
@@ -1104,15 +1090,15 @@
"integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs="
},
"socket.io-client": {
- "version": "1.7.4",
- "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-1.7.4.tgz",
- "integrity": "sha1-7J+CA1btme9tNX8HVtZIcXvdQoE=",
+ "version": "1.7.3",
+ "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-1.7.3.tgz",
+ "integrity": "sha1-sw6GqhDV7zVGYBwJzeR2Xjgdo3c=",
"requires": {
"backo2": "1.0.2",
"component-bind": "1.0.0",
"component-emitter": "1.2.1",
"debug": "2.3.3",
- "engine.io-client": "1.8.5",
+ "engine.io-client": "1.8.3",
"has-binary": "0.1.7",
"indexof": "0.0.1",
"object-component": "0.0.3",
@@ -1121,6 +1107,11 @@
"to-array": "0.1.4"
},
"dependencies": {
+ "component-emitter": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
+ "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY="
+ },
"debug": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
@@ -1128,11 +1119,6 @@
"requires": {
"ms": "0.7.2"
}
- },
- "ms": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
- "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U="
}
}
},
@@ -1147,11 +1133,6 @@
"json3": "3.3.2"
},
"dependencies": {
- "component-emitter": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz",
- "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM="
- },
"debug": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz",
@@ -1168,29 +1149,55 @@
}
},
"sshpk": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz",
- "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=",
+ "version": "1.11.0",
+ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.11.0.tgz",
+ "integrity": "sha1-LY1eu0pvqyj/ujf6YqkPSj6lnXc=",
"requires": {
"asn1": "0.2.3",
"assert-plus": "1.0.0",
"bcrypt-pbkdf": "1.0.1",
"dashdash": "1.14.1",
"ecc-jsbn": "0.1.1",
- "getpass": "0.1.7",
+ "getpass": "0.1.6",
+ "jodid25519": "1.0.2",
"jsbn": "0.1.1",
"tweetnacl": "0.14.5"
+ },
+ "dependencies": {
+ "assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
+ }
}
},
"stack-trace": {
- "version": "0.0.10",
- "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz",
- "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA="
+ "version": "0.0.9",
+ "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.9.tgz",
+ "integrity": "sha1-qPbq7KkGdMMz58Q5U/J1tFFRBpU="
},
"statuses": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
- "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew=="
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
+ "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4="
+ },
+ "stringstream": {
+ "version": "0.0.5",
+ "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz",
+ "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg="
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "requires": {
+ "ansi-regex": "2.1.1"
+ }
+ },
+ "supports-color": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
+ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
},
"to-array": {
"version": "0.1.4",
@@ -1198,20 +1205,17 @@
"integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA="
},
"tough-cookie": {
- "version": "2.3.4",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz",
- "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==",
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz",
+ "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=",
"requires": {
"punycode": "1.4.1"
}
},
"tunnel-agent": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
- "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
- "requires": {
- "safe-buffer": "5.1.1"
- }
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz",
+ "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us="
},
"tweetnacl": {
"version": "0.14.5",
@@ -1220,18 +1224,18 @@
"optional": true
},
"type-is": {
- "version": "1.6.16",
- "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz",
- "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==",
+ "version": "1.6.14",
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.14.tgz",
+ "integrity": "sha1-4hljnBfe0coHiQkt1UoDgmuBfLI=",
"requires": {
"media-typer": "0.3.0",
- "mime-types": "2.1.18"
+ "mime-types": "2.1.14"
}
},
"typedarray-to-buffer": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
- "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.2.tgz",
+ "integrity": "sha1-EBezLZhP9VbroQD1AViauhrOLgQ=",
"requires": {
"is-typedarray": "1.0.0"
}
@@ -1247,58 +1251,56 @@
"integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
},
"utils-merge": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
- "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz",
+ "integrity": "sha1-ApT7kiu5N1FTVBxPcJYjHyh8ivg="
},
"uuid": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz",
- "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA=="
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.0.1.tgz",
+ "integrity": "sha1-ZUS7ot/ajBzxfmKaOjBeK7H+5sE="
},
"vary": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
- "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.0.tgz",
+ "integrity": "sha1-4eWv+70WrnaN0mdDlLmtMCJlMUA="
},
"verror": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
- "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
+ "version": "1.3.6",
+ "resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz",
+ "integrity": "sha1-z/XfEpRtKX0rqu+qJoniW+AcAFw=",
"requires": {
- "assert-plus": "1.0.0",
- "core-util-is": "1.0.2",
- "extsprintf": "1.3.0"
+ "extsprintf": "1.0.2"
}
},
"websocket": {
- "version": "1.0.26",
- "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.26.tgz",
- "integrity": "sha512-fjcrYDPIQxpTnqFQ9JjxUQcdvR89MFAOjPBlF+vjOt49w/XW4fJknUoMz/mDIn2eK1AdslVojcaOxOqyZZV8rw==",
+ "version": "1.0.24",
+ "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.24.tgz",
+ "integrity": "sha1-dJA+dfJUW2suHeFCW8HJBZF6GJA=",
"requires": {
- "debug": "2.6.9",
- "nan": "2.10.0",
- "typedarray-to-buffer": "3.1.5",
+ "debug": "2.6.1",
+ "nan": "2.5.1",
+ "typedarray-to-buffer": "3.1.2",
"yaeti": "0.0.6"
}
},
"winston": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/winston/-/winston-2.4.2.tgz",
- "integrity": "sha512-4S/Ad4ZfSNl8OccCLxnJmNISWcm2joa6Q0YGDxlxMzH0fgSwWsjMt+SmlNwCqdpaPg3ev1HKkMBsIiXeSUwpbA==",
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/winston/-/winston-2.3.1.tgz",
+ "integrity": "sha1-C0hCDZeMAYBM8CMLZIhhWYIloRk=",
"requires": {
"async": "1.0.0",
"colors": "1.0.3",
"cycle": "1.0.3",
"eyes": "0.1.8",
"isstream": "0.1.2",
- "stack-trace": "0.0.10"
+ "stack-trace": "0.0.9"
}
},
"ws": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz",
- "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==",
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.2.tgz",
+ "integrity": "sha1-iiRPoFJAHgjJiGz0SoUYnh/UBn8=",
"requires": {
"options": "0.0.6",
"ultron": "1.0.2"
diff --git a/WS-node/package.json b/WS-node/package.json
index ed263ab..8b33826 100644
--- a/WS-node/package.json
+++ b/WS-node/package.json
@@ -3,20 +3,21 @@
"version": "1.0.0",
"description": "",
"scripts": {
- "test": "echo \"Error: no test specified\" && exit 1"
+ "start": "node app.js"
+ },
+ "engines": {
+ "node": "6.9.1"
},
"author": "",
"license": "ISC",
"dependencies": {
- "bluebird": "^3.5.1",
"buffer-to-arraybuffer": "0.0.4",
"dotenv": "^4.0.0",
"express": "^4.15.2",
"http": "0.0.0",
"httpdispatcher": "^2.0.1",
- "nexmo": "^2.2.1",
"request": "^2.79.0",
- "socket.io": "*",
+ "socket.io": "^2.1.1",
"socket.io-client": "^1.7.2",
"websocket": "^1.0.24",
"winston": "^2.3.1"
diff --git a/WS-node/public/index.html b/WS-node/public/index.html
index cad6e99..3429ddb 100644
--- a/WS-node/public/index.html
+++ b/WS-node/public/index.html
@@ -27,10 +27,10 @@