Skip to content

Instantly share code, notes, and snippets.

@jasonLaster
Created September 9, 2020 17:26
Show Gist options
  • Select an option

  • Save jasonLaster/0d84378cddac54a44bc8e21a05b45d8a to your computer and use it in GitHub Desktop.

Select an option

Save jasonLaster/0d84378cddac54a44bc8e21a05b45d8a to your computer and use it in GitHub Desktop.
diff --git a/src/dispatch/main.js b/src/dispatch/main.js
index 085ada5..c95c5b5 100644
--- a/src/dispatch/main.js
+++ b/src/dispatch/main.js
@@ -18,46 +18,55 @@ const {
resourcesDirectory,
} = require("../shared/config");
const { ProtocolSocket } = require("../protocol/socket");
-const { loadTypes } = require("../protocol/typeCheck");
+// const { loadTypes } = require("../protocol/typeCheck");
const { log } = require("../shared/utils");
-const {
- AnalysisMessageHandlers,
- analysisOnProtocolSocketClose,
-} = require("./analysis");
-const {
- forwardSessionMessage,
- ControlMessageHandlers,
- controlOnProtocolSocketClose,
-} = require("./control");
-const {
- RecordingMessageHandlers,
- recordingOnProtocolSocketClose,
-} = require("./recording");
-const {
- MetadataMessageHandlers,
- metadataOnProtocolSocketClose,
-} = require("./metadata");
+// const {
+// AnalysisMessageHandlers,
+// analysisOnProtocolSocketClose,
+// } = require("./analysis");
+// const {
+// forwardSessionMessage,
+// ControlMessageHandlers,
+// controlOnProtocolSocketClose,
+// } = require("./control");
+// const {
+// RecordingMessageHandlers,
+// recordingOnProtocolSocketClose,
+// } = require("./recording");
+// const {
+// MetadataMessageHandlers,
+// metadataOnProtocolSocketClose,
+// } = require("./metadata");
process.on("unhandledRejection", (error) => {
console.error("ErrorUnhandledRejection", error);
});
const protocolFile = "/protocol.json";
-loadTypes(protocolFile);
+// loadTypes(protocolFile);
-fs.mkdirSync(recordingDirectory);
-fs.mkdirSync(resourcesDirectory);
+// fs.mkdirSync(recordingDirectory);
+// fs.mkdirSync(resourcesDirectory);
log("Dispatcher initializing.");
const server = http.createServer();
-const wss = new WebSocket.Server({ server });
-wss.on("connection", (socket) => {
+const wss = new WebSocket.Server({ noServer: true });
+
+server.on("upgrade", function upgrade(request, socket, head) {
+ wss.handleUpgrade(request, socket, head, function done(ws) {
+ wss.emit("connection", ws, request);
+ });
+});
+
+wss.on("connection", (socket, request) => {
const id = uuid();
log(`NewConnection ${id}`);
+ const authId = request.authId;
new ProtocolSocket({
id,
+ authId,
socket,
handlers: MessageHandlers,
sessionForwarder: forwardSessionMessage,
@@ -74,10 +83,10 @@ function onProtocolSocketClose(socket) {
}
const MessageHandlers = {
- ...RecordingMessageHandlers,
- ...ControlMessageHandlers,
- ...AnalysisMessageHandlers,
- ...MetadataMessageHandlers,
+ // ...RecordingMessageHandlers,
+ // ...ControlMessageHandlers,
+ // ...AnalysisMessageHandlers,
+ // ...MetadataMessageHandlers,
"Internal.echo": async function ({ str, count }) {
const newStr = str.repeat(count);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment