Comments (7)
avatar is what I mean by "logo". In any case I think colors might help a lot. I just though that choosing a name makes the whole interface more complex (and we need to find space to display the name), that's why I suggested avatar+color.
from palava-web.
To draft a possible solution:
- implement a function that takes some "seed value" and based on that chooses a color and a logo (where to take the logos from would be part of this question). If logos are downloaded (and not generated) they would go into an own folder under src/assets/ I guess. This function could for now be added to src/components/Peer.vue.
- in src/components/Peer.vue, look how the other
<button>
s are implemented (those are the buttons that appear on the videos) and add one for the generated logo (using the function from 1. - maybe until now with a random seed or so). - Research if we can get from the peerconnection the public key (I guess we can take it from "peerconnection.currentLocalDescription" (for the user) and "peerconnection.currentRemoteDescription" (for the other participants)). Then take the public key (or its hash) as the seed for the logo/color chooser.
from palava-web.
Maybe first it could be only a logo or only a color - then the probably not so easy step to apply a color to the logo would be out of the way
from palava-web.
Encryption keys are not persistent to prevent fingerprinting.
from palava-web.
Hm, ok, makes sense! I guess then we should probably use a hash of different information like the user agent. Or is it bad to allow users to recognise other people by this (e.g. if you chat 2 times with the same person/device) and we should just make it completely random?
from palava-web.
Fingerprinting without the direct knowledge of the user and the ability to circumvent doesn't seem right to me. We could store a random value in local storage to keep the identity (gives user the ability to clear it and interacts well with browsers private mode). This mechanismwould probably need a method to prevent spoofing of that value (can't just send that value directly as it could just be copied).
I personally would prefer not to include such a non-obvious way to track the user and user a random non-persistent seed or a name that can be changed by the user.
from palava-web.
Possible solutions are:
1. let a user choose a name (and probably generate one for those who don't choose one) 2. choose some other identifier - I propose to have a combination of a logo and a color.
I would also prefer option 1 for now, generate a random name. Could also be something more sophisticated, like a random avatar.
Also note, currently all peer colors are random for every participants, everyone sees different colors. We could implement a mechanism to map a specific colors to the peers. If we do so, this should be accompanied by a name or avatar, since relying only on colors is bad accessibility-wise.
from palava-web.
Related Issues (20)
- Update dependencies && clean up peerDependencies HOT 1
- Fix Safari does not create peer connections HOT 1
- Bug in http-proxy dependency: Update needed HOT 1
- Display "reconnecting" indicator in UX when network not reachable HOT 1
- End-to-end test basic scenarios
- Create a "pinned tab" icon for Safari
- Request better video quality from camera
- Don't show disconnected warning when peerconnection is disconnected for a split second
- Give users the option to configure which video/audio device they want to use
- (Just) copy link on Safari Desktop HOT 1
- get this error! HOT 2
- Center own video in firefox HOT 3
- Video fullscreen button not working on iOS
- Show when somebody speaks on only-audio
- Sometimes video peers not visible when on only-audio
- Update to Vue3 HOT 1
- FireFox 95 can't detect media streams HOT 4
- Make room IDs case insensitive
- Add dark mode
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from palava-web.