Compare commits

..

No commits in common. "main" and "1.0.0" have entirely different histories.
main ... 1.0.0

3 changed files with 15 additions and 38 deletions

2
Cargo.lock generated
View file

@ -133,7 +133,7 @@ dependencies = [
[[package]] [[package]]
name = "ets2newscord" name = "ets2newscord"
version = "1.0.1" version = "1.0.0"
dependencies = [ dependencies = [
"chrono", "chrono",
"serde", "serde",

View file

@ -1,6 +1,6 @@
[package] [package]
name = "ets2newscord" name = "ets2newscord"
version = "1.0.1" version = "1.0.0"
edition = "2021" edition = "2021"
[profile.release] [profile.release]

View file

@ -8,10 +8,7 @@ use std::{
io::{self, Read, Seek, Write}, io::{self, Read, Seek, Write},
}; };
const APPID: &str = "227300"; // ETS2: 227300, AssettoCorsa: 244210 const APPID: &str = "227300";
const CLANIMGURLBASE: &str =
"https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/";
const LOGOURL: &str = "https://eurotrucksimulator2.com/images/logo.png";
#[derive(Deserialize)] #[derive(Deserialize)]
struct SUResp { struct SUResp {
@ -91,44 +88,32 @@ fn main() {
.split("[img]{STEAM_CLAN_IMAGE}") .split("[img]{STEAM_CLAN_IMAGE}")
.collect(); .collect();
let imgurl = if tmptext.len() > 1 { let tmptext2: Vec<&str> = tmptext[1].split("[/img]").collect();
let splitend: Vec<&str> = tmptext[1].split("[/img]").collect(); let imgurl = &tmptext2[0];
format!("{}{}", CLANIMGURLBASE, splitend[0])
} else {
LOGOURL.to_string()
};
let whreq: String = format!( let whreq: String = format!(
r#" r#"
{{ {{
"username": "ETS2 Updates", "username": "ETS2 Updates",
"avatar_url": "{}", "avatar_url": "https://eurotrucksimulator2.com/images/logo.png",
"content": "", "content": "",
"embeds": [{{ "embeds": [{{
"title": "{}", "title": "{}",
"description": "{}", "description": "{}",
"url": "{}", "url": "{}",
"timestamp": "{}", "timestamp": "{}",
"thumbnail": {{"url": "{}"}} "thumbnail": {{"url": "https://cdn.akamai.steamstatic.com/steamcommunity/public/images/clans/{}"}}
}}] }}]
}} }}
"#, "#,
LOGOURL,
body.appnews.newsitems.post0.title, body.appnews.newsitems.post0.title,
if body.appnews.newsitems.post0.contents.len() > 250 { if body.appnews.newsitems.post0.contents.len() > 250 {
format!( format!(
"{} ...", "{} ...",
body.appnews.newsitems.post0.contents[..250] body.appnews.newsitems.post0.contents[..250].to_string()
.to_string()
.replace("\n", " ")
) )
} else { } else {
body.appnews body.appnews.newsitems.post0.contents.to_string()
.newsitems
.post0
.contents
.to_string()
.replace("\n", " ")
}, },
body.appnews.newsitems.post0.url, body.appnews.newsitems.post0.url,
t_str, t_str,
@ -138,23 +123,15 @@ fn main() {
let resp = ureq::post(&webhook) let resp = ureq::post(&webhook)
.set("Content-Type", "application/json;charset=utf-8") .set("Content-Type", "application/json;charset=utf-8")
.send_string(&whreq); .send_string(&whreq);
resp.expect("Error sending Discord webhook");
match resp {
Ok(_) => {
println!("Successfully updated webhook");
f.set_len(0).expect("Cannot empty the file");
f.seek(io::SeekFrom::Start(0))
.expect("Cannot seek to file beginning");
write!(f, "{}", body.appnews.newsitems.post0.date).expect("Can't write file");
}
Err(e) => {
println!("Error updating webhook:\n{}\nRequest JSON:\n{}", e, &whreq);
}
}
fdt = body.appnews.newsitems.post0.date; fdt = body.appnews.newsitems.post0.date;
} }
f.set_len(0).expect("Cannot empty the file");
f.seek(io::SeekFrom::Start(0))
.expect("Cannot seek to file beginning");
write!(f, "{}", body.appnews.newsitems.post0.date).expect("Can't write file");
println!("{}: Sleeping...", chrono::offset::Utc::now()); println!("{}: Sleeping...", chrono::offset::Utc::now());
thread::sleep(time::Duration::from_secs(60 * 15)); thread::sleep(time::Duration::from_secs(60 * 15));
} }