Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion hyco-https/lib/HybridConnectionHttpsServer.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@

const util = require('util');
const EventEmitter = require('events');
const crypto = require('crypto');
const WebSocket = require('ws');
const url = require('url');
const moment = require('moment');
Expand Down
4 changes: 0 additions & 4 deletions hyco-https/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,7 @@
"url": "https://github.com/Azure/azure-relay-node.git"
},
"dependencies": {
"crypto": "latest",
"events": "latest",
"https": "latest",
"moment": "^2.29.4",
"util": "latest",
"ws": "^5.2.4"
},
"gypfile": true,
Expand Down
1 change: 0 additions & 1 deletion hyco-websocket/lib/HybridConnectionsWebSocketRequest.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
* limitations under the License.
***********************************************************************/

var crypto = require('crypto');
var util = require('util');
var url = require('url');
var EventEmitter = require('events').EventEmitter;
Expand Down
6 changes: 1 addition & 5 deletions hyco-websocket/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,7 @@
},
"dependencies": {
"websocket": "latest",
"crypto": "latest",
"moment": "latest",
"url": "latest",
"events": "latest",
"querystring": "latest"
"moment": "latest"
},
"config": {
"verbose": false
Expand Down
76 changes: 76 additions & 0 deletions hyco-websocket/test/scripts/echo-client.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
#!/usr/bin/env node

var WebSocket = require('../..');
var readline = require('readline');

var args = { /* defaults */
ns : process.env.SB_HC_NAMESPACE,
path : process.env.SB_HC_PATH,
keyrule : process.env.SB_HC_KEYRULE,
key : process.env.SB_HC_KEY
};

/* Parse command line options */
var pattern = /^--(.*?)(?:=(.*))?$/;
process.argv.forEach(function(value) {
var match = pattern.exec(value);
if (match) {
args[match[1]] = match[2] ? match[2] : true;
}
});

var ns = args.ns;
var path = args.path;
var keyrule = args.keyrule;
var key = args.key;

if (ns == null || path == null || keyrule == null || key == null) {
console.log('Usage: ./echo-client.js [--ns=ns.servicebus.windows.net] [--path=path] [--keyrule=keyrule] [--key=key]');
process.exit(1);
}

var uri = WebSocket.createRelaySendUri(ns, path);
var token = WebSocket.createRelayToken(uri, keyrule, key);

var client = new WebSocket.client();
client.connect(WebSocket.appendRelayToken(uri, keyrule, key));

client.on('connect', function(connection) {
console.log('Connected to echo-server. Type a message and press Enter. Ctrl+C to quit.');

var rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});

connection.on('message', function(message) {
if (message.type === 'utf8') {
console.log('Echo: ' + message.utf8Data);
} else if (message.type === 'binary') {
console.log('Echo: (binary, ' + message.binaryData.length + ' bytes)');
}
});

connection.on('close', function() {
console.log('Connection closed.');
process.exit(0);
});

connection.on('error', function(err) {
console.error('Connection error: ' + err);
process.exit(1);
});

rl.on('line', function(line) {
connection.sendUTF(line);
});

rl.on('close', function() {
connection.close();
});
});

client.on('connectFailed', function(err) {
console.error('Connection failed: ' + err);
process.exit(1);
});
8 changes: 4 additions & 4 deletions hyco-websocket/test/scripts/echo-server.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@ var WebSocketServer = require('../../lib/HybridConnectionsWebSocketServer');

var args = { /* defaults */
debug: false,
ns : process.env.RELAY_NAMESPACE,
path : process.env.RELAY_PATH,
keyrule : process.env.RELAY_KEYRULE,
key : process.env.RELAY_KEY
ns : process.env.SB_HC_NAMESPACE,
path : process.env.SB_HC_PATH,
keyrule : process.env.SB_HC_KEYRULE,
key : process.env.SB_HC_KEY
};

/* Parse command line options */
Expand Down
3 changes: 1 addition & 2 deletions hyco-ws/examples/simple/listener.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ if (args.ns == null || args.path == null || args.keyrule == null || args.key ==
var wss = WebSocket.createRelayedServer(
{
server : uri,
keyName: args.keyrule,
key: args.key
token: WebSocket.createRelayToken(uri, args.keyrule, args.key)
},
function(ws) {
console.log('connection accepted');
Expand Down
5 changes: 2 additions & 3 deletions hyco-ws/lib/HybridConnectionWebSocketServer.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,14 @@
const util = require('util');
const EventEmitter = require('events');
const http = require('http');
const crypto = require('crypto');
const WebSocket = require('ws');
const url = require('url');
const moment = require('moment');

// slightly awful workaround to pull submodules
var wsc = require.cache[require.resolve('ws')]
const Extensions = wsc.require('./lib/Extensions');
const PerMessageDeflate = wsc.require('./lib/PerMessageDeflate');
const Extensions = wsc.require('./lib/extension');
const PerMessageDeflate = wsc.require('./lib/permessage-deflate');

var isDefinedAndNonNull = function(options, key) {
return typeof options[key] != 'undefined' && options[key] !== null;
Expand Down
6 changes: 1 addition & 5 deletions hyco-ws/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,7 @@
},
"dependencies": {
"ws": "5.2.x",
"crypto": "latest",
"moment": "latest",
"util" : "latest",
"http" : "latest",
"events" : "latest"
"moment": "latest"
},
"gypfile": true
}
Loading