Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
57e9a6c
[IMP] recording
ThanhDodeurOdoo Sep 22, 2025
f22ceba
fixup
ThanhDodeurOdoo Sep 24, 2025
e5aaa79
[IMP] wip/poc
ThanhDodeurOdoo Oct 21, 2025
acd9ceb
[IMP] rec addr
ThanhDodeurOdoo Oct 23, 2025
4abe114
[IMP] fixup
ThanhDodeurOdoo Oct 23, 2025
e855f75
[IMP] wip
ThanhDodeurOdoo Oct 29, 2025
886f009
[IMP] wip
ThanhDodeurOdoo Oct 30, 2025
358ce98
[WIP] discuss: folder move
ThanhDodeurOdoo Nov 4, 2025
27d7693
[WIP] recording: state broadcasting, updated tests
ThanhDodeurOdoo Nov 4, 2025
a183da5
[WIP] recording: ts version bump, bundle, simpler rec api
ThanhDodeurOdoo Nov 5, 2025
010f54e
[IMP] discuss: wip recording
ThanhDodeurOdoo Nov 5, 2025
b8749e8
[IMP] discuss: better bus types
ThanhDodeurOdoo Nov 5, 2025
9041566
[WIP] fixup deferred
ThanhDodeurOdoo Nov 10, 2025
6dbb1f7
[WIP] recorder API
ThanhDodeurOdoo Nov 12, 2025
e9dbbd4
[IMP] discuss: wip recording task
ThanhDodeurOdoo Nov 12, 2025
0f7fc5e
[WIP] support transcription in recorder.ts
ThanhDodeurOdoo Nov 13, 2025
8b94058
[wip] recording async management spec
ThanhDodeurOdoo Nov 13, 2025
0c48872
[wip] more transcript support
ThanhDodeurOdoo Nov 14, 2025
1c8d058
[wip] more recording task typing
ThanhDodeurOdoo Nov 18, 2025
cf61d0c
[wip] transcription front API
ThanhDodeurOdoo Nov 18, 2025
dd3194b
[wip] update audit fix
ThanhDodeurOdoo Nov 18, 2025
1418dd8
[wip] no window reference in client
ThanhDodeurOdoo Nov 18, 2025
56d2f36
[wip] f
ThanhDodeurOdoo Nov 18, 2025
62c27f1
[wip] session add/remove listeners on recorder
ThanhDodeurOdoo Nov 18, 2025
5bb85bc
[wip] eslint for relative root dir
ThanhDodeurOdoo Nov 18, 2025
4c5b93d
[wip] recorder/task
ThanhDodeurOdoo Nov 19, 2025
e33d90a
[wip] jest config file lint
ThanhDodeurOdoo Nov 20, 2025
c92a06a
[wip] fixup
ThanhDodeurOdoo Nov 21, 2025
ac61218
[wip] private style
ThanhDodeurOdoo Nov 21, 2025
0dddfde
[wip] recording_task/transport lifecycle
ThanhDodeurOdoo Nov 21, 2025
ce8de00
[wip] some fixes
ThanhDodeurOdoo Nov 21, 2025
bc83be8
[wip] rtp abstraction
ThanhDodeurOdoo Nov 22, 2025
44c40cb
[wip] folder creation
ThanhDodeurOdoo Nov 22, 2025
ecc142d
[wip] folder seal error handling
ThanhDodeurOdoo Nov 22, 2025
08a80a2
[wip] timetags
ThanhDodeurOdoo Nov 24, 2025
64e8c42
[wip]
ThanhDodeurOdoo Nov 25, 2025
a6692a3
[wip] media output model
ThanhDodeurOdoo Nov 25, 2025
53cb828
[wip] save file ext, routing interface,...
ThanhDodeurOdoo Nov 26, 2025
aab6a16
[wip] fixup
ThanhDodeurOdoo Nov 26, 2025
4bf4097
[wip] recording path
ThanhDodeurOdoo Nov 27, 2025
5638c54
[wip] version update
ThanhDodeurOdoo Nov 28, 2025
60e9ecc
[wip] fixup
ThanhDodeurOdoo Nov 28, 2025
724d972
f
ThanhDodeurOdoo Nov 28, 2025
297378d
[wip]
ThanhDodeurOdoo Nov 28, 2025
b689663
[wip] recording saved
ThanhDodeurOdoo Nov 28, 2025
2109a14
[wip] recording raw ready
ThanhDodeurOdoo Nov 28, 2025
941b980
[wip] cleanup
ThanhDodeurOdoo Nov 28, 2025
95cae28
[wip] directories
ThanhDodeurOdoo Nov 28, 2025
a677a27
[wip] producer lifecycle
ThanhDodeurOdoo Nov 28, 2025
be697ef
[wip] cleanup
ThanhDodeurOdoo Nov 28, 2025
d4f4826
[wip] fixup, only mkdir if recording
ThanhDodeurOdoo Nov 28, 2025
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
97 changes: 97 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
module.exports = {
extends: [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:node/recommended",
"plugin:prettier/recommended"
],
parserOptions: {
ecmaVersion: 2022,
sourceType: "module",
project: "./tsconfig.json",
tsconfigRootDir: __dirname
},
env: {
node: true,
browser: false,
es2022: true
},
parser: "@typescript-eslint/parser",
plugins: ["@typescript-eslint"],
overrides: [
{
files: [".eslintrc.cjs", "jest.config.cjs"],
parserOptions: {
project: null
}
},
{
files: ["tests/utils/*.ts", "tests/*.ts"],
plugins: ["jest", "import"],
env: {
jest: true,
"jest/globals": true
},
extends: ["plugin:jest/recommended"]
},
{
files: ["src/client.ts"],
env: {
browser: true,
node: false
}
},
{
files: ["src/shared/*.ts"],
env: {
browser: true,
node: true
}
}
],
ignorePatterns: "dist/*",
rules: {
"prettier/prettier": [
"error",
{
tabWidth: 4,
semi: true,
singleQuote: false,
printWidth: 100,
endOfLine: "auto",
trailingComma: "none"
}
],
"node/no-unsupported-features/es-syntax": "off",
"node/no-missing-import": "off",
"comma-dangle": "off",
"no-console": "error",
"no-undef": "error",
"no-restricted-globals": ["error", "event", "self"],
"no-const-assign": ["error"],
"no-debugger": ["error"],
"no-dupe-class-members": ["error"],
"no-dupe-keys": ["error"],
"no-dupe-args": ["error"],
"no-dupe-else-if": ["error"],
"no-unsafe-negation": ["error"],
"no-duplicate-imports": ["error"],
"valid-typeof": ["error"],
"@typescript-eslint/no-unused-vars": [
"error",
{ vars: "all", args: "none", ignoreRestSiblings: false, caughtErrors: "all" }
],
curly: ["error", "all"],
"no-restricted-syntax": ["error", "PrivateIdentifier"],
"prefer-const": [
"error",
{
destructuring: "all",
ignoreReadBeforeAssign: true
}
]
},
globals: {
NodeJS: "readonly"
}
};
82 changes: 0 additions & 82 deletions .eslintrc.json

This file was deleted.

2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,8 @@ The available environment variables are:
- **MAX_BITRATE_OUT**: if set, limits the outgoing bitrate per session (user), defaults to 10mbps
- **MAX_VIDEO_BITRATE**: if set, defines the `maxBitrate` of the highest encoding layer (simulcast), defaults to 4mbps
- **CHANNEL_SIZE**: the maximum amount of users per channel, defaults to 100
- **RECORDING**: enables the recording feature, defaults to false
- **RECORDING_PATH**: the path where the recordings will be saved, defaults to `${tmpDir}/recordings`.
- **WORKER_LOG_LEVEL**: "none" | "error" | "warn" | "debug", will only work if `DEBUG` is properly set.
- **LOG_LEVEL**: "none" | "error" | "warn" | "info" | "debug" | "verbose"
- **LOG_TIMESTAMP**: adds a timestamp to the log lines, defaults to true, to disable it, set to "disable", "false", "none", "no" or "0"
Expand Down
2 changes: 1 addition & 1 deletion jest.config.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ module.exports = {
maxWorkers: 4,
preset: "ts-jest",
testEnvironment: "node",
extensionsToTreatAsEsm: [".ts"],
extensionsToTreatAsEsm: [".ts"]
};
Loading