62 Commits

Author SHA1 Message Date
Storm Dragon
de270bc842 Second wave of initial code changes. 2025-06-13 18:53:38 -04:00
Terry Geng
a0eb5b39c3 fix(config): Define all fallback in configuration.default.ini. 2022-02-01 21:08:15 -05:00
Parnikkapore
d60b53838e Remove tracing from media/playlist.py/extend() 2021-09-24 20:00:37 +08:00
Terry Geng
b65e7b2bcc
fix: Racing condition happens when editing playlist. Fixes #279. 2021-05-24 09:26:23 +08:00
Terry Geng
55daddb774
fix: Removing items during validation breaks validation
Fix #266.
2021-05-16 23:48:07 +08:00
Terry Geng
d3ed96a81a
fix: index error when changing playmode 2020-05-27 09:21:45 +08:00
Terry Geng
257fff3e92
feat: upload progress bar and error message display for each file, #146 2020-05-16 15:48:11 +08:00
Terry Geng
71e0ede51e
feat: optimized play/resume logic, add fast-forward support within song.
fix #153.
2020-05-15 10:22:44 +08:00
Terry Geng
e86b5ca659 refactor: rewrite confusing part 2020-04-08 08:55:58 +08:00
Terry Geng
d32d30b795 fix: fixed #118, weird threading issue 2020-04-02 18:27:15 +08:00
Terry Geng
b2e5efec93 refactor: optimized playlist logic 2020-03-25 21:35:59 +08:00
Terry Geng
3fb10905b7 refactor: database logic, add type hints 2020-03-22 14:30:56 +08:00
Terry Geng
7f29deba01 feat: add delete function 2020-03-20 00:09:07 +08:00
Terry Geng
a2cb955ed8 fix: refresh video metatdata after validation 2020-03-12 18:35:24 +08:00
Lartza
213a6c084b Cleanup 2020-03-10 23:07:29 +02:00
Lartza
b2ced96ba4 PEP8 2020-03-10 22:22:20 +02:00
Terry Geng
0ac9603072 feat: Lartza's urlban idea #91, fixed private message 2020-03-10 10:14:43 +08:00
Terry Geng
a39199d54d fix: optimize database logic, fixed #93 2020-03-10 09:23:36 +08:00
Terry Geng
048da4046b feat: 'delete' command to remove files from library 2020-03-09 00:02:22 +08:00
Terry Geng
22ba308b14 feat: optimized autoplay with Lartz 2020-03-08 21:25:30 +08:00
Terry Geng
091d303729 fix: still one-shot 2020-03-08 19:55:41 +08:00
Terry Geng
f7042db657 feat: 'search' command to search the db, and 'shortlist' to add songs from search result 2020-03-08 16:56:31 +08:00
Terry Geng
f8cfb163ed feat: add tags, remove tags, play tags, find tags #91 2020-03-08 11:31:34 +08:00
Terry Geng
487b5b9616 fix: music not saved after downloading. some tricky oneshot problem #91 2020-03-08 10:28:03 +08:00
Terry Geng
e10059a76e fix: delete item keyerror #91 2020-03-08 09:26:36 +08:00
Terry Geng
9e6072526c fix: web interface add url issue #91 2020-03-07 22:38:25 +08:00
Terry Geng
3e39450db0 fix: oneshot, #91 2020-03-07 20:13:42 +08:00
Terry Geng
749647aad2 feat: some tags function 2020-03-07 16:07:58 +08:00
Terry Geng
4fce3b956e feat: directory cache 2020-03-07 15:12:22 +08:00
Terry Geng
1f22d3b1a9 fix: minor fixes 2020-03-06 17:03:00 +08:00
Terry Geng
e70727cfd1 FEAT: AUTOPLAY MODE #91 2020-03-06 16:15:19 +08:00
Terry Geng
665edec684 REFACTOR: MUSIC LIBRARYgit status #91 2020-03-06 15:45:13 +08:00
Terry Geng
b6bb449874 REFACTOR: DIFFERENT PLAYLIST #91 2020-03-06 01:39:24 +08:00
Terry Geng
ce25fcabee fix: some small issue 2020-03-05 19:57:31 +08:00
Terry Geng
6ab8a7958a REFACTOR: ITEM REVOLUTION #91 2020-03-05 16:28:08 +08:00
Terry Geng
499186c738 fix: message too long on some extreme cases 2020-03-03 16:47:24 +08:00
Terry Geng
c1c3e47582 fix: youtube playlist related CRAZY issues. 2020-03-03 16:12:45 +08:00
Terry Geng
28320ddfe5 fix: launch_music didn't wait for downloading #89 2020-03-03 10:11:50 +08:00
Terry Geng
cf1feea870 chore: optimize logging. separate bot log and web log. 2020-02-28 14:15:57 +08:00
Terry Geng
b640ff4721 fix: process error from youtube-dl correctly. #80 2020-02-27 21:10:44 +08:00
Terry Geng
0216103b69 fix: playlist version ++ after set one-shot 2020-02-27 12:05:42 +08:00
Terry Geng
7800bd3639 fix: random will not delete current song. changed one-shot icon.#79 2020-02-27 09:59:26 +08:00
Terry Geng
020ddbca22 fix: 'jump' now remove files behind in one-shot mode. #79 2020-02-27 09:44:21 +08:00
Terry Geng
5491f00c34 fix: one-shot crash bot, #79 2020-02-27 08:20:26 +08:00
Terry Geng
a03f82d90a feat: remove item once played in one-shot mode. make it as close to the old version as possible, #79 2020-02-27 00:59:20 +08:00
Terry Geng
a46a1d7073 refactor: changed all 'loop' into 'repeat', which is the term used in iTunes 2020-02-26 23:37:53 +08:00
Terry Geng
b85956ef2f feat: database and config support for playback mode. 2020-02-26 22:56:07 +08:00
Terry Geng
6a1320f8f9 feat: three playback mode "one-shot", "loop", "random"
fix: bugs when you are on the last item and you want
remove it.

Some tips for testing:
Observe the behavior when you are playing the last
item and you remove the last item, for all three modes.
2020-02-26 22:09:53 +08:00
Terry Geng
388016a5af refactor: playlist inherits list. 2020-02-26 20:51:30 +08:00
Terry Geng
97f2326d9b
Add more controls (#71)
* add more ducking command

* fix current music command

* provide more controls, like pause, resume, clear.

* add more controls in the web interface

* refactored and improved:
1. move get_music_tag_info to util, and
2. refined logic related to it.
3. now playlist will check for tag info thus update_music_tag_info is
useless and was removed
4. add "add folder" feature to !file asked in #65,
5. fix bugs related to !file

* truncate file list if too long

* fixed several tiny bugs

* fixed several tiny bugs continue

* fixed several tiny bugs continue continue

* fixed several tiny bugs continue**3

* fixed several tiny bugs continue**4

* added !filematch command to add files that match a regex pattern.

* truncate long message

* fix web interface delete file issue

* refresh after delete file

* add regex to listfile command

* refactored command part, added partial match support for commands

* organized

* added random command

* typo

* typo

* Fixed many bugs.

* Added workaround for azlux/pymumble#44 to fix the memory leak.

* changed logging style.

* fixed bugs related to random and resume

* fix now playing

* fixed issue related to download

* fixed issue related to download 2

* fixed thumbnail issue

* fixed add url problem in web interface

* REFACTORED, turned db.ini into sqlite3 database.

* fixed remove song problem

* fixed radio get title problem. auto download if tmp file is deleted

* fixed current index not loaded from database

* fixed: order of songs loaded from the database

* fixed: some obscure bugs. beautified error of commands

* added a workaround for TerryGeng/botamusique#1.

* beautified

* fixed: channel not loaded in the config

* fixed: auto checked for updates

* fixed: mysterious bug: sometimes "now playing" string cannot be properly
displayed.
The real reason is: do use <br />, do not use <br>. I tried hours to
find out this.

* chore: unified debug messages that refer to music items

* feav: fetch ffmpeg stderr mentioned in #72, reformatted logs.

* fix: async download not working

* fix: async download not working, still

* fix: async download not working, finished

* feat: queue command: ▶current playing item◀

* feat: support more than one command prefix

* chore: added some WARNINGs into default config file to avoid people to touch it.

* refactor: packed all string contants into constants.py, just to avoid people messing it around.

* refactor: required by azlux. Added a configuration.example.ini to keep people away from configuration.default.ini
2020-02-24 19:17:02 +01:00