aboutsummaryrefslogtreecommitdiff
path: root/src/util
diff options
context:
space:
mode:
authorLorenz Leitner <lrnz.ltnr@gmail.com>2021-10-10 15:12:41 +0200
committerLorenz Leitner <lrnz.ltnr@gmail.com>2021-10-12 12:06:57 +0200
commited1c228094188d872ceb8407fb6f46ff698937c2 (patch)
tree7d97b610220ff57cfcbf874b45936a88571de8a7 /src/util
parentBasic (re)implementation of gonzobot wolfram alpha (diff)
Add test
Put WA api response JSON into test resource file Add short url, increase concurrency Move shorten_url to util dir
Diffstat (limited to '')
-rw-r--r--src/util/mod.rs1
-rw-r--r--src/util/web.rs20
2 files changed, 21 insertions, 0 deletions
diff --git a/src/util/mod.rs b/src/util/mod.rs
new file mode 100644
index 0000000..fdd4603
--- /dev/null
+++ b/src/util/mod.rs
@@ -0,0 +1 @@
+pub mod web;
diff --git a/src/util/web.rs b/src/util/web.rs
new file mode 100644
index 0000000..77e20a3
--- /dev/null
+++ b/src/util/web.rs
@@ -0,0 +1,20 @@
+use anyhow::{Context, Error, Result};
+use reqwest::{get, Url};
+
+// TODO: Either catinator should have a URL shortening utility module,
+// or we should start our own service
+pub(crate) async fn shorten_url(url: &str) -> Result<String, Error> {
+ // This just uses the first service gonzobot uses too
+ let short_url = get(Url::parse(&format!(
+ "https://is.gd/create.php?format=simple&url={}",
+ url
+ ))
+ .context("Failed to parse url")?)
+ .await
+ .context("Failed to make request")?
+ .text()
+ .await
+ .context("failed to get request response text")?;
+
+ Ok(short_url)
+}
ck?id=130cb43700385e4407ec4accf00ef4636f455adc&follow=1'>update nixpkgs-masterMax Audron-3/+3 2024-10-22update factorioMax Audron-3/+27 2024-10-18deploy satisfactory serverMax Audron-1/+22 2024-10-18switch to protonvpn for illegal activitiesMax Audron-50/+240 2024-08-12move catinator secrets to be managed by secrets moduleMax Audron-1/+8 2024-08-12add pastor deploymentMax Audron-1/+296 2024-08-12remove psql ensurePermissionsMax Audron-5/+5 2024-08-12disable k8sMax Audron-5/+0 2024-08-12add catinatorMax Audron-7/+299 2024-08-12update flaresolverrMax Audron-1/+1 2024-08-12update powerdns configMax Audron-5/+5 2024-08-12update garage config to 1.0Max Audron-2/+3 2024-08-12update to nixos 24.05Max Audron-27/+21 2024-07-03add acc serverMax Audron-2/+23 2024-03-29add rtmp and laplaceMax Audron-1/+200 2024-03-29add hydra secretsMax Audron-0/+0 2024-03-29add hydra secretsMax Audron-5/+35 2024-03-19extend postgresql hpa for podman ipsMax Audron-1/+1 2024-03-02update authentikMax Audron-8/+6 2024-03-02setup gitea oidcMax Audron-5/+18 2024-02-28add giteaMax Audron-2/+39 2024-02-28remove gitlab moduleMax Audron-25/+0 2024-02-26update d3fus phone wg pubkeyMarcin Maselko-1/+1 2024-02-26added d3fus nass to wg configMarcin Maselko-0/+9 2024-02-21set minecraft memoryMax Audron-0/+1 2024-02-21add minecraft server and move palworld to games moduleMax Audron-3/+56 2024-02-21set network manually for ns serversMax Audron-0/+51 2024-02-20update nixpkgs-unstableMax Audron-3/+3 2024-02-19update d3fus fritzbox wg portMarcin Maselko-1/+1 2024-02-19add xonotic serverMax Audron-1/+10