@epicgames-ps/lib-pixelstreamingsignalling-ue5.8 0.1.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/dist/cjs/Logger.js +23 -9
- package/dist/cjs/Logger.js.map +1 -1
- package/dist/cjs/PlayerConnection.js +8 -0
- package/dist/cjs/PlayerConnection.js.map +1 -1
- package/dist/cjs/SFUConnection.js +5 -0
- package/dist/cjs/SFUConnection.js.map +1 -1
- package/dist/cjs/SignallingServer.js +39 -10
- package/dist/cjs/SignallingServer.js.map +1 -1
- package/dist/cjs/StreamerConnection.js +6 -1
- package/dist/cjs/StreamerConnection.js.map +1 -1
- package/dist/cjs/StreamerRegistry.js +6 -3
- package/dist/cjs/StreamerRegistry.js.map +1 -1
- package/dist/cjs/Utils.js +25 -0
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/esm/Logger.js +24 -10
- package/dist/esm/Logger.js.map +1 -1
- package/dist/esm/PlayerConnection.js +8 -0
- package/dist/esm/PlayerConnection.js.map +1 -1
- package/dist/esm/SFUConnection.js +5 -0
- package/dist/esm/SFUConnection.js.map +1 -1
- package/dist/esm/SignallingServer.js +38 -9
- package/dist/esm/SignallingServer.js.map +1 -1
- package/dist/esm/StreamerConnection.js +6 -1
- package/dist/esm/StreamerConnection.js.map +1 -1
- package/dist/esm/StreamerRegistry.js +6 -3
- package/dist/esm/StreamerRegistry.js.map +1 -1
- package/dist/esm/Utils.js +22 -0
- package/dist/esm/Utils.js.map +1 -1
- package/dist/types/Logger.d.ts +2 -0
- package/dist/types/SignallingServer.d.ts +33 -0
- package/dist/types/Utils.d.ts +14 -0
- package/eslint.config.mjs +1 -1
- package/jest.config.js +14 -0
- package/package.json +17 -14
- package/src/Logger.test.ts +109 -0
- package/src/Logger.ts +30 -9
- package/src/PlayerConnection.ts +12 -2
- package/src/SFUConnection.test.ts +45 -0
- package/src/SFUConnection.ts +5 -0
- package/src/SignallingServer.maxPayload.test.ts +69 -0
- package/src/SignallingServer.test.ts +63 -0
- package/src/SignallingServer.ts +82 -6
- package/src/StreamerConnection.test.ts +48 -0
- package/src/StreamerConnection.ts +7 -1
- package/src/StreamerRegistry.test.ts +27 -0
- package/src/StreamerRegistry.ts +7 -3
- package/src/Utils.test.ts +31 -0
- package/src/Utils.ts +25 -0
- package/tsconfig.jest.json +9 -0
- package/tsconfig.json +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,27 @@
|
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
7
|
+
- 9a43ab9: Leave the previous streamer when an SFU subscribes to another. `SFUConnection.subscribe` overwrote `subscribedStreamer` without unsubscribing from the old streamer, so the old streamer kept forwarding to the SFU and kept the SFU's listeners. When that old streamer later disconnected, it detached the SFU from the streamer it was actually on and dropped the SFU's players. `PlayerConnection` already unsubscribes first; the SFU now does the same.
|
|
8
|
+
- c37638b: Bound what the signalling server writes to its log. Every message a player sent was written to the log file whole, and the daily file had no size limit, so a client could make the log grow as fast as it could send. Log text and protocol messages longer than 16 KiB are now cut to that length, with their full length noted, and the log files are limited in size and number: by default 14 files of 100 MB, set with `logMaxSize` and `logMaxFiles` in `InitLogging`, or `--log_max_size` and `--log_max_files` in wilbur. Files are now kept by count rather than for 14 days.
|
|
9
|
+
- e373094: Stop malformed messages from crashing the signalling server. A message whose JSON is `null` threw from the protocol's message handler, and since that handler runs inside the websocket's message event, any client could take the process down with one frame. Such a message is now rejected and logged, like unparseable JSON. A streamer's `disconnectPlayer` with a reason over 123 bytes, or one that is not a string, made `ws` throw in the same way; the reason is now dropped and the player is still disconnected. A non-string endpoint id from a streamer was stored as its id and broke the next streamer registration; it is now treated as no id.
|
|
10
|
+
- b52cb35: Limit websocket messages on the streamer, player and SFU ports to 1 MiB. ws accepts up to 100 MiB in one message by default, and signalling messages are a few kilobytes. A connection that sends more is closed with code 1009. Setting `maxPayload` in `streamerWsOptions`, `playerWsOptions` or `sfuWsOptions` overrides the limit for that port.
|
|
11
|
+
- Updated dependencies [e373094]
|
|
12
|
+
- @epicgames-ps/lib-pixelstreamingcommon-ue5.8@0.1.1
|
|
13
|
+
|
|
14
|
+
## 0.2.0
|
|
15
|
+
|
|
16
|
+
### Minor Changes
|
|
17
|
+
|
|
18
|
+
- c8cd21a: Allow TURN credentials to be issued per connection rather than shared by every session. `peerOptions` is static, so a credential written there is sent to every peer that ever connects and cannot be changed without a redeploy — the weakness noted in tip 3 of the security guidelines. `IServerConfig.peerOptionsProvider` is consulted once per connecting peer and returns the peer options for that peer, falling back to `peerOptions` if it throws. On top of it the signalling server adds `--turn_secret` (or `--turn_secret_file`) and `--turn_ttl`, which give every `turn:`/`turns:` entry a time limited username and credential in the form coturn's `use-auth-secret` mode expects. Default behaviour is unchanged when no secret is supplied. See `Docs/Security-Guidelines.md`.
|
|
19
|
+
|
|
20
|
+
### Patch Changes
|
|
21
|
+
|
|
22
|
+
- e9cd872: Stop an unsubscribed player from crashing the signalling server. When a player sends a message without being subscribed, `sendToStreamer` force-subscribes it to the first available streamer and then forwards through `this.subscribedStreamer!`. `subscribe()` can decline — most commonly because `maxSubscribers` is already reached — and reports that only by leaving `subscribedStreamer` unset, so the non-null assertions throw a TypeError out of a websocket message handler and take the process down, disconnecting every other player. It now checks the subscription took, and disconnects just that player if it did not.
|
|
23
|
+
|
|
24
|
+
## 0.2.1
|
|
25
|
+
|
|
26
|
+
### Patch Changes
|
|
27
|
+
|
|
7
28
|
- 812a419: - Addressing security issues raised by dependabot. (glob, js-yaml, playwright)
|
|
8
29
|
- Added lint npm script to the root project. Running `npm run lint` will now run linting over all packages.
|
|
9
30
|
- Updated dependencies [812a419]
|
package/dist/cjs/Logger.js
CHANGED
|
@@ -45,12 +45,25 @@ class CommonLogger {
|
|
|
45
45
|
* @param config - The settings to init the logger with. See IConfig interface
|
|
46
46
|
*/
|
|
47
47
|
function InitLogging(config) {
|
|
48
|
+
var _a;
|
|
48
49
|
const logDir = config.logDir || 'logs';
|
|
49
50
|
const logLevelConsole = config.logLevelConsole || 'info';
|
|
50
51
|
const logLevelFile = config.logLevelFile || 'info';
|
|
52
|
+
const logMaxSize = config.logMaxSize || '100m';
|
|
53
|
+
const logMaxFiles = (_a = config.logMaxFiles) !== null && _a !== void 0 ? _a : 14;
|
|
51
54
|
logMessagesToConsole = config.logMessagesToConsole || 'none';
|
|
55
|
+
// winston-daily-rotate-file takes a size it cannot parse, or a count of 0, as no limit at all.
|
|
56
|
+
if (!/^[1-9]\d*[kmg]$/i.test(logMaxSize)) {
|
|
57
|
+
throw new Error(`logMaxSize must be a whole number followed by k, m or g, not "${logMaxSize}".`);
|
|
58
|
+
}
|
|
59
|
+
if (!Number.isInteger(logMaxFiles) || logMaxFiles < 1) {
|
|
60
|
+
throw new Error(`logMaxFiles must be a whole number of at least 1, not "${logMaxFiles}".`);
|
|
61
|
+
}
|
|
52
62
|
exports.Logger = winston_1.default.createLogger({
|
|
53
|
-
transports: [
|
|
63
|
+
transports: [
|
|
64
|
+
createConsoleTransport(logLevelConsole),
|
|
65
|
+
createFileTransport(logDir, logLevelFile, logMaxSize, logMaxFiles)
|
|
66
|
+
]
|
|
54
67
|
});
|
|
55
68
|
const commonLogger = new CommonLogger(exports.Logger);
|
|
56
69
|
(0, lib_pixelstreamingcommon_ue5_8_1.overrideLogger)(commonLogger);
|
|
@@ -81,7 +94,7 @@ function createConsoleFormat() {
|
|
|
81
94
|
return printf((logObj) => {
|
|
82
95
|
const prefix = `[${String(logObj['timestamp'])}] ${logObj.level}: `;
|
|
83
96
|
if (typeof logObj.message === 'string') {
|
|
84
|
-
return prefix + logObj.message;
|
|
97
|
+
return prefix + (0, Utils_1.limitLogText)(logObj.message);
|
|
85
98
|
}
|
|
86
99
|
else if (isLogObject(logObj.message)) {
|
|
87
100
|
const { direction, receiver, sender, target, protoMessage } = logObj.message;
|
|
@@ -102,9 +115,9 @@ function createConsoleFormat() {
|
|
|
102
115
|
function formatMessageForConsole(message) {
|
|
103
116
|
switch (logMessagesToConsole) {
|
|
104
117
|
case 'verbose':
|
|
105
|
-
return (0, Utils_1.stringify)(message);
|
|
118
|
+
return (0, Utils_1.limitLogText)((0, Utils_1.stringify)(message));
|
|
106
119
|
case 'formatted':
|
|
107
|
-
return (0, Utils_1.beautify)(message);
|
|
120
|
+
return (0, Utils_1.limitLogText)((0, Utils_1.beautify)(message));
|
|
108
121
|
default:
|
|
109
122
|
return `[${message.type}]`;
|
|
110
123
|
}
|
|
@@ -117,12 +130,13 @@ function createProtoMessageFilter() {
|
|
|
117
130
|
return info;
|
|
118
131
|
});
|
|
119
132
|
}
|
|
120
|
-
function createFileTransport(logDirPath, logLevel) {
|
|
133
|
+
function createFileTransport(logDirPath, logLevel, maxSize, maxFiles) {
|
|
121
134
|
return new winston_1.default.transports.DailyRotateFile({
|
|
122
135
|
level: logLevel,
|
|
123
136
|
filename: path_1.default.join(logDirPath, 'server-%DATE%.log'),
|
|
124
137
|
datePattern: 'YYYY-MM-DD',
|
|
125
|
-
|
|
138
|
+
maxSize,
|
|
139
|
+
maxFiles,
|
|
126
140
|
format: combine(timestamp({ format: 'YYYY-MM-DD HH:mm:ss.SSS' }), splat(), createFileFormat())
|
|
127
141
|
});
|
|
128
142
|
}
|
|
@@ -134,13 +148,13 @@ function createFileFormat() {
|
|
|
134
148
|
timestamp,
|
|
135
149
|
level,
|
|
136
150
|
event: 'message',
|
|
137
|
-
message
|
|
151
|
+
message: (0, Utils_1.limitLogText)(message)
|
|
138
152
|
});
|
|
139
153
|
}
|
|
140
154
|
else if (isLogObject(logObj.message)) {
|
|
141
155
|
const { timestamp, level, message } = logObj;
|
|
142
|
-
return JSON.stringify(Object.assign({ timestamp,
|
|
143
|
-
level }, message));
|
|
156
|
+
return JSON.stringify(Object.assign(Object.assign({ timestamp,
|
|
157
|
+
level }, message), { protoMessage: (0, Utils_1.limitLoggedMessage)(message.protoMessage) }));
|
|
144
158
|
}
|
|
145
159
|
return '';
|
|
146
160
|
});
|
package/dist/cjs/Logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../src/Logger.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../src/Logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -128,6 +128,14 @@ class PlayerConnection {
|
|
|
128
128
|
else {
|
|
129
129
|
Logger_1.Logger.warn(`Subscribing to ${streamerId}`);
|
|
130
130
|
this.subscribe(streamerId);
|
|
131
|
+
// subscribe() declines silently, most often because maxSubscribers is reached, and
|
|
132
|
+
// says so only by leaving subscribedStreamer unset. Forwarding anyway dereferences
|
|
133
|
+
// null, which surfaces as an uncaughtException and exits the process.
|
|
134
|
+
if (!this.subscribedStreamer) {
|
|
135
|
+
Logger_1.Logger.error(`Player ${this.playerId} could not be subscribed to ${streamerId}. Disconnecting.`);
|
|
136
|
+
this.disconnect();
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
131
139
|
}
|
|
132
140
|
}
|
|
133
141
|
message.playerId = this.playerId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayerConnection.js","sourceRoot":"","sources":["../../src/PlayerConnection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,iGAOsD;AAGtD,qCAAkC;AAClC,yDAA2C;AAG3C;;;;;;;;;;GAUG;AACH,MAAa,gBAAgB;IAkBzB;;;;;;;OAOG;IACH,YAAY,MAAwB,EAAE,EAAa,EAAE,aAAsB,EAAE,OAAyB;QAClG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,sDAAqB,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,GAAG,IAAI,mDAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE7D,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE3E,IAAI,CAAC,uBAAuB,EAAE,CAAC;IACnC,CAAC;IAED;;;OAGG;IACH,qBAAqB;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,OAAoB;QAC5B,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,aAAa;;QACT,OAAO;YACH,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,MAAA,IAAI,CAAC,kBAAkB,0CAAE,UAAU;YACjD,aAAa,EAAE,IAAI,CAAC,aAAa;SACpC,CAAC;IACN,CAAC;IAEO,uBAAuB;QAC3B,sDAAsD;QACtD,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,SAAS,CAAC,QAAQ,EAC3B,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAChE,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,WAAW,CAAC,QAAQ,EAC7B,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAClE,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,aAAa,CAAC,QAAQ,EAC/B,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAC7D,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QACnG,qDAAqD;QAErD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3E,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACvF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,qBAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEpF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,OAAoB,EAAE,EAAE;YACnD,eAAM,CAAC,IAAI,CAAC,sCAAsC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,cAAc,CAAC,OAAoB;QACvC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,eAAM,CAAC,IAAI,CACP,UAAU,IAAI,CAAC,QAAQ,iEAAiE,CAC3F,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;YACrE,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,eAAM,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;gBAC/E,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,OAAO;YACX,CAAC;iBAAM,CAAC;gBACJ,eAAM,CAAC,IAAI,CAAC,kBAAkB,UAAU,EAAE,CAAC,CAAC;gBAC5C,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"PlayerConnection.js","sourceRoot":"","sources":["../../src/PlayerConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -145,6 +145,11 @@ class SFUConnection extends lib_pixelstreamingcommon_ue5_8_1.EventEmitter {
|
|
|
145
145
|
Logger_1.Logger.error(`subscribe: SFU ${this.playerId} tried to subscribe to a non-existent streamer ${streamerId}`);
|
|
146
146
|
return;
|
|
147
147
|
}
|
|
148
|
+
// Leave the previous streamer first, as PlayerConnection does, so it stops forwarding to this SFU
|
|
149
|
+
// and a later disconnect of it cannot detach the SFU from the streamer it is now on.
|
|
150
|
+
if (this.subscribedStreamer) {
|
|
151
|
+
this.unsubscribe();
|
|
152
|
+
}
|
|
148
153
|
this.subscribedStreamer = streamer;
|
|
149
154
|
// Register as a subscriber of the upstream streamer so it will forward signalling messages
|
|
150
155
|
// back to this SFU (the streamer's forwardMessage only sends to subscribed players).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SFUConnection.js","sourceRoot":"","sources":["../../src/SFUConnection.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SFUConnection.js","sourceRoot":"","sources":["../../src/SFUConnection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,iGAQsD;AAGtD,qCAAkC;AAClC,yDAA2C;AAG3C;;;;;;;;;;;;;;GAcG;AACH,MAAa,aAAc,SAAQ,6CAAY;IA2B3C;;;;;;OAMG;IACH,YAAY,MAAwB,EAAE,EAAa,EAAE,aAAsB,EAAE,OAAyB;QAClG,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,IAAI,sDAAqB,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,GAAG,IAAI,mDAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE7D,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE3E,IAAI,CAAC,uBAAuB,EAAE,CAAC;IACnC,CAAC;IAED;;;OAGG;IACH,qBAAqB;QACjB,OAAO,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC;IACnD,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,OAAoB;QAC5B,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,eAAe;QACX,OAAO;YACH,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;iBAClC,WAAW,EAAE;iBACb,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,kBAAkB,IAAI,IAAI,CAAC;iBACrD,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;SAC/C,CAAC;IACN,CAAC;IAED;;;OAGG;IACH,aAAa;;QACT,OAAO;YACH,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,KAAK;YACX,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY,EAAE,MAAA,IAAI,CAAC,kBAAkB,0CAAE,UAAU;SACpD,CAAC;IACN,CAAC;IAEO,uBAAuB;QAC3B,sDAAsD;QACtD,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,SAAS,CAAC,QAAQ,EAC3B,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAChE,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,WAAW,CAAC,QAAQ,EAC7B,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAClE,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,aAAa,CAAC,QAAQ,EAC/B,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAC7D,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,UAAU,CAAC,QAAQ,EAC5B,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAC1D,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,oBAAoB,CAAC,QAAQ,EACtC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,CACpE,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,cAAc,CAAC,QAAQ,EAChC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAC9D,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CACZ,yCAAQ,CAAC,aAAa,CAAC,QAAQ,EAC/B,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAC7D,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QACnG,qDAAqD;QAErD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3E,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACvF,CAAC;IAEO,SAAS,CAAC,UAAkB;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,eAAM,CAAC,KAAK,CACR,kBAAkB,IAAI,CAAC,QAAQ,kDAAkD,UAAU,EAAE,CAChG,CAAC;YACF,OAAO;QACX,CAAC;QAED,kGAAkG;QAClG,qFAAqF;QACrF,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,QAAQ,CAAC;QACnC,2FAA2F;QAC3F,qFAAqF;QACrF,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,kBAAkB,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC7E,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACxE,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAE5E,MAAM,gBAAgB,GAAG,+CAAc,CAAC,aAAa,CAAC,yCAAQ,CAAC,eAAe,EAAE;YAC5E,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI;YACjB,GAAG,EAAE,IAAI;SACZ,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC1C,CAAC;IAEO,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,OAAO;QACX,CAAC;QAED,MAAM,mBAAmB,GAAG,+CAAc,CAAC,aAAa,CAAC,yCAAQ,CAAC,kBAAkB,EAAE;YAClF,QAAQ,EAAE,IAAI,CAAC,QAAQ;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;QAEzC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC9E,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACzE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC7E,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;IACnC,CAAC;IAEO,cAAc,CAAC,OAAoB;QACvC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,eAAM,CAAC,KAAK,CACR,OAAO,IAAI,CAAC,QAAQ,iEAAiE,CACxF,CAAC;YACF,OAAO;QACX,CAAC;QAED,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAE5D,kEAAkE;QAClE,kGAAkG;QAClG,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QAErD,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IAEO,YAAY,CAAC,OAAoB;QACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACpB,eAAM,CAAC,KAAK,CACR,OAAO,IAAI,CAAC,UAAU,kEAAkE,CAC3F,CAAC;YACF,OAAO;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,yFAAyF;YACzF,0EAA0E;YAC1E,eAAM,CAAC,KAAK,CACR,OAAO,IAAI,CAAC,UAAU,sCAAsC,OAAO,CAAC,QAAQ,0CAA0C,CACzH,CAAC;YACF,OAAO;QACX,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChE,IAAI,MAAM,EAAE,CAAC;YACT,OAAO,OAAO,CAAC,QAAQ,CAAC;YACxB,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC3C,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACJ,eAAM,CAAC,KAAK,CAAC,sCAAsC,OAAO,CAAC,QAAQ,wBAAwB,CAAC,CAAC;QACjG,CAAC;IACL,CAAC;IAEO,UAAU;QACd,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5B,CAAC;IAEO,iBAAiB,CAAC,OAAiC;QACvD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAEO,mBAAmB,CAAC,KAAa;QACrC,MAAM,aAAa,GAAG,+CAAc,CAAC,aAAa,CAAC,yCAAQ,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACjG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAEO,sBAAsB;QAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,+CAAc,CAAC,aAAa,CAAC,yCAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC9E,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5B,CAAC;IAEO,gBAAgB,CAAC,KAAiB;QACtC,eAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,qBAAqB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;IAEO,gBAAgB,CAAC,MAAkB;QACvC,eAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAEO,kBAAkB,CAAC,OAA2B;QAClD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IAEO,oBAAoB,CAAC,QAA8B;QACvD,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,eAAe,CAAC,QAAgC;QACpD,MAAM,WAAW,GAAG,+CAAc,CAAC,aAAa,CAAC,yCAAQ,CAAC,YAAY,EAAE;YACpE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;SACrF,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAEO,sBAAsB,CAAC,OAAsC;QACjE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,QAAS,CAAC;QAC/B,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAEO,YAAY,CAAC,QAA6B;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IAC1B,CAAC;IAEO,gBAAgB,CAAC,QAAiC;QACtD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IAC1B,CAAC;IAEO,eAAe,CAAC,QAAgC;QACpD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5B,CAAC;IAEO,aAAa,CAAC,OAAsB;QACxC,IAAI,CAAC,WAAW,CAAC,+CAAc,CAAC,aAAa,CAAC,yCAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC1F,CAAC;CACJ;AA5SD,sCA4SC"}
|
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.SignallingServer = void 0;
|
|
36
|
+
exports.SignallingServer = exports.DEFAULT_MAX_PAYLOAD = void 0;
|
|
37
37
|
const wslib = __importStar(require("ws"));
|
|
38
38
|
const StreamerConnection_1 = require("./StreamerConnection");
|
|
39
39
|
const PlayerConnection_1 = require("./PlayerConnection");
|
|
@@ -43,6 +43,13 @@ const StreamerRegistry_1 = require("./StreamerRegistry");
|
|
|
43
43
|
const PlayerRegistry_1 = require("./PlayerRegistry");
|
|
44
44
|
const lib_pixelstreamingcommon_ue5_8_1 = require("@epicgames-ps/lib-pixelstreamingcommon-ue5.8");
|
|
45
45
|
const Utils_1 = require("./Utils");
|
|
46
|
+
/**
|
|
47
|
+
* The largest websocket message, in bytes, accepted on the streamer, player and SFU ports. Signalling
|
|
48
|
+
* messages are a few kilobytes, and ws would otherwise accept up to 100 MiB in one message. A
|
|
49
|
+
* connection that sends more is closed with code 1009. Setting maxPayload in streamerWsOptions,
|
|
50
|
+
* playerWsOptions or sfuWsOptions overrides it for that port.
|
|
51
|
+
*/
|
|
52
|
+
exports.DEFAULT_MAX_PAYLOAD = 1024 * 1024;
|
|
46
53
|
/**
|
|
47
54
|
* The main signalling server object.
|
|
48
55
|
* Contains a streamer and player registry and handles setting up of websockets
|
|
@@ -69,31 +76,53 @@ class SignallingServer {
|
|
|
69
76
|
return;
|
|
70
77
|
}
|
|
71
78
|
// Streamer connections
|
|
72
|
-
const streamerServer = new wslib.WebSocketServer(Object.assign({ port: config.streamerPort, backlog: 1 }, config.streamerWsOptions));
|
|
79
|
+
const streamerServer = new wslib.WebSocketServer(Object.assign({ port: config.streamerPort, backlog: 1, maxPayload: exports.DEFAULT_MAX_PAYLOAD }, config.streamerWsOptions));
|
|
73
80
|
streamerServer.on('connection', this.onStreamerConnected.bind(this));
|
|
74
81
|
Logger_1.Logger.info(`Listening for streamer connections on port ${config.streamerPort}`);
|
|
75
82
|
// Player connections
|
|
76
83
|
const server = config.httpsServer || config.httpServer;
|
|
77
|
-
const playerServer = new wslib.WebSocketServer(Object.assign({ server: server, port: server ? undefined : config.playerPort }, config.playerWsOptions));
|
|
84
|
+
const playerServer = new wslib.WebSocketServer(Object.assign({ server: server, port: server ? undefined : config.playerPort, maxPayload: exports.DEFAULT_MAX_PAYLOAD }, config.playerWsOptions));
|
|
78
85
|
playerServer.on('connection', this.onPlayerConnected.bind(this));
|
|
79
86
|
if (!config.httpServer && !config.httpsServer) {
|
|
80
87
|
Logger_1.Logger.info(`Listening for player connections on port ${config.playerPort}`);
|
|
81
88
|
}
|
|
82
89
|
// Optional SFU connections
|
|
83
90
|
if (config.sfuPort) {
|
|
84
|
-
const sfuServer = new wslib.WebSocketServer(Object.assign({ port: config.sfuPort, backlog: 1 }, config.sfuWsOptions));
|
|
91
|
+
const sfuServer = new wslib.WebSocketServer(Object.assign({ port: config.sfuPort, backlog: 1, maxPayload: exports.DEFAULT_MAX_PAYLOAD }, config.sfuWsOptions));
|
|
85
92
|
sfuServer.on('connection', this.onSFUConnected.bind(this));
|
|
86
93
|
Logger_1.Logger.info(`Listening for SFU connections on port ${config.sfuPort}`);
|
|
87
94
|
}
|
|
88
95
|
}
|
|
89
|
-
sendConfigMessage(connection) {
|
|
96
|
+
sendConfigMessage(connection, peerRequest) {
|
|
90
97
|
// peer connection options is a general field with all optional fields;
|
|
91
98
|
// it doesnt play nice with mergePartial so we just add it verbatim
|
|
92
99
|
const message = lib_pixelstreamingcommon_ue5_8_1.MessageHelpers.createMessage(lib_pixelstreamingcommon_ue5_8_1.Messages.config, this.protocolConfig);
|
|
93
|
-
|
|
94
|
-
message.peerConnectionOptions = this.protocolConfig['peerConnectionOptions'];
|
|
100
|
+
message.peerConnectionOptions = this.getPeerOptions(peerRequest);
|
|
95
101
|
connection.sendMessage(message);
|
|
96
102
|
}
|
|
103
|
+
/**
|
|
104
|
+
* Resolves the peer options for one connecting peer, deferring to peerOptionsProvider when the
|
|
105
|
+
* consumer supplied one.
|
|
106
|
+
*/
|
|
107
|
+
getPeerOptions(peerRequest) {
|
|
108
|
+
if (!this.config.peerOptionsProvider) {
|
|
109
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
110
|
+
return this.protocolConfig['peerConnectionOptions'];
|
|
111
|
+
}
|
|
112
|
+
try {
|
|
113
|
+
// The provider is consumer code, so its return is unknown to us; it travels as an
|
|
114
|
+
// opaque blob in the config message either way.
|
|
115
|
+
return this.config.peerOptionsProvider(peerRequest);
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
// A provider is consumer code and may reach outside the process for a credential. If it
|
|
119
|
+
// fails we still send a config message, because a peer that never receives one simply
|
|
120
|
+
// waits forever with nothing in its log to explain why.
|
|
121
|
+
Logger_1.Logger.error('peerOptionsProvider threw for %s peer %s, falling back to the static peer options: %s', peerRequest.peerType, peerRequest.peerId, error instanceof Error ? error.message : (0, Utils_1.stringify)(error));
|
|
122
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
123
|
+
return this.protocolConfig['peerConnectionOptions'];
|
|
124
|
+
}
|
|
125
|
+
}
|
|
97
126
|
onStreamerConnected(ws, request) {
|
|
98
127
|
Logger_1.Logger.info(`New streamer connection: %s`, request.socket.remoteAddress);
|
|
99
128
|
const newStreamer = new StreamerConnection_1.StreamerConnection(this, ws, request.socket.remoteAddress, request);
|
|
@@ -104,7 +133,7 @@ class SignallingServer {
|
|
|
104
133
|
this.streamerRegistry.remove(newStreamer);
|
|
105
134
|
Logger_1.Logger.info(`Streamer %s (%s) disconnected.`, newStreamer.streamerId, request.socket.remoteAddress);
|
|
106
135
|
});
|
|
107
|
-
this.sendConfigMessage(newStreamer);
|
|
136
|
+
this.sendConfigMessage(newStreamer, { peerType: 'streamer', peerId: newStreamer.streamerId });
|
|
108
137
|
}
|
|
109
138
|
onPlayerConnected(ws, request) {
|
|
110
139
|
Logger_1.Logger.info(`New player connection: %s (%s)`, request.socket.remoteAddress, request.url);
|
|
@@ -129,7 +158,7 @@ class SignallingServer {
|
|
|
129
158
|
ws.terminate();
|
|
130
159
|
};
|
|
131
160
|
}
|
|
132
|
-
this.sendConfigMessage(newPlayer);
|
|
161
|
+
this.sendConfigMessage(newPlayer, { peerType: 'player', peerId: newPlayer.playerId });
|
|
133
162
|
}
|
|
134
163
|
onSFUConnected(ws, request) {
|
|
135
164
|
Logger_1.Logger.info(`New SFU connection: %s`, request.socket.remoteAddress);
|
|
@@ -142,7 +171,7 @@ class SignallingServer {
|
|
|
142
171
|
this.playerRegistry.remove(newSFU);
|
|
143
172
|
Logger_1.Logger.info(`SFU %s (%s) disconnected.`, newSFU.streamerId, request.socket.remoteAddress);
|
|
144
173
|
});
|
|
145
|
-
this.sendConfigMessage(newSFU);
|
|
174
|
+
this.sendConfigMessage(newSFU, { peerType: 'sfu', peerId: newSFU.streamerId });
|
|
146
175
|
}
|
|
147
176
|
}
|
|
148
177
|
exports.SignallingServer = SignallingServer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignallingServer.js","sourceRoot":"","sources":["../../src/SignallingServer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,0CAA4B;AAC5B,6DAA0D;AAC1D,yDAAsD;AACtD,mDAAgD;AAChD,qCAAkC;AAClC,yDAA4E;AAC5E,qDAAkD;AAClD,iGAKsD;AACtD,mCAAoC;
|
|
1
|
+
{"version":3,"file":"SignallingServer.js","sourceRoot":"","sources":["../../src/SignallingServer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,0CAA4B;AAC5B,6DAA0D;AAC1D,yDAAsD;AACtD,mDAAgD;AAChD,qCAAkC;AAClC,yDAA4E;AAC5E,qDAAkD;AAClD,iGAKsD;AACtD,mCAAoC;AAsFpC;;;;;GAKG;AACU,QAAA,mBAAmB,GAAG,IAAI,GAAG,IAAI,CAAC;AAE/C;;;;GAIG;AACH,MAAa,gBAAgB;IAOzB;;;;OAIG;IACH,YAAY,MAAqB;QAC7B,eAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,IAAA,iBAAS,EAAC,MAAM,CAAC,CAAC,CAAC;QAE5E,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,gBAAgB,GAAG,IAAI,mCAAgB,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACzE,IAAI,CAAC,cAAc,GAAG,IAAI,+BAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG;YAClB,eAAe,EAAE,mDAAkB,CAAC,kBAAkB;YACtD,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE;SACvD,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAE5B,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAClE,eAAM,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;YAC1F,OAAO;QACX,CAAC;QAED,uBAAuB;QACvB,MAAM,cAAc,GAAG,IAAI,KAAK,CAAC,eAAe,iBAC5C,IAAI,EAAE,MAAM,CAAC,YAAY,EACzB,OAAO,EAAE,CAAC,EACV,UAAU,EAAE,2BAAmB,IAC5B,MAAM,CAAC,iBAAiB,EAC7B,CAAC;QACH,cAAc,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACrE,eAAM,CAAC,IAAI,CAAC,8CAA8C,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QAEjF,qBAAqB;QACrB,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC;QACvD,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,eAAe,iBAC1C,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAC5C,UAAU,EAAE,2BAAmB,IAC5B,MAAM,CAAC,eAAe,EAC3B,CAAC;QACH,YAAY,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5C,eAAM,CAAC,IAAI,CAAC,4CAA4C,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,2BAA2B;QAC3B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,eAAe,iBACvC,IAAI,EAAE,MAAM,CAAC,OAAO,EACpB,OAAO,EAAE,CAAC,EACV,UAAU,EAAE,2BAAmB,IAC5B,MAAM,CAAC,YAAY,EACxB,CAAC;YACH,SAAS,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3D,eAAM,CAAC,IAAI,CAAC,yCAAyC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3E,CAAC;IACL,CAAC;IAEO,iBAAiB,CACrB,UAAuD,EACvD,WAAgC;QAEhC,uEAAuE;QACvE,mEAAmE;QACnE,MAAM,OAAO,GAAoB,+CAAc,CAAC,aAAa,CAAC,yCAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACpG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACjE,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,WAAgC;QACnD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;YACnC,+DAA+D;YAC/D,OAAO,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,CAAC;YACD,kFAAkF;YAClF,gDAAgD;YAChD,OAAO,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAA6C,CAAC;QACpG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,wFAAwF;YACxF,sFAAsF;YACtF,wDAAwD;YACxD,eAAM,CAAC,KAAK,CACR,uFAAuF,EACvF,WAAW,CAAC,QAAQ,EACpB,WAAW,CAAC,MAAM,EAClB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,iBAAS,EAAC,KAAK,CAAC,CAC5D,CAAC;YACF,+DAA+D;YAC/D,OAAO,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAEO,mBAAmB,CAAC,EAAmB,EAAE,OAA6B;QAC1E,eAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAEzE,MAAM,WAAW,GAAG,IAAI,uCAAkB,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC5F,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC;QAE7D,mEAAmE;QACnE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACvC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1C,eAAM,CAAC,IAAI,CACP,gCAAgC,EAChC,WAAW,CAAC,UAAU,EACtB,OAAO,CAAC,MAAM,CAAC,aAAa,CAC/B,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC;IAClG,CAAC;IAEO,iBAAiB,CAAC,EAAmB,EAAE,OAA6B;QACxE,eAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QAEzF,MAAM,SAAS,GAAG,IAAI,mCAAgB,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAExF,kEAAkE;QAClE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACjC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACtC,eAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClG,CAAC,CAAC,CAAC;QAEH,4FAA4F;QAC5F,6FAA6F;QAC7F,6FAA6F;QAC7F,kFAAkF;QAClF,4FAA4F;QAC5F,6FAA6F;QAC7F,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,sBAAsB,IAAI,CAAC,CAAC;QACjE,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,SAAS,GAAG,IAAI,iDAAgB,CAAC,SAAS,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;YAC7E,SAAS,CAAC,SAAS,GAAG,GAAG,EAAE;gBACvB,eAAM,CAAC,IAAI,CACP,gEAAgE,EAChE,SAAS,CAAC,QAAQ,EAClB,OAAO,CAAC,MAAM,CAAC,aAAa,CAC/B,CAAC;gBACF,EAAE,CAAC,SAAS,EAAE,CAAC;YACnB,CAAC,CAAC;QACN,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1F,CAAC;IAEO,cAAc,CAAC,EAAmB,EAAE,OAA6B;QACrE,eAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,IAAI,6BAAa,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAElF,yCAAyC;QACzC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC9B,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACrC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,eAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC9F,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IACnF,CAAC;CACJ;AA9KD,4CA8KC"}
|
|
@@ -157,7 +157,12 @@ class StreamerConnection extends lib_pixelstreamingcommon_ue5_8_1.EventEmitter {
|
|
|
157
157
|
}
|
|
158
158
|
const player = this.server.playerRegistry.get(message.playerId);
|
|
159
159
|
if (player) {
|
|
160
|
-
|
|
160
|
+
// ws throws on a reason over 123 bytes or one that is not a string, which would crash the
|
|
161
|
+
// server. Such a reason is dropped; the player is still closed.
|
|
162
|
+
const reason = typeof message.reason === 'string' && Buffer.byteLength(message.reason) <= 123
|
|
163
|
+
? message.reason
|
|
164
|
+
: undefined;
|
|
165
|
+
player.protocol.disconnect(1011, reason);
|
|
161
166
|
}
|
|
162
167
|
}
|
|
163
168
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StreamerConnection.js","sourceRoot":"","sources":["../../src/StreamerConnection.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"StreamerConnection.js","sourceRoot":"","sources":["../../src/StreamerConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,17 +86,20 @@ class StreamerRegistry extends lib_pixelstreamingcommon_ue5_8_1.EventEmitter {
|
|
|
86
86
|
}
|
|
87
87
|
onEndpointId(streamer, message) {
|
|
88
88
|
const oldId = streamer.streamerId;
|
|
89
|
+
// The id arrives as any JSON value. A non-string one is treated as no id, because sanitizing it
|
|
90
|
+
// would store a value that later lookups cannot handle.
|
|
91
|
+
const requestedId = typeof message.id === 'string' ? message.id : '';
|
|
89
92
|
// id might conflict or be invalid so here we sanitize it
|
|
90
|
-
const sanitizedId = this.sanitizeStreamerId(
|
|
93
|
+
const sanitizedId = this.sanitizeStreamerId(requestedId);
|
|
91
94
|
let committedId = sanitizedId;
|
|
92
95
|
if (this.authorizeStreamerId) {
|
|
93
96
|
// Let the consumer accept the default id, override it (e.g. namespace per tenant), or
|
|
94
97
|
// reject the registration entirely. This is where anti-squatting policy lives.
|
|
95
98
|
committedId = this.authorizeStreamerId({
|
|
96
99
|
streamer,
|
|
97
|
-
requestedId
|
|
100
|
+
requestedId,
|
|
98
101
|
sanitizedId,
|
|
99
|
-
collided: !!
|
|
102
|
+
collided: !!requestedId && sanitizedId !== requestedId
|
|
100
103
|
});
|
|
101
104
|
if (committedId === null) {
|
|
102
105
|
Logger_1.Logger.warn(`StreamerRegistry: streamer id '${message.id}' (was ${oldId}) rejected by authorizer. Disconnecting.`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StreamerRegistry.js","sourceRoot":"","sources":["../../src/StreamerRegistry.ts"],"names":[],"mappings":";;;AAAA,kDAAkD;AAClD,iGAOsD;AAEtD,qCAAkC;AA+DlC;;;;;;;GAOG;AACH,MAAa,gBAAiB,SAAQ,6CAAY;IAQ9C,YAAY,mBAA0C;QAClD,KAAK,EAAE,CAAC;QAPZ,4BAAuB,GAAW,iBAAiB,CAAC;QAQhD,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACH,GAAG,CAAC,QAAmB;QACnB,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAEnE,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,eAAM,CAAC,KAAK,CACR,gDAAgD,QAAQ,CAAC,UAAU,8BAA8B,CACpG,CAAC;YACF,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE9B,2CAA2C;QAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,yCAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC3F,QAAQ,CAAC,WAAW,CAAC,+CAAc,CAAC,aAAa,CAAC,yCAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEtE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;QAExC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,QAAmB;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CACR,8CAA8C,QAAQ,CAAC,UAAU,uBAAuB,CAC3F,CAAC;YACF,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,UAAkB;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;IACjF,CAAC;IAED;;;;;OAKG;IACH,kBAAkB;QACd,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,KAAK;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,KAAK;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;IACjC,CAAC;IAEO,YAAY,CAAC,QAAmB,EAAE,OAA4B;QAClE,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC;QAElC,
|
|
1
|
+
{"version":3,"file":"StreamerRegistry.js","sourceRoot":"","sources":["../../src/StreamerRegistry.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/Utils.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MAX_LOGGED_LENGTH = void 0;
|
|
3
4
|
exports.stringify = stringify;
|
|
4
5
|
exports.beautify = beautify;
|
|
6
|
+
exports.limitLogText = limitLogText;
|
|
7
|
+
exports.limitLoggedMessage = limitLoggedMessage;
|
|
5
8
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
6
9
|
const jsonc_1 = require("jsonc");
|
|
7
10
|
/**
|
|
@@ -16,4 +19,26 @@ function stringify(obj) {
|
|
|
16
19
|
function beautify(obj) {
|
|
17
20
|
return jsonc_1.jsonc.stringify(obj, undefined, '\t');
|
|
18
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* The longest text, or protocol message as JSON, that the logger writes whole. A client chooses the
|
|
24
|
+
* size of what it sends, so anything longer is cut rather than written to the log in full.
|
|
25
|
+
*/
|
|
26
|
+
exports.MAX_LOGGED_LENGTH = 16 * 1024;
|
|
27
|
+
/**
|
|
28
|
+
* Returns the text, or if it is longer than MAX_LOGGED_LENGTH, its start and its full length.
|
|
29
|
+
*/
|
|
30
|
+
function limitLogText(text) {
|
|
31
|
+
if (text.length <= exports.MAX_LOGGED_LENGTH) {
|
|
32
|
+
return text;
|
|
33
|
+
}
|
|
34
|
+
return `${text.slice(0, exports.MAX_LOGGED_LENGTH)}... (${text.length} characters)`;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Returns a protocol message as the log file should hold it: the message itself while its JSON fits in
|
|
38
|
+
* MAX_LOGGED_LENGTH, otherwise its JSON text cut by limitLogText.
|
|
39
|
+
*/
|
|
40
|
+
function limitLoggedMessage(message) {
|
|
41
|
+
const text = JSON.stringify(message);
|
|
42
|
+
return text.length <= exports.MAX_LOGGED_LENGTH ? message : limitLogText(text);
|
|
43
|
+
}
|
|
19
44
|
//# sourceMappingURL=Utils.js.map
|
package/dist/cjs/Utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../src/Utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../src/Utils.ts"],"names":[],"mappings":";;;AAMA,8BAEC;AAKD,4BAEC;AAWD,oCAKC;AAMD,gDAGC;AAxCD,kDAAkD;AAClD,iCAA8B;AAE9B;;GAEG;AACH,SAAgB,SAAS,CAAC,GAAQ;IAC9B,OAAO,aAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,GAAQ;IAC7B,OAAO,aAAK,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACjD,CAAC;AAED;;;GAGG;AACU,QAAA,iBAAiB,GAAG,EAAE,GAAG,IAAI,CAAC;AAE3C;;GAEG;AACH,SAAgB,YAAY,CAAC,IAAY;IACrC,IAAI,IAAI,CAAC,MAAM,IAAI,yBAAiB,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,yBAAiB,CAAC,QAAQ,IAAI,CAAC,MAAM,cAAc,CAAC;AAChF,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,OAAe;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACrC,OAAO,IAAI,CAAC,MAAM,IAAI,yBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AAC3E,CAAC"}
|
package/dist/esm/Logger.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
2
|
-
import { stringify, beautify } from './Utils';
|
|
2
|
+
import { stringify, beautify, limitLogText, limitLoggedMessage } from './Utils';
|
|
3
3
|
import path from 'path';
|
|
4
4
|
import winston from 'winston';
|
|
5
5
|
import 'winston-daily-rotate-file';
|
|
@@ -38,12 +38,25 @@ class CommonLogger {
|
|
|
38
38
|
* @param config - The settings to init the logger with. See IConfig interface
|
|
39
39
|
*/
|
|
40
40
|
export function InitLogging(config) {
|
|
41
|
+
var _a;
|
|
41
42
|
const logDir = config.logDir || 'logs';
|
|
42
43
|
const logLevelConsole = config.logLevelConsole || 'info';
|
|
43
44
|
const logLevelFile = config.logLevelFile || 'info';
|
|
45
|
+
const logMaxSize = config.logMaxSize || '100m';
|
|
46
|
+
const logMaxFiles = (_a = config.logMaxFiles) !== null && _a !== void 0 ? _a : 14;
|
|
44
47
|
logMessagesToConsole = config.logMessagesToConsole || 'none';
|
|
48
|
+
// winston-daily-rotate-file takes a size it cannot parse, or a count of 0, as no limit at all.
|
|
49
|
+
if (!/^[1-9]\d*[kmg]$/i.test(logMaxSize)) {
|
|
50
|
+
throw new Error(`logMaxSize must be a whole number followed by k, m or g, not "${logMaxSize}".`);
|
|
51
|
+
}
|
|
52
|
+
if (!Number.isInteger(logMaxFiles) || logMaxFiles < 1) {
|
|
53
|
+
throw new Error(`logMaxFiles must be a whole number of at least 1, not "${logMaxFiles}".`);
|
|
54
|
+
}
|
|
45
55
|
Logger = winston.createLogger({
|
|
46
|
-
transports: [
|
|
56
|
+
transports: [
|
|
57
|
+
createConsoleTransport(logLevelConsole),
|
|
58
|
+
createFileTransport(logDir, logLevelFile, logMaxSize, logMaxFiles)
|
|
59
|
+
]
|
|
47
60
|
});
|
|
48
61
|
const commonLogger = new CommonLogger(Logger);
|
|
49
62
|
overrideLogger(commonLogger);
|
|
@@ -74,7 +87,7 @@ function createConsoleFormat() {
|
|
|
74
87
|
return printf((logObj) => {
|
|
75
88
|
const prefix = `[${String(logObj['timestamp'])}] ${logObj.level}: `;
|
|
76
89
|
if (typeof logObj.message === 'string') {
|
|
77
|
-
return prefix + logObj.message;
|
|
90
|
+
return prefix + limitLogText(logObj.message);
|
|
78
91
|
}
|
|
79
92
|
else if (isLogObject(logObj.message)) {
|
|
80
93
|
const { direction, receiver, sender, target, protoMessage } = logObj.message;
|
|
@@ -95,9 +108,9 @@ function createConsoleFormat() {
|
|
|
95
108
|
function formatMessageForConsole(message) {
|
|
96
109
|
switch (logMessagesToConsole) {
|
|
97
110
|
case 'verbose':
|
|
98
|
-
return stringify(message);
|
|
111
|
+
return limitLogText(stringify(message));
|
|
99
112
|
case 'formatted':
|
|
100
|
-
return beautify(message);
|
|
113
|
+
return limitLogText(beautify(message));
|
|
101
114
|
default:
|
|
102
115
|
return `[${message.type}]`;
|
|
103
116
|
}
|
|
@@ -110,12 +123,13 @@ function createProtoMessageFilter() {
|
|
|
110
123
|
return info;
|
|
111
124
|
});
|
|
112
125
|
}
|
|
113
|
-
function createFileTransport(logDirPath, logLevel) {
|
|
126
|
+
function createFileTransport(logDirPath, logLevel, maxSize, maxFiles) {
|
|
114
127
|
return new winston.transports.DailyRotateFile({
|
|
115
128
|
level: logLevel,
|
|
116
129
|
filename: path.join(logDirPath, 'server-%DATE%.log'),
|
|
117
130
|
datePattern: 'YYYY-MM-DD',
|
|
118
|
-
|
|
131
|
+
maxSize,
|
|
132
|
+
maxFiles,
|
|
119
133
|
format: combine(timestamp({ format: 'YYYY-MM-DD HH:mm:ss.SSS' }), splat(), createFileFormat())
|
|
120
134
|
});
|
|
121
135
|
}
|
|
@@ -127,13 +141,13 @@ function createFileFormat() {
|
|
|
127
141
|
timestamp,
|
|
128
142
|
level,
|
|
129
143
|
event: 'message',
|
|
130
|
-
message
|
|
144
|
+
message: limitLogText(message)
|
|
131
145
|
});
|
|
132
146
|
}
|
|
133
147
|
else if (isLogObject(logObj.message)) {
|
|
134
148
|
const { timestamp, level, message } = logObj;
|
|
135
|
-
return JSON.stringify(Object.assign({ timestamp,
|
|
136
|
-
level }, message));
|
|
149
|
+
return JSON.stringify(Object.assign(Object.assign({ timestamp,
|
|
150
|
+
level }, message), { protoMessage: limitLoggedMessage(message.protoMessage) }));
|
|
137
151
|
}
|
|
138
152
|
return '';
|
|
139
153
|
});
|
package/dist/esm/Logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../src/Logger.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../src/Logger.ts"],"names":[],"mappings":"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"}
|