Commit Graph

39 Commits (8fe17abdf8cec65c69cd5d4c479f910301cfe053)

Author SHA1 Message Date
Icedream 655659e254 Prevent crash on shutdown caused by VLC stop.
The code tried to send a "Stopped." message to TeamSpeak3 when VLC shut down. However VLC gets shut down after TeamSpeak3 which causes a null reference on the query interface.
2015-11-03 03:59:35 +01:00
Icedream 4d7550865e Store wanted volume in a variable and set on VLC when playback starts.
This gets rid of a configuration issue in the Docker image where VLC would reset the volume to 100% on each new track.
2015-11-03 01:28:30 +01:00
Icedream 2ee4dc32c3 Quick fix for the no-metadata crash, closes #23. 2015-11-02 16:06:34 +01:00
Icedream 02e6f0c489 Boot Xvfb via app.iced. 2015-11-02 13:38:09 +01:00
Icedream 8afc967796 Print more details on service startup failures. 2015-11-02 13:26:49 +01:00
Icedream ce801fecbb Use custom XDG runtime dirs for better isolation. 2015-11-02 12:45:27 +01:00
Icedream ae4288d44a Remove left-over explicit API shutdown code.
The code removed in this commit was not removed in the process of
migrating to the new HTTP-server-less code. It causes additional errors
and is generally useless now.
2015-11-02 12:42:37 +01:00
Icedream adeccf6d57 Allow "vol" to display current volume if no arguments were given. 2015-10-29 02:23:53 +01:00
Icedream f3157857c4 Completely remove handler for vlc.onEndReached.
onEndReached does not just trigger the callback at the end of the playlist but actually at the end of each track. This should have been better documented.
2015-10-28 00:21:54 +01:00
Icedream 4d25c2b822 Small fixes for empty playlists. 2015-10-28 00:16:10 +01:00
Icedream 9417e33708 Small fix for "prev" not giving an error when in empty playlist. 2015-10-28 00:14:44 +01:00
Icedream a5a8ae1046 Implement some easy checks for "next" and "prev" commands. 2015-10-28 00:12:50 +01:00
Icedream b238a655b9 This indenting stuff still sometimes doesn't really want to work out I guess... 2015-10-27 23:57:50 +01:00
Icedream 7966bfb056 Playlist display (command "list"/"playlist") can generate too long messages, commenting out for now. 2015-10-27 23:55:54 +01:00
Icedream 18b7d82964 Implement "stop-after" command.
This command allows stopping the playlist after the current playlist item is finished.
2015-10-27 23:54:36 +01:00
Icedream d82721128f Implement "loop" command.
This command allows looping the playlist by just passing the command "loop on". Respectively, "loop off" turns off looping again.
2015-10-27 23:54:01 +01:00
Icedream eb00dc2f87 While we're on it, fine-tuning the playlist message. 2015-10-27 23:19:40 +01:00
Icedream d61d85e020 Got the right CoffeeScript syntax for this loop now. 2015-10-27 23:18:13 +01:00
Icedream ab18c3cd8f According to the WebChimera documentation this is not zero-based... 2015-10-27 23:12:47 +01:00
Icedream cc783d0bc0 Implement "list"/"playlist" commands.
These commands make the bot print out the current playlist in the channel chat. The current track being played back is printed in bold green font.
2015-10-27 23:09:28 +01:00
Icedream 4eed972a23 Implement "empty"/"clear" commands.
These commands allow emptying the current playlist. Here another reminder to implement a proper permission system soon!
2015-10-27 23:01:23 +01:00
Icedream 824b4b94bd Implement "prev"/"previous" commands.
These commands allow going to the previous entry in the playlist.
2015-10-27 22:59:17 +01:00
Icedream 8ab524467b Fix non-numeric volume value being passed through to VLC as NaN.
Those values are not supposed to be accepted in the first place...
2015-10-27 22:47:29 +01:00
Icedream 852052388d VLC event members are actually properties, not functions.
Got the documentation wrong here, I was looking up examples and it looked as if calling the on* fields as functions was the right way to go but it was actually not. 64bf4ffc36/src/JsVlcPlayer.cpp (L90-L102) clearly defines as set-properties here.
2015-10-27 22:40:39 +01:00
Icedream 394b16ab5e We're now completely getting rid of vlc-api.
- Hopefully fixes audio volume not being set to 50% at startup.
- Volume now is in the range of 0 to 200 (percentage, so goes from 0% to 200% for those numbers).
- Made message displaying volume change display the actual level set.
- We're no longer providing an HTTP interface.
- Now stores metadata info in a separate variable for later retrieval by input MRL.
- Now prints when player reaches end of playlist.
- Now supports toggle-pausing using "pause" command.
- Should fix playlist not being able to kick off on "play" if stopped.
- Removed vlc-api dependency.

Relates to issues #17, #10 and #7 (partially).
2015-10-27 01:14:55 +01:00
Icedream 0de22eb9e1 Trim parameters so whitespace doesn't invalidate URLs. 2015-10-21 20:59:58 +02:00
avail 6568e1e5eb fix nickname letter limit error message 2015-10-21 19:38:13 +02:00
Icedream 1846e96806 Use <> instead of ** for marking parameters in the text. 2015-10-21 16:56:16 +02:00
avail a2c4406f09 string iprovements 2015-10-21 16:50:36 +02:00
Icedream 1b57bd36ce Fix response messages for volume and adding to playlist. 2015-10-21 16:32:58 +02:00
Icedream 2dd16830ec Fix default volume. 2015-10-21 16:32:31 +02:00
Icedream e4f3e4f2c2 Prevent running the "enqueue" command without a URL. 2015-10-21 16:32:10 +02:00
Icedream 8964db5afa Command aliases for "add" and "append" -> "enqueue". 2015-10-21 16:31:53 +02:00
Icedream 69b6deb9be Implement "pause" command to pause current track. 2015-10-21 15:37:58 +02:00
Icedream f368221b3b Implement "enqueue", "next" and a URL-less "play" to resume from paused tracks. 2015-10-21 15:37:02 +02:00
Icedream e0379895d7 Implemented "vol" command to set volume. By default it's 50% (127).
The range is as-is in VLC, something between 0 (0%) and 511 (200%). You get this info as well if you just type "vol".
2015-10-21 15:13:53 +02:00
Icedream 4bfc0cabf4 Wait for VLC to stop playback on demand. 2015-10-21 15:10:28 +02:00
Icedream 7890e22723 Remove the HTTP API server and do everything directly. 2015-10-21 14:19:56 +02:00
Icedream a0bded664a Initial commit.
- TS3Bot is able to play any link that VLC supports via the "play" command, just add any URI as an argument to that command.
- TS3Bot is able to stop the currently playing media via the "stop" command.
- TS3Bot is able to change its own nickname via the "changenick" command.
2015-10-15 17:40:20 +02:00