Coder Social home page Coder Social logo

radio4u's Introduction

STATS INOP STATS INOP STATS INOP

radio4u's People

Contributors

lazoyoung avatar

Stargazers

 avatar

Watchers

 avatar  avatar

radio4u's Issues

Improve Text and Message UI

Text output of command results are not clean nor fancy.

  • Divide pages for list output:
  • Interactive JSON format on playlist output.
  • Interactive JSON format on command list.
  • Action message informing the song currently played when connected to a radio

Implement permissions

Default permission

  • radio4u.playlist.use
  • radio4u.radio.control
  • radio4u.radio.access.others

These nodes are given to new players.

Playlist

  • radio4u.playlist - See command help for /playlist
  • radio4u.playlist.use - View or play a playlist

Operator level

  • radio4u.playlist.modify - Modify a playlist

Radio

  • radio4u.radio - See command help for /radio
  • radio4u.radio.open - Open a public channel (except local one)
  • radio4u.radio.close - Close my channel
  • radio4u.radio.pause - Pause or resume in my channel
  • radio4u.radio.skip - Skip to next song in current playlist
  • radio4u.radio.playlist - Set playlist in my channel
  • radio4u.radio.shuffle - Shuffle playlist in my channel
  • radio4u.radio.live - Switch live-mode in my channel
  • radio4u.radio.access - Join my channel
  • radio4u.radio.control - Control everything in my channel (Includes all nodes above)
  • radio4u.radio.access.others - View or join other channels

Operator level

  • radio4u.radio.close.others - Close other channels
  • radio4u.radio.pause.others - Pause or resume in another channel
  • radio4u.radio.skip.others - Skip to next song in another channel
  • radio4u.radio.playlist.others - Set playlist in another channel
  • radio4u.radio.shuffle.others - Shuffle playlist in another channel
  • radio4u.radio.live.others - Switch live-mode in another channel
  • radio4u.radio.control.others - Control everything in another channel

Plugin

  • radio4u.plugin - See command help for /radio4u

Operator level

  • radio4u.plugin.reload - Reload this plugin

More channel types

Main Channel

This is a standalone channel which belongs to server and cannot be removed. This channel by itself plays all the songs available in the server.

Local Channel

Local channels can be opened by a player with /playlist play.
Those channels are instantly closed when the player leaves the channel.
Also, the music gets paused when the player disconnects.
The goal of this is to improve server performance by getting rid of useless channels.

Live Channel

A live channel is distributed in the block location where the player initially stands.
Volume is adjustable.
(quoted from #6)

Translatable text

All plugin text can be translated in text.yml

  • Construct Text class
  • Refactor codes to use text strings

Join/leaving channel has unexpected side effects

To produce this issue: Repeat /radio <join/quit> in a channel where you're the only participant and autodestroy is enabled.
Issue: The radio stops when the first quit occurred. Besides, you can hear the song after you quit the channel.

UI and Channel type

  1. Action Message or Chat message informing the song currently played when connected to radio/playlist Moved to #5
  2. Coordinate based radio, with controllable volume value(no limit?) Moved to #4

Omit song registration procedure.

Get rid of /song command as it's unnecessary to do manually.
On every boot up, plugin should register all song files in the data-folder.

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.