Coder Social home page Coder Social logo

mqp-server's People

Contributors

derpgoncz avatar explodingcamera avatar foodbandlt avatar itotallyrock avatar luizedp avatar mqpteam avatar thebanhammer avatar tonkku107 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mqp-server's Issues

Pm's not showing after reload

When I send a PM to myself, it'll show my own PM's that I received, but when I reload (F5) the PM list is empty till I send a new PM to myself, only then it'll show my name again in the PM list...
~Using a MySQL database.

Disconnected session can still be cycled into queue

Disconnected sessions that are on the waitlist or DJing will still be added back to queue if queue cycling is turned on. This should be the case, and they should not be added back to queue after finished DJing.

In addition to that, should disconnected sessions even be allowed to DJ? If a user disconnects in position 2, they will then begin DJing and disconnect mid-song because the 6 minute timer expires. Either don't let them DJ at all if it's their turn while disconnected, or let the song play our in its entirety.

Ask for notification permission after toggled, not on event

The current way that mqp works is this: after you toggle one of the desktop notifications on musiqpad, it then asks you for permission to send a notification after the event in question has been fired. An alternative to this would be, on toggle of a setting, first checking if that permission is already granted, if not, prompt the user for permission.

It doesn't seem the best to ask after the event has been fired, which is what seems to be the case.

"One in a million" server crash

Server crashed. Log below. Derp says it's one in a million, happens when the "user logs in just at the exact moment this thing checks for things or, disconnects just at the milisecond the pad advances".

[2016-04-28 15:31:40] SocketServer (debug) ::ffff:192.168.245.106 sent: {"type":"getUsers"}
[TypeError: Cannot read property 'uid' of null]
TypeError: Cannot read property 'uid' of null
    at C:\musiqpad-server\MQP_TRP\node_modules\mqp-server\socketserver\djqueue.js:237:43
    at C:\musiqpad-server\MQP_TRP\node_modules\mqp-server\socketserver\playlist.js:84:3
    at C:\musiqpad-server\MQP_TRP\node_modules\mqp-server\socketserver\YT.js:133:18
    at IncomingMessage.<anonymous> (C:\musiqpad-server\MQP_TRP\node_modules\mqp-server\socketserver\YT.js:85:18)
    at emitNone (events.js:72:20)
    at IncomingMessage.emit (events.js:166:7)
    at endReadableNT (_stream_readable.js:903:12)
    at doNTCallback2 (node.js:439:9)
    at process._tickCallback (node.js:353:17)
[2016-04-28 15:31:41] SocketServer (info) Socket server listening on port 8082

Grabbed tracks should add to the bottom of playlists

When adding a song from search results to a playlist, it is appropriate for songs to be added to the top of that playlist. However when grabbing a currently playing track, those should be added to the bottom of the playlist since they've obviously just been played.

[Feature] Image proxy

Adding a way to enable an Image proxy might be good for several reasons:

  • Users are not trackable by linked sites
  • Everything is served over https
  • Images load faster

To implement it, you could use an existing service like (https://images.weserv.nl/) or add a proxy to the webserver.

[Feature] Add support for Open Graph.

Facebook and other websites rely on Open Graph to generate a rich preview of a website.

How it currently looks:
capture

It will look much better with the following:
<meta property="og:title" content="Meta Title Here"/> <meta property="og:type" content="website"/> <meta property="og:url" content="https://sh.musiqpad.com/p/padurl/"/> <meta property="og:image" content="user defined image here"/> <meta property="og:description" content="user defined description here"/>

Change how owner is made when setting up pad

Instead of the usual config > register account > restart pad, how about we make it config > register account. See if we can add a hook somewhere to check upon registering to make the owner if the owner was not made on pad start. This way you won't have to restart the pad after making the owner account.

[Feature] Disconnect timers

Speaking with @foodbandlt, I learned that if a user is in queue and they disconnect from the pad there is a 6 minute grace timer before they're actually logged out. If they are not in queue, they are logged out immediately, no timer. I'd love it if there could be a timer for when they are not in queue as well so that simply refreshing the window doesn't count as a disconnect. (10-15 seconds seems appropriate.)

Foody suggested this could be implemented through a config option on the server.

Youtube search does not work

When trying to search for a song, it does nothing. One line in server console:
[2016-03-31 22:23:55] SocketServer (debug) 147.32.120.95 sent: {"type":"youtubeSearch","data":{"query":"test"},"id":7}

And few errors in Chrome client console:
err

Also, i have SSL disabled.

[Feature] 'signupcd' setting for new users who come from a recent IP address.

signupcd: 0, // How many miliseconds the user cannot do certain things after they sign up.

signupcd is great, but the option to tie it together with an IP address would make it so it's less likely to affect legitimate users.

You could also make the restrictions more strict if they meet various criteria, such as how many users from the same IP signed up recently, or if a user from that IP was recently banned.

[Feature] Activate Playlist Button

Right now it's not clear to see how to activate a playlist. Adding a button would make this more use-friendly.

(Brought across from old feedback system)

[Feature] Image Lightbox

When clicking an image open a lightbox containing the image.

(Brought across from old feedback system)

[Bug] Config gets deleted on update

If the config file is created in ./node_modules, it will be deleted when you update via npm.
You could add a config option to mqpServer.start or make db + config paths relative to the file starting the server.

[Request] Change Number Shown on the DJ Queue Icon to Reflect Queue Length

image

Currently the number shown on the DJ Queue icon is the number of people in the queue plus the DJ. Our bot activates/deactivates features based on the number of people in the queue. For example, one feature requires at least 5 people in the queue before it will activate. When the icon shows 5, people assume that feature is active, but it's not because there's only 4 in queue. It's pretty confusing.

Is there any chance of changing that number to accurately reflect the queue length?

[Feature] Different Color to Identify Self

Have your name in chat be a different color, the way it is now, its hard to know which messages are yours and which are others when you glance at chat.

(This has been brought across from the old feedback system)

[Feature] SoundCloud support

Everything that works with YT now should work with SC - including playlist importing and exporting, with support for both Dubtrack.fm and Plug.DJ exporters aswell as MQP exporter

fs.writeFile() writes file not relative to start.js

Files are written relative to the path from where I execute the start.js

At the moment I can launch the server only like this:

cd /home/virtuacode/mqp-server/
exec node start.js

I would prefer to launch the server like this:

exec node /home/virtuacode/mqp-server/start.js

Error Log:

2016-04-27 23:18:41.379923500 [2016-04-27 23:18:41] SocketServer (info) Socket server listening on port 63548
2016-04-27 23:18:41.391213500 Webserver listening at :::64606
2016-04-27 23:18:41.454543500 { [Error: ENOENT: no such file or directory, open './webserver/public/lib/js/webconfig.js']
2016-04-27 23:18:41.454547500   errno: -2,
2016-04-27 23:18:41.454548500   code: 'ENOENT',
2016-04-27 23:18:41.454548500   syscall: 'open',
2016-04-27 23:18:41.454549500   path: './webserver/public/lib/js/webconfig.js' }
2016-04-27 23:18:41.455590500 Error: ENOENT: no such file or directory, open './webserver/public/lib/js/webconfig.js'
2016-04-27 23:18:41.455592500     at Error (native)

[Feature] Add chat filters

Chat filters would be a great way to see PM's, @ notifications, etc. Adding buttons that would eliminate chats except for what is filtered for was one of the ideas.

[Feature] Add event for soft-leave

Soft-leave: when a user disconnects and the timer is started before sending userLeft.

This can come in handy to see if someone soft-disconnects while on the waitlist in some rooms that are reliant on the waitlist being concrete.

[Suggestion] Placement and colors of buttons under video.

This suggestion is purely about design, and as such should be treated as a personal opinion.

Regarding Placement:
I suggest either placing the most commonly used buttons to the left, or keeping the 'upvote' and 'downvote' symmetrical to each other since they are a "pair".

  • Placement Reasoning:
    English is read left to right, as such most User Interfaces are usually designed with the important/most used actions starting from the left.

Symmetry is an important design aspect.

Colors:
I think that the 'snooze' and 'join' button colors should be changed.

The 'join' button should be a more inviting and friendly color, while the 'snooze' button should be a more red or orange color.

  • Color Reasoning:
    You want people to click the 'join' button, so it should look inviting. It's currently orange which is similar to a warning sign.

The 'snooze' action is a bit negative at times, similar to downvoting the song. As such, it makes sense that they should be a similair color. Additionally, purple is already taken by the 'grab' button.

Examples:
capture
capture

Chat window scroll position problem

When switching back to the chat tab from the @mention tab, the text is scrolled all the way back to the top instead of either 1) where you left it (my preference) or 2) the bottom. Switching back to chat from the PM tab doesn't seem to have this problem.

PM - name color update

This is a tiny problem, not that big, but it's there,
When you are PM'ing someone, and you give him a rank, his name color wont change to his new color.
After a reload it shows the correct color, but its not directly changed

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.