knotteye
eac5eaa035
Bump version.
...
Add documentation for webchat.
2020-07-30 04:13:07 -05:00
knotteye
cbcd1d8ba8
Document /api/users/live and /api/users/all and modify the documentation format
2020-07-30 02:55:33 -05:00
knotteye
09bf2a8ac1
Add paging and sorting to /api/users/live and /api/users/all calls
2020-07-30 02:49:02 -05:00
knotteye
f7c7f05786
Implement an API call for getting the current stream key.
2020-07-30 01:34:22 -05:00
knotteye
df51432a8f
Fix /api/:user/config not returning all info for an authorized user.
2020-07-30 01:14:33 -05:00
knotteye
db8d9dfe72
Add API function for getting a user's configuration.
2020-07-30 00:45:08 -05:00
knotteye
c745572a7e
Update list of restricted usernames to avoid collision in api
2020-07-30 00:03:05 -05:00
knotteye
fb6538a757
Fix typo and add functions to be implemented.
2020-07-29 03:40:53 -05:00
knotteye
bd40c30114
Add default value for a contact email
...
Add an api function to list a users vods
Document the existing REST API
2020-07-29 03:24:19 -05:00
knotteye
1a9b7be318
Update readme
2020-07-20 04:25:01 -05:00
knotteye
0d2732a876
Update README.md
2020-07-04 15:09:06 +00:00
knotteye
abd45c8346
Only join channels not already joined with twitchClient and ircClient
...
Leave channels we don't need anymore as well.
2020-07-04 09:53:12 -05:00
knotteye
ec57e23e9c
Increment package version
2020-07-04 03:14:46 -05:00
knotteye
ae603ddad6
Normalize discord messages into human-readable plaintext.
2020-07-04 03:09:32 -05:00
knotteye
65894b6f2e
Fix for not transcoding streams which aren't already mp4 encoded.
2020-06-30 06:26:42 +00:00
knotteye
6073781457
Forgot to include twitch chat dependency
2020-06-27 23:45:47 -05:00
knotteye
0bde9e0b86
Update documentation
2020-06-27 23:39:57 -05:00
knotteye
b2759c5298
Update documentation.
2020-06-27 23:27:47 -05:00
knotteye
fc924816df
Increment version.
2020-06-27 22:46:34 -05:00
knotteye
4bd10151f8
Switch from video.js to dash.js, it seems to be more consistent and hiccup less during streams.
...
This means transcoding to HLS is no longer an option.
Also add a bit of JS to reload the stream periodically if it hadn't started when the page was loaded.
That thing spits out errors fucking constantly, so hopefully it won't cause any problems.
2020-06-27 12:11:42 -05:00
knotteye
ee6c902905
Change profile page to use textareas
2020-06-27 11:08:34 -05:00
knotteye
b57e1d48e6
Fix bug where the profile page wouldn't set record flag.
2020-06-27 10:21:00 -05:00
knotteye
4628deec1c
Add VOD management page and the ability to delete the user's own vods
2020-06-27 08:34:09 -05:00
knotteye
0b4a7d6321
Increment version
2020-06-27 07:41:38 -05:00
knotteye
19536d8b84
Add working twitch chat relay
2020-06-27 05:25:40 -05:00
knotteye
29d2090540
Add working IRC integration
2020-06-27 03:23:04 -05:00
knotteye
1ef736ca17
Working discord chat integration
2020-06-27 02:36:45 -05:00
knotteye
c1debc9173
Add basic framework for chat integration code
2020-06-26 12:13:00 -05:00
knotteye
2beffa46fb
Add updateChat function in api
2020-06-26 06:07:33 -05:00
knotteye
190e61557e
Add templates for chat integration UI
2020-06-26 05:32:05 -05:00
knotteye
717d63917c
Fix typo in registration registration query
2020-06-26 04:52:48 -05:00
knotteye
4fb1126c9f
(Theoretically) check for and refresh login tokens on page reload
2020-06-26 04:40:06 -05:00
knotteye
a9f1875234
Add config template for chat integration and db schema
...
No other meaningfull changes (I think)
It's been 7 months since last commit god I hope I didn't break anything.
2020-06-26 04:07:37 -05:00
knotteye
97d4678a0a
Update documentation to match recent changes with config and chat
2019-12-21 17:23:00 -06:00
knotteye
df8c803e25
Fix a bug with socket ids not being recorded or looped through properly
2019-12-21 16:58:40 -06:00
knotteye
a0e89e9b60
Add proper kicking and banning for users with multiple accounts.
2019-12-21 16:16:50 -06:00
knotteye
f7733b9507
Big Refactor
...
Stop using config and toml as dependencies
Stop passing around config variables through function calls
Add config.ts and pull the values you need directly in the files
Remove irc.js for incoming new IRC solution
Rename controller to index because that was stupid
Minor git bullshit with the config folder
Change to yaml as a config format
2019-12-21 08:59:35 -06:00
knotteye
681802dbaf
Bugfix for room bans
2019-12-08 17:18:31 -06:00
knotteye
61deb1afa7
Minor improvements to socket.io chat, including banning and unbanning per room, and spam detection and server bans
2019-12-07 21:23:50 -06:00
knotteye
a0be256a64
Hopefully resolves issues with videojs occasionally not initializing the player
2019-12-07 10:51:26 -06:00
knotteye
8da1310e24
Add adaptive livestreaming config docs.
2019-12-05 18:37:26 -06:00
knotteye
4b1fc5c1fc
Make adapative streaming full configurable
2019-12-05 18:27:29 -06:00
knotteye
3f26790878
Remove extra FS import.
2019-12-05 16:19:07 -06:00
knotteye
76c63d3a94
Set sameSite on Authorization cookie
...
Enable toggleable HSTS
2019-12-05 16:08:50 -06:00
knotteye
8c17149f39
Fix throwing unhandled promise rejection if user doesn't exist in validatePasswordRedirect user to /profile on successful login
2019-12-05 15:03:27 -06:00
knotteye
be38b873eb
Add full support for multiple connections with one account in Socket.IO
...
Add LIST command
2019-12-05 14:16:07 -06:00
knotteye
661d953919
Fix a bug with user pages displaying incorrectly in chrome
2019-12-04 18:48:02 -06:00
knotteye
11eee2ab89
Bump version to 0.5.1
2019-12-04 17:52:49 -06:00
knotteye
5a52308503
Stop using dash.js, videojs supports it natively.
...
Modal messages also work again
Turn off watch in nunjucks config (oops)
Change some redirects based on logged in status.
2019-12-04 17:52:11 -06:00
knotteye
74c90114c7
Bump Version
...
I still don't understand pre-release versioning.
2019-12-03 19:58:40 -06:00
knotteye
25cf8a37a2
Big Commit!
...
Seriously, this one is pretty massive. Satyr now has proper sessions in the browser (like a real website), and a lot of changes were made.
API Endpoints were changed from requiring a username and password to requiring a valid JsonWebToken, obtained from /api/login
Satyr will generate a PEM format key for JWT signing and verification on startup if it can't find one at config/jwt.pem
This file was added to .gitignore
Two new depencies: cookie-parser and jose, for reading and signing JWTs.
Refactored http.ts into mutiple functions, with a couple helper functions related to cookies and JWT decoding and verification. Socket.IO chat will also automatically log in users with a valid JWT.
Refactor api.ts to reflect new requirements from endpoints.
Minor bugfix in server.ts so we don't throw an uncaught exception when rejecting a stream with an invalid key.
Transcode options readded to default.toml. They do nothing and they are not sane defaults. Both of those things are in the todo list.
2019-12-03 19:51:14 -06:00
knotteye
31426a0c41
Fix a bug where we treated local clients the same as foreign ones
2019-11-30 14:15:31 -06:00
knotteye
d4f92c33ff
Update version to 0.4.4
2019-11-28 09:33:52 -06:00
knotteye
daa2ec7a71
Refactor stream key handling
...
Instead of redirecting with FFMPEG, change client streamPath to the privateEndpoint/StreamKey
Hopefully this is silent, because if it isn't it's leaking the stream key to every client.
2019-11-27 22:18:55 -06:00
knotteye
a521583e92
Change systemd service description
2019-11-27 22:07:20 -06:00
knotteye
d9b3333f21
Clean up commented out code
...
Discard messages with only whitespace in socket.io
2019-11-25 12:55:55 -06:00
knotteye
cf71e663de
Handle temporary data from database better instead of modifying njkconf in place.
2019-11-25 11:38:12 -06:00
knotteye
f7d9c78d09
Move transcode config to mkdir callback
2019-11-25 09:36:50 -06:00
knotteye
7db878be8c
0.4.3
2019-11-24 20:26:45 -06:00
knotteye
1f3504f698
Fix a bug where streams would crash upon FFMPEG exceeding maximum child_process buffer
...
Change scripts to automatically build before serving
Move typescript to dependencies
Check if the stream is ready to transcode to MPEG-DASH programmatically instead of waiting for 5 seconds
Use session.isLocal instead of matching session.ip against some strings
(session.isLocal does that internally but at least this way looks prettier)
2019-11-24 20:25:19 -06:00
knotteye
239cd252a2
Bump version to 0.4.2
2019-11-16 15:37:19 -06:00
knotteye
7db22a974d
Fix hardcoding of ffmpeg binary
2019-11-16 15:35:30 -06:00
knotteye
efc087c7a3
Fix systemd service to restart properly
2019-11-16 15:23:42 -06:00
knotteye
1895992326
Bump version to 0.4.1
2019-11-16 14:45:09 -06:00
knotteye
93abcb0538
Move from exec to execFile to avoid any potential security issues.
2019-11-16 14:42:26 -06:00
knotteye
ae016dd1b4
Bump version to 0.4.0
2019-11-16 11:39:29 -06:00
knotteye
7983b60f8d
Switch from transcode server in node-media-server to spawning ffmpeg processes
...
Change config to reflect that
ffmpeg processes cleanup after themselves even on SIGINT now, cleanup.ts only cleans the database now
Adaptive livestreaming!
2019-11-16 11:38:28 -06:00
knotteye
f8b197502a
0.3.2
2019-11-10 14:21:01 -06:00
knotteye
f5f9d1f8e6
Play MPEG-DASH by default.
...
Add dash.js and videojs-dash files
2019-11-10 10:29:15 -06:00
knotteye
4e19bdc2f5
Ignore empty messages in socket.io
2019-11-10 09:07:23 -06:00
knotteye
73e91783e3
Fix handling of usernames with capital letters in the web page.
...
Add updating and backup/restore instructions.
2019-11-10 08:27:00 -06:00
knotteye
97b1132ef0
Fix typo on new stream key page
2019-11-09 17:22:32 -06:00
knotteye
297aeb3d4a
Move SIGINT listener to connect function to avoid socket does not exist errors
...
Add conditional to disconnect peering
2019-11-05 17:48:12 -06:00
knotteye
9076b1817b
Add contributors file
...
Add irc.js for peering with IRC
Change default to reflect that
Add basic peering.
Implemented:
register/unregister a user
messages
join/part
Not implemented/TODO:
Kill, kick, change nick
It is likely that the web chat will not have full feature parity with clients connecting directly to IRC.
2019-11-05 17:22:52 -06:00
knotteye
182b7e2f5f
Add help page, change base links. Turn off watch in nunjucks config.
...
I do not know if that made it master, hopefully not.
2019-11-05 16:30:15 -06:00
knotteye
61bf54de95
Add cleanup script to fix any problems arising from restarting the server mid-stream.
...
This may cause further problems if the user manages to reconnect before the cleanup script has finished, but the server *shouldn't* start listening until after the script is done.
Increment version I guess, I don't really know how versioning works.
2019-10-22 18:26:00 -05:00
knotteye
8cc8083361
Fix typo in usage instructions.
2019-10-22 17:54:57 -05:00
knotteye
7c0b753723
Add usage guide
2019-10-21 14:18:32 -05:00
knotteye
71c739322b
Move readme because gitlab doesn't like it.
2019-10-20 16:40:19 -05:00
knotteye
8771411352
Add more detailed installation instructions
...
Add example systemd service
2019-10-20 16:30:23 -05:00
knotteye
7ca1e9023c
Fix a typo in db setup script.
2019-10-20 16:10:35 -05:00
knotteye
eba441b624
Add working Socket.IO based chat
...
Bump version I guess.
2019-10-20 16:09:28 -05:00
knotteye
1afe462c0b
Removed old IRC implementation
...
User accounts are now only for streamers, update CLI, API, and config to reflect that.
Fixed a bug with registration in api.ts
Made http port configurable
Added beginnings of socket.io chat server
Possibly more, I took a break in the middle of this commit.
2019-10-18 18:43:01 -05:00
knotteye
fad832fe38
Remove long winded installation guide
...
Add config guide
Minor changes to default config
2019-10-05 15:11:03 -05:00
knotteye
cd8b9780d7
Bump package version.
2019-10-05 14:40:51 -05:00
knotteye
f9e4a7a5c6
I don't even know.
...
Filled out API for user management
Proper escaping of user input for SQL queries (stream keys aren't user input)
Filled out frontend with profile management, vods, etc.
I don't remember there's probably more, fuck.
2019-10-05 14:34:57 -05:00
knotteye
eefa7c8dc7
Added videojs files and CSS.
2019-09-28 21:46:58 -05:00
knotteye
b0533f973b
Added some api functions, an express server for the API and nunjucks
...
Added nunjucks templates for frontend pages.
2019-09-28 21:44:55 -05:00
knotteye
085dd02148
Changed init functions to be more consistent.
...
Added setup script and templates for config and database setup.
Fixed typo in tsconfig.
2019-09-26 14:43:24 -05:00
knotteye
d1cd2815e4
Fixed headers. Oops.
2019-09-24 18:42:13 -05:00
knotteye
5958f8c0ff
Moved readme, started documentation.
2019-09-24 18:35:11 -05:00
knotteye
68f9866c16
Added cli for user management, abstracted some database queries into handler functions.
2019-09-24 17:29:37 -05:00
knotteye
abcd6787ca
Worked out bugs in config and checking if localhost
...
Added comments to server.ts to improve readability
2019-09-23 15:59:07 -05:00
knotteye
2cd3f281c5
Fix typo in default config.
2019-09-23 14:33:46 -05:00
knotteye
27eafbd71d
Added runtime config.
2019-09-23 14:27:01 -05:00
knotteye
fcff93c533
Removed executable, added 'npm start' script.
2019-09-22 17:12:49 -05:00
knotteye
935b850bcd
Hooked up server.ts to database, it now validates, redirects, and records based on database queries.
...
Added setup script for database.
Added database.ts to create and manage a pool of connections. Possibly abstracting query logic in the future.
Updated controller to instantiate database.ts.
2019-09-22 16:33:18 -05:00
knotteye
577612cee5
Moved site dir
...
Added IRCD logic
2019-09-20 13:02:29 -05:00
knotteye
d05c59c896
Added executable
...
Added controller file to launch other processes
Moved compile dir to build
2019-09-20 11:09:15 -05:00
knotteye
4309da7c39
Added setup script for inspIRCd
...
Added bot script for registering and unregistering permanent channels
TODO: inspircd config template
2019-09-18 16:46:25 -05:00