Commit Graph

54 Commits (fb11295168040c25ad50031210c7d2f4d668d63d)

Author SHA1 Message Date
Noah fb11295168 Re-sign JWT tokens for safer server deployments 2023-04-19 19:55:39 -07:00
Noah d6860160f4 Padding fix for message UI 2023-04-18 22:34:45 -07:00
Noah 219413ae6d Display names and WIP multiple camera support 2023-04-18 22:18:12 -07:00
Noah 2c2d140e57 Skip non-auth users from Who List 2023-04-01 23:44:15 -07:00
Noah 063b3c2f04 Bugfix when recipient has camera tagged nsfw by the operator 2023-04-01 22:02:53 -07:00
Noah 45ab63cfba Remember video mutality prefs on localStorage 2023-03-31 20:25:53 -07:00
Noah 4f61b8dc1c Slashed out video icon if mutual and you can't follow 2023-03-31 20:12:20 -07:00
Noah 4a2fc9c923 Sort the WhoList + Mutual Video options
* The who list now sorts alphabetically instead of random
* New user controls when they share video:
  * Require users to also be sharing before they open ours
  * We auto-open a viewer's video when they open ours
2023-03-31 19:46:42 -07:00
Noah 3f6e2193c8 Disable WebSocket compression 2023-03-31 12:40:55 -07:00
Noah 4466bb0ef5 Revert "Disable WebSocket compression and see if it helps with Safari"
This reverts commit f3354f2f1c.
2023-03-31 12:40:15 -07:00
Noah f3354f2f1c Disable WebSocket compression and see if it helps with Safari 2023-03-31 12:36:49 -07:00
Noah 541dd917c5 Lower connect retry limit 2023-03-30 21:26:45 -07:00
Noah dd9f4b4dd4 Bugfixes with user status 2023-03-28 18:34:50 -07:00
Noah 2e9c02f84e Bugfix 2023-03-28 18:12:49 -07:00
Noah e69449124e Chat status updates 2023-03-28 18:09:13 -07:00
Noah 3560e63096 User status and idle detection 2023-03-27 21:13:04 -07:00
Noah 75fbed4a4d YouTube link embeds 2023-03-24 22:47:58 -07:00
Noah b3551cbe9a Font size options 2023-03-24 22:10:44 -07:00
Noah ea4c597cbd Auto-scroll checkbox 2023-03-24 21:56:40 -07:00
Noah 5c311da521 Add WebSocket protocol docs 2023-03-23 21:13:26 -07:00
Noah 6a2657ad49 Minor style fix 2023-03-22 20:27:32 -07:00
Noah 4d842247e6 Minor style fix 2023-03-22 20:26:42 -07:00
Noah c5c8d08c7a Boot and Mute
* Users can now boot viewers off their camera. From the viewer's POV the
  booter has just turned off their camera and it will remain "off" for
  the remainder of the booter's session.
* Users can now mute one another: if you mute a user, you will no longer
  see that user's messages or DMs; and the muted user will never see
  your video as being active (like a boot but revokable if you unmute
  later).
2023-03-22 20:21:04 -07:00
Noah 08b8435448 Style fix 2023-03-21 21:59:02 -07:00
Noah d819a1181d Photo sharing support 2023-03-21 21:29:24 -07:00
Noah a23f5080d5 Skip unread indicators for ChatServer messages 2023-03-16 19:02:59 -07:00
Noah 368902e801 Draggable resizable video panels 2023-03-13 21:31:34 -07:00
Noah 5f2456103b Style fix for videos: wrap, not scroll 2023-02-28 15:32:14 -08:00
Noah 4397006186 Stringify WebRTC candidate/sdp payloads 2023-02-24 17:42:38 -08:00
Noah ac55fc2c50 Experiment to see if iOS devices can connect better w/ JWT auth 2023-02-24 16:47:28 -08:00
Noah 03c3dd4f2e Don't try to reconnect to chat forever 2023-02-19 21:36:36 -08:00
Noah 77a376452b Flesh out the help page a bit more 2023-02-12 16:43:35 -08:00
Noah b02ad52f8f Externalize links sent in chat 2023-02-11 16:02:48 -08:00
Noah 15ebc42bd3 NSFW Cameras and Moderator Commands 2023-02-10 22:46:39 -08:00
Noah b966f85ecc Spit and polish
* Track the window focus/blur events. Leaving the tab while in a channel
  now means you may still hear sound effects in that channel.
* Add a CORS JSON API /v1/statistics to get details from the server
  about who is online. The CORSHosts whitelist in the settings.toml
  limits domain access to the endpoint.
2023-02-09 23:03:06 -08:00
Noah f7b9e026a0 CSS fix for Safari 2023-02-08 21:30:01 -08:00
Noah be2fc0c026 Safer AudioContext access 2023-02-08 21:23:08 -08:00
Noah a55b4b2b49 A bit more logging to debug WebSocket issues 2023-02-08 20:01:06 -08:00
Noah b82ca3d34b Add demo link to README 2023-02-06 15:40:27 -08:00
Noah ca0ad66006 Default WhoList icons for guest users 2023-02-06 15:38:14 -08:00
Noah 19d576783d Style fixes and more README documentation 2023-02-06 15:34:10 -08:00
Noah 5456c88e70 Two-channel WebRTC for watching each other 2023-02-06 15:02:23 -08:00
Noah 11cd2c821b Add screenshot and update README 2023-02-06 14:21:08 -08:00
Noah 8a639109b2 Spit and polish 2023-02-06 13:52:05 -08:00
Noah e84cc146ad Cleanup JS console logs 2023-02-06 13:33:09 -08:00
Noah 9487595e04 Timestamps, Sound Effects & Love 2023-02-06 13:27:29 -08:00
Noah 4810d95a65 Cleanup 2023-02-05 22:16:36 -08:00
Noah d8de60c990 Volume Controls, Mute/Unmute Video
* Added a top panel to put your video controls in.
* Broadcaster can mute or unmute their own audio input.
* When viewing others' cams, buttons appear to control their video:
  * Their username is displayed in the corner.
  * Mute/unmute button to silence their audio.
  * "X" button to close their camera.
* Button to show what viewers are currently watching your camera.
* Add an "About" page and config for app branding.
* Add dark theme CSS for prefers-dark browsers.
2023-02-05 20:26:00 -08:00
Noah 1ecff195ac JWT Token-based Authentication
* Add support for JWT tokens to authenticate users from your external app.
* JWT backed users can have profile pictures, profile URLs, and operator
  status (admin). Note that no operator features exist yet.
* Add WelcomeMessages to settings.toml for default ChatServer messages to
  write to each public channel directed at a new user logging in.
* Markdown support for chat messages!
2023-02-05 17:42:09 -08:00
Noah 8f60bdba0e Spit and polish
* Add configuration system and default public channels support
* Add support for multiple channels and DM threads with users,
  with unread badge indicators. DMs rearrange themselves by
  most recently updated on top.
* Responsive CSS to work well on mobile devices.
2023-02-05 00:53:50 -08:00