From a1d67c50c8ebc5395b069e30b60d66e0c7de5a5a Mon Sep 17 00:00:00 2001 From: DanConwayDev Date: Wed, 14 Feb 2024 13:47:11 +0000 Subject: feat: send to default relays, blast repo event improve the distribution of events by sending to default relays in addition to user and repo relays. for better discoverability of repo events, this is also blasted. a temporary fix to blast everything was removed. the less reliable purplepages.es relay is moved to more_fallback_relays that currently isn't used --- src/sub_commands/send.rs | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) (limited to 'src/sub_commands/send.rs') diff --git a/src/sub_commands/send.rs b/src/sub_commands/send.rs index 2c1dec8..b8cb271 100644 --- a/src/sub_commands/send.rs +++ b/src/sub_commands/send.rs @@ -183,7 +183,23 @@ pub async fn send_events( repo_read_relays: Vec, animate: bool, ) -> Result<()> { - let (_, _, _, all) = unique_and_duplicate_all(&my_write_relays, &repo_read_relays); + let (_, _, _, mut all) = unique_and_duplicate_all(&my_write_relays, &repo_read_relays); + + let mut fallback = client.get_fallback_relays().clone(); + + // blast repo events + if events.iter().any(|e| e.kind().as_u64().eq(&REPO_REF_KIND)) { + for r in client.get_blaster_relays() { + fallback.push(r.to_string()); + } + } + + // then remaining fallback list + for r in &fallback { + if !all.iter().any(|r2| r2.eq(&r)) { + all.push(r); + } + } let m = MultiProgress::new(); let pb_style = ProgressStyle::with_template(if animate { @@ -215,7 +231,7 @@ pub async fn send_events( join_all(all.iter().map(|&relay| async { let details = format!( - "{}{} {}", + "{}{}{} {}", if my_write_relays.iter().any(|r| relay.eq(r)) { " [my-relay]" } else { @@ -226,6 +242,11 @@ pub async fn send_events( } else { "" }, + if fallback.iter().any(|r| relay.eq(r)) { + " [default]" + } else { + "" + }, *relay, ); let pb = m.add( -- cgit v1.2.3