Commit Graph

31 Commits (05eb852bb99e173d1a71f3ac7b94f0a3f1b8847f)

Author SHA1 Message Date
Noah 05eb852bb9 Webhooks and Report Users
* Added support for Webhooks and you can configure a Report Message hook
  to let users report messages on chat.
* Add /reconfigure command to dynamically reload the server
  settings.toml
* TODO: documentation for the webhooks.
2023-08-12 21:35:41 -07:00
Noah e7e1fc3d5b CSS fix 2023-08-11 18:59:41 -07:00
Noah f7f188dde9 Flexbox CSS fixes for video panel 2023-08-11 18:52:24 -07:00
Noah f8a1bed564 More status options and fixes 2023-08-11 18:37:33 -07:00
Noah b3d4b375ed Video freeze detection + Other tweaks
* Color code usernames on video windows to be blue or red depending on
  their local cam explicit setting
* Attempt to detect freezes on RTCPeerConnection videos by registering a
  video onmute handler. If a freeze is detected, show a cyan mountain
  icon by their name. Clicking the icon will re-connect their video.
* Update the video buttons on the Who List to always re-connect video
  instead of toggling it opened and closed. The X buttons on videos are
  now how you close a video.
2023-08-08 17:51:52 -07:00
Noah 52b1271591 Emojis and gender flags for users 2023-08-05 19:38:04 -07:00
Noah f59a1a6759 Ordering options for the Who List 2023-08-05 12:15:16 -07:00
Noah 6724792ba0 More emojis and font size options 2023-07-09 13:41:40 -07:00
Noah b6881919ff Take back emojis and other small tweaks 2023-07-01 11:39:08 -07:00
Noah f985b0cf2b New emojis 2023-06-30 21:48:09 -07:00
Noah 3bad23b3f6 Dark theme fix 2023-06-30 20:04:28 -07:00
Noah 5f4b14ecc4 Emoji reactions 2023-06-30 20:00:21 -07:00
Noah a797bc45da Spit and polish
* Add a distinctly colored title and background for DM threads apart
  from the public channels
* On the Who List, the profile picture is clickable to open profile
  links
* Fix auto-scrolling issues: it won't autoscroll if the new message was
  in a different channel, and when toggling between channels always
  scroll back to the bottom of that channel
2023-06-24 11:12:02 -07:00
Noah da29117741 Disable pull-to-refresh on mobile web browsers 2023-06-16 17:45:48 -07:00
Noah 58264515f9 Pop-out draggable video support 2023-04-19 22:00:31 -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 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 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 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 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 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
Noah 4f93c27651 Progress on Chat Server
* Reworked full screen CSS layout for the chat.html, still using Bulma
  components with some custom CSS Grid.
* Duplicate username handling: server can push a new username to change
  the client's selection.
* Who List sync between clients.
* Local video casting works so far - plays back your camera in the local
  feed. Your video broadcasting boolean is synced to backend, which
  lights up the video button in the Who List.
2023-01-26 20:34:58 -08:00