Commit Graph

283 Commits

Author SHA1 Message Date
0e46d6e679 Manual takeback command for ops 2024-12-08 22:55:59 -08:00
9f64c6907b Ideal vs. Max constraints for webcams
* Set 640x480 as the ideal constraint for most users.
* But if their webcam physically can't output that resolution, allow
  them to choose the nearest up to 1280x720.
2024-12-08 17:46:50 -08:00
1b43948a9e Suppress confusing ChatServer message sent to booted admins 2024-12-04 21:27:37 -08:00
a4a04d57cd Fix speaking border on popped-out video 2024-11-17 20:39:57 -08:00
70d71611e9 Speaking detection with hark.js 2024-11-17 20:32:16 -08:00
98bf0d9e84 Fix bug in mute user modal 2024-10-27 12:29:01 -07:00
f2629ecb06 Diagnostic feature for the dark video detector 2024-10-19 13:49:29 -07:00
134f9218a8 Add webcam troubleshooting tips to the About page 2024-10-17 20:13:08 -07:00
358e8d5aec CSS fix 2024-10-04 23:32:28 -07:00
9cd6ee98a4 Tweak CSS for upvoted emoji reactions 2024-10-04 23:23:45 -07:00
671857952d CSS fix 2024-10-04 22:56:20 -07:00
96e1a6efa4 Button to show who reacted (for mobile) 2024-10-04 22:51:16 -07:00
89ae43b78a Disable right-click on video 2024-10-04 22:23:22 -07:00
9e7466f967 Disable dark video detector 2024-10-04 21:41:48 -07:00
095cf1d4ea Animate the video watermark 2024-10-04 21:39:19 -07:00
a3d0cc95f9 Cleanup debug message 2024-10-02 20:35:52 -07:00
f802de88ce Watermark QR code over webcam feeds to deter screen recording 2024-10-02 20:33:57 -07:00
a70d6d54b3 Fullscreen: bring video control buttons along 2024-10-01 21:32:54 -07:00
3a7204178c Various fixes regarding red cameras
* When an admin has marked your camera 'red' for you, the Explicit button at the
  top of the page now will require *two* clicks if the user wants to set their
  camera back to blue:

  On first click, they will get a red ChatClient message explaining that their
  cam was most-recently marked red due to a server action (such as a moderator
  flagging their cam for them). If they really mean to mark their camera blue,
  they are instructed to click it a second time to confirm.
* This behavior only occurs when the most recent NSFW setting was dictated by
  the server (e.g. a 'me' event disagreed with the page's local NSFW setting).
  The flag is cleared any time the user themself toggles the flag, or when the
  first ChatClient warning after a server event is shown.
* The explicit camera settings in the broadcast modal have been rearranged and
  reworded.
* Add an 'advanced' webcam feature to automatically broadcast in the future on
  page load. The option is only available in the Chat Settings 'Camera' tab
  after you are already broadcasting (or rather: when a list of video devices
  have become available to the page, indicating the user has possibly granted
  permission already).
2024-09-21 15:48:47 -07:00
971a6d800d Customizable error strings for moderation rules 2024-09-20 20:33:42 -07:00
16b148fc92 JWT Token Chat Moderation Rules
Add support for your website to apply chat moderation rules to users
as they log onto the chat room.
2024-09-19 17:29:08 -07:00
bbd6836c68 Enter/Escape keys to control AlertModal 2024-09-18 22:31:58 -07:00
7f88439c84 Semitransparent video icons until mouseover 2024-09-12 18:55:45 -07:00
9b8e7dc440 Vue modals to replace window.alert/window.confirm
Apparently some iPad browsers were having their local webcam freeze
after a window.confirm prompt was shown. This replaces all uses of
window.confirm/window.alert with an in-app modal.
2024-09-10 21:24:52 -07:00
d4b69311ae Blockable admin user support 2024-09-10 14:50:47 -07:00
49712ee966 Add install instructions 2024-06-21 22:36:43 -07:00
72b6c45583 Add playsinline to video elements for iPhone 2024-06-21 22:03:02 -07:00
4c9d207b62 Sound effect for public channel @mentions 2024-06-19 13:20:19 -07:00
147315fee2 Video z-index workaround for Safari
When the Safari browser puts a webcam video full-screen and then
returns, the z-index of the video was higher than the buttons and
controls normally overlaid on top of it.

Add a z-index:1 to the video controls to keep them on top after
returning from full screen. Similar: for popped-out draggable videos,
adding a z-index:1 allows the video to correctly sit on top of docked
videos without the docked video controls (zi:1) rendering above the
popped-out video when you overlap them.

Note: the z-index:1 is applied to popped-out and video controls, any
other combination (e.g. 1 for popped-out and 2 for controls) caused
controls of docked videos to render on top of popped-out ones when they
overlapped.
2024-06-13 14:28:29 -07:00
b011e36ddf Adjust dark webcam threshold 2024-05-27 20:08:32 +00:00
a536862a91 Dark video detection
* Add local detection for users who are broadcasting dark (e.g. mostly
  or completely black) video feeds from their local device.
* Every 5 seconds while the webcam is active, the average RGB color is
  sampled. If the average color value remains below 60 (out of 255) for
  two consecutive samples, the camera is stopped automatically.
2024-05-18 19:09:11 -07:00
fd36d09727 Update README for moderator commands 2024-05-17 20:47:19 -07:00
9c77bdb62e New Op commands and fixes with blocking admin users
Add moderation rules:

* You can apply rules in the settings.toml to enforce moderator restrictions on
  certain users, e.g. to force their camera to always be NSFW or bar them from
  sharing their webcam at all anymore.

Chat UI improvements around users blocking admin accounts:

* When a main website block is in place, the DMs button in the Who List shows
  as greyed out with a cross through, as if that user had closed their DMs.
* Admin users are always able to watch the camera of people who have blocked
  them. The broadcaster is not notified about the watch.

New operator commands:

* /cut username: to tell a user to turn off their webcam.
* /unmute-all: to lift all mutes on your side, e.g. so your moderator chatbot
  can still see public messages from users who have blocked it.
* /help-advanced: moved the more dangerous admin command documentation here.

Miscellaneous fixes:

* The admin commands now tolerate an @ prefix in front of usernames.
* The /nsfw command won't fire unless the user's camera is actually active and
  not marked as explicit.
2024-05-17 17:15:48 -07:00
b74edd1512 A background graphic for videos to detect broken connections 2024-05-15 19:42:51 -07:00
b82e8f651b Don't count unread messages for DebugChannel 2024-05-13 22:28:38 -07:00
747f4fd5d4 Let channels configure whether to permit photos 2024-05-13 18:51:54 -07:00
745c282650 Bugfix in isOp function 2024-05-10 22:24:07 -07:00
e70b439cdd Admin command buttons in the profile modal 2024-05-10 21:32:32 -07:00
b5bbbde784 Update the About page to remove Safari/iPad notes 2024-05-09 21:24:03 -07:00
f36c83dbcc Add receive-only transceivers to remove Apple compat mode
* WebRTC functionality is now 100% working as intended for Safari and
  iPad browsers!
* The legacy WebRTC API had properties like offerToReceiveVideo
  available on createOffer(), to set up a receive-only channel, but the
  modern WebRTC API had removed these and Safari only supports the
  modern API.
* The modern solution for the same feature is to add a recvonly
  transceiver to the connection in place of offering a local video/audio
  stream to share.
2024-05-08 12:44:15 -07:00
f094213a34 Improve WebRTC connection for Safari browsers 2024-05-07 20:54:13 -07:00
b8b53c65f3 Color improvement in dark theme 2024-04-13 14:55:03 -07:00
3424be2f4d Clear DMs history button 2024-04-11 23:28:35 -07:00
d510ac791f Click names in video feeds to open their profile card 2024-04-09 17:57:37 -07:00
9932cb5a2c Fix DM buttons on light theme 2024-04-07 11:56:29 -07:00
93c4e12680 Theme fix for emoji picker popup 2024-04-06 16:59:23 -07:00
a0786b2fa9 At-mention background on dark theme 2024-04-06 16:03:30 -07:00
bef135fbd6 Background color fix on DMs 2024-04-06 16:01:32 -07:00
ed82920de9 Dark mode color tweaks 2024-04-06 15:54:37 -07:00
92a376786d Update to Bulma CSS 1.0
* Update the CSS and add a theme selector to the Chat Settings to force a
  light or dark mode theme (default is automatic).
2024-04-06 14:35:52 -07:00