mod common;
use egg_mode::Response;
use egg_mode::raw;
#[tokio::main]
async fn main() {
let config = common::Config::load().await;
let url = "https://api.twitter.com/1.1/statuses/show.json";
let tweet_id: u64 = 1261253754969640960;
let params = raw::ParamList::new()
.extended_tweets()
.add_param("id", tweet_id.to_string());
let req = raw::request_get(url, &config.token, Some(¶ms));
let output: Response<serde_json::Value> = raw::response_json(req).await.unwrap();
let json = output.response;
let user_name = json["user"]["name"].as_str().unwrap();
let screen_name = json["user"]["screen_name"].as_str().unwrap();
let text = if let Some(t) = json["extended_tweet"]["full_text"].as_str() {
t
} else if let Some(t) = json["full_text"].as_str() {
t
} else if let Some(t) = json["text"].as_str() {
t
} else {
panic!("couldn't load text from tweet?");
};
println!("{} (@{}) tweeted:", user_name, screen_name);
println!("---");
println!("{}", text);
}