Crate trovo[−][src]
Expand description
A Rust api & chat client for Trovo.
It currently doesn’t support all of the trovo api, feel free to open a PR adding new endpoints.
Example
Find a user by username and then connect to their chat.
use futures::prelude::*; use std::{env, error::Error}; use trovo::ClientId; #[tokio::main] async fn main() -> Result<(), Box<dyn Error>> { let client_id = env::var("CLIENT_ID").expect("missing CLIENT_ID env var"); let username = env::var("USER_NAME").expect("missing USER_NAME env var"); let client = trovo::Client::new(ClientId::new(client_id)); println!("looking up user '{}'", username); let user = client .user(username) .await? .expect("no user found for the given username"); println!("found user {:#?}", user); let mut messages = client.chat_messages_for_channel(&user.channel_id).await?; println!("listening for chat messages"); while let Some(msg) = messages.next().await { let msg = msg?; println!("[{}] {}", msg.nick_name, msg.content); } Ok(()) }
Modules
Chat
Structs
Error returned by AccessTokenOnly
when
refresh_token
is called.
A simple access token provider that errors if refreshing is attempted. It is strongly advised
that you implement your own AccessTokenProvider
so that you can handle refreshing.
Struct representing errors that trovo api responds with.
Channel id and its emotes
Response for the get users api
Entrypoint for making requests to the Trovo api.
A simple client id provider that simply wraps the client id string
Container for customized emotes
Common emote payload across types
Map of different emote types
Payload for the get channel info by id api
Payload for the get emotes api call
Response for the get emotes api
Payload for the get users api
Response for the get users api
Social media link for a channel
User details returned by Client::users
Enums
Represents an access token
Audience type of a channel
Standard errors that can occur on most api calls
Types of emotes to fetch
Error codes returned by the Trovo api
Standard errors that can occur on most api calls
Traits
A trait for an auth provider that can provide an access token.
A trait for an auth provider that can provide a client id