• If you need help or want to discuss things, you now can also join us on our Discord Server!
  • A first preview of the unlimited version of SinusBot can be found in the Upcoming Changes thread. A version for Windows will follow, but we don't have a release date, yet.

Wish-List for Scripting

Status
Not open for further replies.

flyth

is reticulating splines
Staff member
Developer
Contributor
The next version will come with a pretty powerful scripting engine that lets you automate the bot and probably your server and user management. Those scripts are written in JavaScript and can be installed by simply copying them into your bot folder. Scripts can have their own settings that will appear in the web-interface so that users can tweak their behavior a bit without having to fiddle with the code.

A few examples I've successfully created so far are:
* the bot will follow specific users through the channels
* cover art gets downloaded from the internets
* a trivia quiz via text-to-speech that can be played by as many people as you want
* move idle users somewhere
* kick users with bad nicknames or when they start recording
* rename channels on creation
* report different events to external websites or even create bot-commands that get answered by external websites

My hope is that this will build a small community that will share and discuss their scripts.

To make this happen as soon and as good as possible, I would really love to hear some feedback / ideas on what functionality you want to see.

An intro page with really little information is available here and a little video (in german) can be found here (thanks to ts-coach.com).

Thanks :)
 

AlienSr1

Member
This looks awesome already :D.

I'd love to be able to create custom commands for the bot for example:
Change the bots id.
Rename the bot to maybe the song title.
Play specific sounds when a user joins.
 

flyth

is reticulating splines
Staff member
Developer
Contributor
Thanks!
All of what you mentioned is already possible. :)

This is what the interface currently looks like. Still needs to be improved.
exampleif.png
 

AlienSr1

Member
Awesome!
So it would be possible to make a command say : "!id" which will make the bot reconnect with a newly generated ts-id?

It would be nice to be able to create, edit and delete scripts through the webinterface.
One feature that would be very nice is, if the bot could switch the TTS-language based on what language it is supposed to read. Might be possible using the Google Translate API?

I think you don't have ETAs, right? Will you release windows and linux at the same time though?
Also is the autoupdater on windows working on the latest beta?
 

flyth

is reticulating splines
Staff member
Developer
Contributor
@AlienSr1 Sorry, I thought you meant the nickname instead of the ts-id. Changing the ts-id could be implemented as well, but I can't think of a legitimate use case for that. Prove me wrong and I'll probably include it :)

The first version won't have an editor integrated in the web-interface. Maybe that'll come with a later version.

The say-command can be called with the language-settings it should use for each call. Language auto-detection (if you meant that) had been integrated into the bot earlier, but I removed it again, because it added 10 megabytes to the bot and didn't help as much as I'd hoped.

And nope, as usual there's no ETA. But it's finished about 90% and the first testers are currently testing it. I'll probably release the linux version a few days / weeks in advance, because it makes bugfixing much easier for me.

I hope to get the Autoupdater for Windows working as well, but it might take some more time as there are more important things on the todo-list right now. :)
 

AlienSr1

Member
I'm gonna be honest and say it would (probably) be used for trolling only, regularly change ids to bypass mutes :p.

Nice! I think an editor would be really nice to minimize the need for regular direct server access.

Is that already implemented in the latest windows beta? If yes, what is the correct syntax?

I'll be happy to test the windows version once it's ready. Are there linux betas as well, maybe i'll switch my server to linux.
 

flyth

is reticulating splines
Staff member
Developer
Contributor
Haha :) Thanks for you honesty, but I'll think it'd be a bad idea then^^

There isn't a windows beta yet that has scripting included, maybe next week. And yes, there are linux betas and I'll open a new thread for more invites soon.
 

Khailz

Donor
is awesome!
Darn wish this was for python as well I could do a couple fun things with it, hopefully you put a bit of support for this in the API ;)

Love progress <3
 

AlienSr1

Member
I just came up with another feature for the scripting engine: PayPal integration
So you could hIve the bot play a sound, TTS, write something in chat, change a picture etc. whenever money is donated to a certain PP account. This might be an interesting feature for bigger TeamSpeak servers which run on donations/appreciate donations.
Let me know what you think :)
 

flyth

is reticulating splines
Staff member
Developer
Contributor
@AlienSr1
That's nothing that you should do with the scripting engine but rather the Bot's REST API. Documentation on that one is almost finished.
 

link

Member
it's really awesome, I eagerly awaiting the release of the script,.
There're a commands that go out with him ? and when it will be released ?
 

flyth

is reticulating splines
Staff member
Developer
Contributor
@link see the betaforum for Linux, you can already test that - although it might still be a little rough around the edges :)
 

Topsi

Member
Maybe onRename: I only thought of it, because the script I posted will not work correctly if a user changes his name before leaving.

And wouldn't it make sense to give access to the priviledges that are associated with each uid?
At the moment I might even write a script to allow everyone to execute commands, since my bot has no admin rights and can appearantly not access the group ids, because of that.
 

flyth

is reticulating splines
Staff member
Developer
Contributor
Nick changes will emit a "nick" event with a parameter like { clientId: 10, clientNick: "Foobar", clientUid: "ab483dhUi399=" }

And yes, I will add access to the bot privileges :)
 

hrezaei

New Member
Hi there. This bot is very cool. I installed the beta and it has cool scripts already!
Here's some ideas that I have for scripts.
1- bot googles - You'd be able to type !google <search> and the bot would show <configurable> top google search results.
For example, You could configure it to show top 5 links, and when you typed !google sinusbot, the bot would show 5 links with their short describtions.

2- search and play youtube song. You'd be able to type !youtube <search> and the bot would retrieve the first youtube result and play it.

3- smart response. Here's What I'm thinking: You'd be able to define words for the bot, and when someone used that word, the bot would reply with your defined answer. for example.
I define the word "sinusbot" for the bot, and for the reply field, I'd put "Sinusbot, A flexible and feature rich music bot for Teamspeak. Here's the link: https://frie.se/ts3bot/".
Now, Imagine when someone comes in to the teamspeak and asks about the cool bot that is in the channel. All you have to do is to type !answer sinusbot. The bot will write down your previously written reply. You don't believe how many times I've searched and posted the same link to sevral users.
Now that !answer command might also take arguments as well, to send information directly to a user via poke or private message.

4- Automatically move people to <specified> channel when they set their status to away, or mute their speakers. and automatically bring them back to their previous channel that they were before, when they set their status to online or unmute their speakers.

Those were all that could come to mind right now, Hope they are useful and you implement some of them.
Cheers

EDIT:
for point 4, I ment automatically send users to a defined channel when those conditions are met.
 
Status
Not open for further replies.
Top