juniormonkey / oddchatter Goto Github PK
View Code? Open in Web Editor NEWLicense: Apache License 2.0
License: Apache License 2.0
Might be cool to have the chat window pop out, or as a pop-up over a youtube tab, or something. Chrome extension? Who knows.
🥂 =a toast
We'll need to decide what sound/video to play. more applause perhaps?
repro steps:
Steps to reproduce:
During MISTAKES WERE MADE, the chat window was described as "janky on scroll-up". Other feedback observed that the messages were hard to keep up with, since it jumped to the bottom whenever a new one came in, so you couldn't scroll up to read old messages.
We should fix that. Probably we should still scroll to the bottom when the user sends a new message themselves. Or maybe an explicit button to jump to the bottom when a user has scrolled up.
We should do some deduplicating of recent messages before writing to the DB.
Keep track of current chat population, and make the callback thresholds auto-setting as a fraction of population.
During MISTAKES WERE MADE, '4' seemed to work pretty well for ~100 people.
sometimes the text wraps awkwardly.
Or perhaps transform into something else? Just a text callout?
It would be nice to have a separate page for admin tasks, eg:
chat doesn't reliably scroll to the bottom now.
Occasionally we have a curator introduce a new callback just for this salon. Potentially we could reserve one callback button for the "wildcard", which (with a curator's forewarning!) could be configured to a once-off callback for individual salons? This would need:
If you log into a salon in progress, the chat starts at the top of the event and doesn't offer you the "jump to latest" button. You have to go scroll to the bottom to find it.
instead of storing the timestamp in the DOM, and doing insertion sort by DOM traversal, let's use the JS Message object (or a map thereof) to keep the messages in order.
When we had the long interactive onboarding script, we were limited to playing only the callback sounds that the onboarding script triggered - so we gave each callback a single audio element, and played that no matter which video was picked.
Now that we are initializing all the callback sounds simultaneously on the "accept code of conduct" click, we can initialize an arbitrary number of sounds, so there's nothing stopping us playing the sound that matches the randomly selected video. We should do that.
Chat gets pretty lively. We should work out how to show all messages since the start of the salon, in a performant way. (Maybe this needs pagination or something.)
doesn't stay playing for some reason.
This is all a bit of a hack. It would be nice to:
The callback progress bar shows users' profile photos. They should have hover text consisting of the user's name.
For instance, it would be nice to have production/staging/dev environments that can be independently enabled and disabled, and that don't pollute each other's database backends.
https://firebase.googleblog.com/2016/07/deploy-to-multiple-environments-with.html
It's wasteful of scroll space to display each "SHIPS!!" in a separate message. Perhaps we could display a progress bar instead? That would also give the visual hint that more people need to say the same thing until we get to the actual video? And we could make the video replace the progress bar.
Can we satisfy the iOS Safari constraint by playing all the sounds at once, with volume zero temporarily? If so, we should replace the onboarding prompts with a single "reminder, the odd salon code of conduct applies" "". Then we can have a short "this is not a quiet event - try the buttons below to call back something relevant to our speakers" intro that doesn't get in peoples' way.
ONBOARDING
NEW BUTTONS
IN THE CHAT
ELSEWHERE
It's weird to agree to the COC, and then afterwards still have to sign in.
The progress bar just keeps increasing off the screen.
This would have to be only when the app is in the background, and perhaps only once, or it'll get super annoying.
Might need to be configurable? We could offer a browser notification as an option too?
This needs more thought.
🎙️ = STEEEEEEEN
It might be nice, for promo purposes, to have some URLs be rendered as a hyperlink when they appear within a message.
Eg, anything that begins with www.oddsalon.com, patreon.com/oddsalon, upcoming facebook events, eventbrite?
"noticed the auth here was finicky just now in safari. I'm in no problems now (obv) with Chrome." reported by Douglas Worley
The splash screen needs to say “come back at 5pm” or something. And link to a ticket link or FB event page or something.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.