/trovobot

Trovo Live API client

Primary LanguageRubyMIT LicenseMIT

Trovo Live API client + chat bot

What

This is going to be the first Ruby gem for Trovo Live. It's my first Async gem experience so it might be is a mess.

I use it for my chat bot https://trovo.live/velik_the_bot -- see the examples folder.

How

There should be clientid and clientsecret files in the working directory. Login as a bot, visit the https://open.trovo.live/page/login.html?client_id=...&response_type=code&scope=send_to_my_channel+chat_send_self+chat_connect&redirect_uri=https://trovo.live/ (or other scopes, see Trovo API docs) and save the obtained code as the auth_code file. Delete the tokens.json when updating the auth code.

In case you need not only API but also a bot to write to someone's channel chat then the channel owner should visit the https://open.trovo.live/page/login.html?client_id=...&response_type=code&scope=send_to_my_channel&redirect_uri=https://trovo.live/ and give you the obtained auth code. You pass it to the following script ruby channel_access.rb <channel name> <code> to generate the ....channel.json and ....channel_code. The channel owner will now see the application to appear in his https://trovo.live/settings/account.

When using the bot functionality (#start) the ARGV[0] and ARGV[1] should be the admin and target channel names respectively.

The file processed.jsonl (for keeping track of the next message to process) isn't rotating currently so you might want to cut it sometimes manually to avoid the bottleneck.

TODO

  • neat logging