Commit Graph

88 Commits (master)

Author SHA1 Message Date
Noah b5bbbde784 Update the About page to remove Safari/iPad notes 2024-05-09 21:24:03 -07:00
Noah b8b53c65f3 Color improvement in dark theme 2024-04-13 14:55:03 -07:00
Noah 810115d20c Update documentation 2023-09-25 17:29:44 -07:00
Noah cbfbcd768f Chat Setting Menu + Various Tweaks
* In place of the Help and Settings buttons, add a hamburger menu
  dropdown and place the links under there.
* Also in the dropdown is Close All Cameras and Mute All Cameras (if you
  have any cams open; the links are hidden if not)
* Also in the dropdown add a Logout button that just links to a new
  /logout route in order to unload the page and align with some users'
  expectations (not knowing closing out of the chat page was enough to
  log out of the room before)
* Bring back "(offline)" indicators when a user is no longer in the
  room.
2023-09-08 18:46:36 -07:00
Noah 6e2aa517f5 Support for VIP users via JWT Auth 2023-09-03 12:08:23 -07:00
Noah f65f653430 Quick mute all sounds checkbox 2023-09-01 17:11:17 -07:00
Noah 3404373a4b Disable autocomplete on the message box 2023-08-31 17:34:40 -07:00
Noah 0acb729175 Update admin icon from gavel to peace 2023-08-30 13:31:21 -07:00
Noah 4cbc919793 Small tweaks 2023-08-29 16:44:54 -07:00
Noah fd82a463f3 Deadlock detection, DND, and Frontend Fixes
* Deadlock detection: the chatbot handlers will spin off a background goroutine
  to ping DMs at itself and test for responsiveness. If the echoes don't return
  for a minute, issue a /api/shutdown command to the HTTP server to force a
  reboot.
* New admin API endpoint: /api/shutdown, equivalent to the operator '/shutdown'
  command sent in chat. Requires your AdminAPIKey to call it. Used by the chatbot
  as part of deadlock detection.
* Adjust some uses of mutexes to hopefully mitigate deadlocks a bit.
* Do Not Disturb: if users opt to "Ignore unsolicited DMs" they will set a DND
  status on the server which will grey-out their DM icon for other chatters.
* Bring back an option for ChatServer to notify you when somebody begins watching
  your camera (on by default).
* Automatically focus the message entry box when changing channels.
* Lower webcam resolution hints to 480p to test performance implications.
2023-08-29 15:54:40 -07:00
Noah 59fc04b99e Reduce Notification Spam; Unsolicited DMs Option; New SFX
* New "Misc" tab added to the Settings modal with options to reduce spam
  and improve privacy.
    * Opt in (or out) for public channel join/leave presence
      notifications
    * New option to auto-ignore unsolicited DMs
* New sound effects for Watched and Unwatched (your camera)
    * Reduces spam so ChatServer doesn't need to tell you every time
      somebody opens your camera.
* New spinner icon when opening someone else's camera.
    * If their cam takes a while to appear, the video button shows a
      spinner icon as feedback so we avoid ChatClient spam giving you
      acknowledgement of the cam trying to open.
2023-08-28 22:46:40 -07:00
Noah c4f90fadd2 Message padding fix 2023-08-20 21:13:46 -07:00
Noah 8e25145bec New status options: Studying and Gaming 2023-08-19 11:16:20 -07:00
Noah 802f4d744c Attempt to show webcam devices before initial broadcast 2023-08-17 19:15:26 -07:00
Noah 664eeaa068 Refresh video devices on demand 2023-08-17 18:45:43 -07:00
Noah 0a4fa00087 Mouseover tooltips for message buttons 2023-08-16 22:42:51 -07:00
Noah 74aa9527cc UX improvement for send message button 2023-08-16 22:26:02 -07:00
Noah 9cbf9e664d Setting to collapse image shares by default 2023-08-14 19:59:35 -07:00
Noah 591775a34d Fix tooltip for emojis 2023-08-13 23:09:11 -07:00
Noah 2cfabaf251 Don't show report button on own messages 2023-08-12 23:39:51 -07:00
Noah 58ca6a818a CSS class fix 2023-08-12 23:11:16 -07:00
Noah bb8fa33493 Some fixes 2023-08-12 23:09:46 -07:00
Noah 29cb7c5cc9 Fix emoji popup 2023-08-12 22:42:04 -07:00
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 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 51905734e7 Bugfix on unMutualVideo on who list update 2023-08-11 18:02:29 -07:00
Noah 63889b6c6a Option to auto-mute your video by default 2023-08-11 17:11:32 -07:00
Noah 4ee6c106d2 Add live camera settings to the chat settings modal 2023-08-11 16:51:17 -07:00
Noah 69abf26e80 New status options + Tweak freeze video timeout 2023-08-10 20:01:38 -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 a6866bd129 Order the Who List by Logged-in Time 2023-08-06 21:06:27 -07:00
Noah 52b1271591 Emojis and gender flags for users 2023-08-05 19:38:04 -07:00
Noah 4fbf3e7d75 CSS fix 2023-08-05 12:16:15 -07:00
Noah f59a1a6759 Ordering options for the Who List 2023-08-05 12:15:16 -07:00
Noah 029f25029d Cached Blocklist from your website
* New API endpoint: /api/blocklist where your site can pre-deliver muted
  username lists for users before they enter the chat.
* Image sharing in DMs is allowed if either party is an operator.
2023-07-30 10:32:08 -07:00
Noah f3517bec87 No pictures shared over chat DMs 2023-07-27 22:29:56 -07:00
Noah fbae93d4f9 DMs disclaimer banner 2023-07-27 20:40:16 -07:00
Noah d80f67dd1e Increase idle threshold to 5 minutes 2023-07-23 15:49:04 -07:00
Noah e111899404 Spit and polish
* Add a scrollback buffer option to the chat Settings to trim room history
  so your browser can manage its memory usage
* Update the wording that ChatServer sends to users when the /nsfw command
  has been used on them
* Fix the ordering of active DMs for Chromium browsers so the most recently
  updated DM thread moves to the top of the list
* Show an indicator on videos whether the person you watch also watches
  you back
* Fix the "X" button on the photo modal not functioning correctly
2023-07-22 18:30:45 -07:00
Noah 75c7511410 Kick off conflicting usernames + Frontend mobile fixes
* When JWT tokens are used to join the chat and the username conflicts:
  instead of renaming the new user to add a "2" it will disconnect the
  original login (sending a message that they have signed in somewhere
  else and are logged out now)
* When disconnected the text entry box will be greyed out.
* Improvements for the mobile user experience: if you're viewing the
  chat history panel and have unread messages or DMs, a number indicator
  appears on the channels button. It is grey for public channel messages
  or red if any of them are DMs
* Fix the emoji picker drop-down on the first messages of a DM thread
2023-07-17 20:38:07 -07:00
Noah 55b17f62c4 Add device picker for webcams and microphones to the settings modal 2023-07-09 12:33:02 -07:00
Noah 3a334a8d68 Remove alt text on avatars in case of broken images 2023-07-08 10:52:12 -07:00
Noah b6881919ff Take back emojis and other small tweaks 2023-07-01 11:39:08 -07:00
Noah 0612f76979 Can click an emoji to upvote it 2023-06-30 21:55:08 -07:00
Noah f985b0cf2b New emojis 2023-06-30 21:48:09 -07:00
Noah 5f4b14ecc4 Emoji reactions 2023-06-30 20:00:21 -07:00
Noah 2445d45d3f Video Status Bitflags + Improvements
* Consolidate all the Video flags (active, nsfw, mutual, mutualOpen)
  into a bitmask flag (single integer)
* New video flag for when the source has muted their video, to show a
  crossed out grey mic on their camera for other chatters
* Bugfixes around syncing the mute state for self and other videos when
  videos are opened, closed and opened again
* Profile pictures on the DMs list
2023-06-30 18:42:40 -07:00
Noah b19a4821e4 Message Takebacks 2023-06-24 13:08:15 -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