Constructor
new playlistHandler(server, channel)
Instantiates a new object to handle playlist management for a single channel
Parameters:
| Name | Type | Description |
|---|---|---|
server |
channelManager | Parent server object |
channel |
activeChannel | Parent Channel object for desired channel queue |
Methods
(async) addToChannelPlaylist(socket, data, chanDB)
Adds media to channel playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
chanDB |
Mongoose.Document | Channnel Document Passthrough to save on DB Access |
(async) addToPlaylistValidator(socket, URL) → {Array}
Validates client requests to add media to a playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Newly connected socket to define listeners against |
URL |
String | URL String handed over from the client |
Returns:
List of media objects which where added
- Type
- Array
(async) addToUserPlaylist(socket, data, userDB)
Adds media to user playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
userDB |
Mongoose.Document | User Document Passthrough to save on DB Access |
(async) changeDefaultTitlesChannelPlaylist(socket, data, chanDB)
Changes default titles for a given channel playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
chanDB |
Mongoose.Document | Channel Document Passthrough to save on DB Access |
(async) changeDefaultTitlesUserPlaylist(socket, data, userDB)
Changes default titles for a given user playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
userDB |
Mongoose.Document | User Document Passthrough to save on DB Access |
changeDefaultTitlesValidator(data) → {Array}
Validates client requests to change default titles for a given playlist
Parameters:
| Name | Type | Description |
|---|---|---|
data |
Object | Data handed over from the client |
Returns:
Array of strings containing valid titles from the output
- Type
- Array
(async) createChannelPlaylist(socket, data, chanDB)
Creates a new channel playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
chanDB |
Mongoose.Document | Channnel Document Passthrough to save on DB Access |
createPlaylistValidator(socket, data) → {Object}
Validates client requests to create a playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Newly connected socket to define listeners against |
data |
Object | Data handed over from the client |
Returns:
returns validated titles
- Type
- Object
(async) createUserPlaylist(socket, data, userDB)
Creates a new user playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
userDB |
Mongoose.Document | User Document Passthrough to save on DB Access |
defineListeners(socket)
Defines server-side socket.io listeners for newly connected sockets
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Newly connected socket to define listeners against |
(async) deleteChannelPlaylist(socket, data, userDB)
Deletes a user playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
userDB |
Mongoose.Document | User Document Passthrough to save on DB Access |
(async) deleteChannelPlaylistMedia(socket, data, chanDB)
Deletes media from a given channel playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
chanDB |
Mongoose.Document | Channel Document Passthrough to save on DB Access |
deletePlaylistMediaValidator(socket, data)
Validates client requests to rename the playlist validator
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Newly connected socket to define listeners against |
data |
Object | Data handed over from the client |
(async) deleteUserPlaylist(socket, data, chanDB)
Deletes a Channel playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
chanDB |
Mongoose.Document | Channnel Document Passthrough to save on DB Access |
(async) deleteUserPlaylistMedia(socket, data, userDB)
Deletes media from a given user playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
userDB |
Mongoose.Document | User Document Passthrough to save on DB Access |
(async) getChannelPlaylists(socket, chanDB)
Sends channel playlist data to a requesting socket
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Newly connected socket to define listeners against |
chanDB |
Mongoose.Document | Channnel Document Passthrough to save on DB Access |
(async) getUserPlaylists(socket, userDB)
Sends user playlist data to a requesting socket
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Newly connected socket to define listeners against |
userDB |
Mongoose.Document | Channnel Document Passthrough to save on DB Access |
(async) queueChannelPlaylist(socket, data, chanDB)
Queues an entire channel playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
chanDB |
Mongoose.Document | Channel Document Passthrough to save on DB Access |
(async) queueFromChannelPlaylist(socket, data, chanDB)
Queues media from a given channel playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
chanDB |
Mongoose.Document | Channel Document Passthrough to save on DB Access |
queueFromChannelPlaylistValidator(socket, data) → {Number}
Validates client requests to queue media from a playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Newly connected socket to define listeners against |
data |
Object | Data handed over from the client |
Returns:
returns validated start time on success
- Type
- Number
(async) queueFromUserPlaylist(socket, data, userDB, chanDB)
Queues media from a given user playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
userDB |
Mongoose.Document | User Document Passthrough to save on DB Access |
chanDB |
Mongoose.Document | Channel Document Passthrough to save on DB Access |
(async) queueRandomFromChannelPlaylist(socket, data, chanDB)
Queues random media from a given channel playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
chanDB |
Mongoose.Document | Channel Document Passthrough to save on DB Access |
(async) queueRandomFromUserPlaylist(socket, data, userDB, chanDB)
Queues random media from a given user playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
userDB |
Mongoose.Document | User Document Passthrough to save on DB Access |
chanDB |
Mongoose.Document | Channel Document Passthrough to save on DB Access |
(async) queueUserPlaylist(socket, data, userDB, chanDB)
Queues an entire user playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
userDB |
Mongoose.Document | User Document Passthrough to save on DB Access |
chanDB |
Mongoose.Document | Channel Document Passthrough to save on DB Access |
(async) renameChannelPlaylist(socket, data, chanDB)
Renames a channel playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
chanDB |
Mongoose.Document | Channel Document Passthrough to save on DB Access |
renameChannelPlaylistValidator(socket, data) → {String}
Validates client requests to rename the playlist validator
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Newly connected socket to define listeners against |
data |
Object | Data handed over from the client |
Returns:
returns escaped/trimmed name upon success
- Type
- String
(async) renameUserPlaylist(socket, data, userDB)
Renames a user playlist
Parameters:
| Name | Type | Description |
|---|---|---|
socket |
Socket | Requesting socket |
data |
Object | Data handed over from the client |
userDB |
Mongoose.Document | User Document Passthrough to save on DB Access |