Commit Graph

116 Commits (375ee988df681445ca75c997a803eed6d43573a1)

Author SHA1 Message Date
Icedream ee9bd9c0fc Delay Blackbox availability handling.
Allow the main code to handle this case instead.
2015-11-02 12:44:12 +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 Jenkins b6a70ebdc5 Delay error that Xvfb is not available so main code can handle it instead. 2015-11-02 12:20:40 +01:00
Icedream Jenkins f650c3296b Make xdotool optional. 2015-11-02 12:18:36 +01:00
Icedream 82c19a2196 Added explicit process.exit after app shutdown.
Since introducing WebChimera.js the bot is no longer shutting down by itself after all services are shut down since the instances that WebChimera.js generates would still be alive after deletion. There is no way to get around this except if WebChimera.js reveals an explicit release function which it doesn't. The only release function gets called before the VM gets killed.
2015-10-29 03:08:44 +01:00
Icedream c20462272f Stop audio playback when shutting down TS3Bot. 2015-10-29 02:24:11 +01:00
Icedream adeccf6d57 Allow "vol" to display current volume if no arguments were given. 2015-10-29 02:23:53 +01:00
Carl Kittelberger 034d12df07 Merge pull request #20 from icedream/impl/webchimera
Use LibVLC via WebChimera.js instead of VLC through its HTTP API.

This closes #17 and fixes #10, finishes two tasks of #2 and actually solves a few additional issues like:

- Not being able to resume playback from a stopped playlist.
- Unclear and buggy definition of volume range.
- Bot just showing "playing next playlist entry" instead of actually showing the title of the next playlist entry.
- Missing "previous" command to go to previous playlist entry.
- Missing "loop" command to loop the playlist. (Now exists in form of "loop on"/"loop off")
- Missing "stop-after" command to stop playback after current track ends.
- A small bug in ts3query.iced that didn't escape line breaks. (Was in use here for "playlist"/"list" commands which got removed in the process.)

Known issues:
- Starting with an empty playlist, adding an entry and then typing "next" will automatically play the first entry. This is not really a bug or even an issue but definitely unexpected behavior that is coming from VLC.
2015-10-28 00:23:55 +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 0762d6d0bd Fix line breaks and tabs not being properly escaped in ts3query.iced. 2015-10-27 23:38:14 +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 e923f80333 Merge branch 'develop' into impl/webchimera 2015-10-27 22:30:02 +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 ac3531a875 Add webchimera.js to dependencies - we're now switching!
See issue #17.
2015-10-27 00:13:10 +01:00
Icedream ed10e875b3 I'm on a roll with this today. 2015-10-24 11:28:44 +02:00
Icedream 1892b56e4c @log -> settingsObj. 2015-10-24 10:26:01 +02:00
Icedream 6695fbd83e Log updates on identities. 2015-10-21 21:00:00 +02:00
Icedream 0de22eb9e1 Trim parameters so whitespace doesn't invalidate URLs. 2015-10-21 20:59:58 +02:00
Carl Kittelberger 207bf24663 Merge pull request #16 from icedream/fix/nicklength
Fix nickname length limit.
2015-10-21 19:40:10 +02:00
avail 6568e1e5eb fix nickname letter limit error message 2015-10-21 19:38:13 +02:00
Carl Kittelberger 32f22f719a Merge pull request #11 from icedream/enhancement/friendly-strings
Improvements for bot messages
2015-10-21 19:27:58 +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 6d49bdfdaa Add "repository" field to package.json. 2015-10-16 19:49:09 +02:00
Icedream b62a1c46a6 Bump version to 0.2.1. 2015-10-16 19:46:58 +02:00
Icedream 73aeca588a Merge branch 'feature/youtube-dl' into develop 2015-10-16 19:43:28 +02:00
Icedream 2dd995b2d7 Separate parameter name and value for "aout" parameter like we did with the others. 2015-10-16 19:41:21 +02:00