Skip to content

Commit e772bb8

Browse files
committed
chore: improve x bot
1 parent c7fd427 commit e772bb8

File tree

4 files changed

+11
-9
lines changed

4 files changed

+11
-9
lines changed

agents/anda_bot/nitro_enclave/amd64.Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ RUN mv linux-amd64/dnsproxy ./ && chmod +x dnsproxy
2626
RUN wget -O ic_tee_nitro_gateway https://github.com/ldclabs/ic-tee/releases/download/v0.2.11/ic_tee_nitro_gateway
2727
RUN chmod +x ic_tee_nitro_gateway
2828

29-
RUN wget -O anda_bot https://github.com/ldclabs/anda/releases/download/v0.3.1/anda_bot
29+
RUN wget -O anda_bot https://github.com/ldclabs/anda/releases/download/v0.3.2/anda_bot
3030
RUN chmod +x anda_bot
3131

3232
FROM --platform=linux/amd64 debian:bookworm-slim AS runtime

agents/anda_bot/src/twitter.rs

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ use tokio_util::sync::CancellationToken;
1818
use crate::handler::ServiceStatus;
1919

2020
const MAX_HISTORY_TWEETS: i64 = 21;
21-
const MAX_SEEN_TWEET_IDS: usize = 1000;
21+
const MAX_SEEN_TWEET_IDS: usize = 10000;
2222

2323
static LOG_TARGET: &str = "twitter";
2424

@@ -139,7 +139,7 @@ impl TwitterDaemon {
139139
}
140140
}
141141

142-
match rand_number(0..=5) {
142+
match rand_number(0..=10) {
143143
0 => {
144144
if let Err(err) = self.handle_home_timeline().await {
145145
log::error!(target: LOG_TARGET, "handle_home_timeline error: {err:?}");
@@ -150,7 +150,7 @@ impl TwitterDaemon {
150150
}
151151
}
152152

153-
match rand_number(0..=9) {
153+
match rand_number(0..=20) {
154154
0 => {
155155
if let Err(err) = self.post_new_tweet().await {
156156
log::error!(target: LOG_TARGET, "post_new_tweet error: {err:?}");
@@ -166,7 +166,7 @@ impl TwitterDaemon {
166166
_ = cancel_token.cancelled() => {
167167
return Ok(());
168168
},
169-
_ = sleep(Duration::from_secs(rand_number(5 * 60..=15 * 60))) => {},
169+
_ = sleep(Duration::from_secs(rand_number(1 * 60..=5 * 60))) => {},
170170
}
171171
}
172172
}
@@ -220,10 +220,12 @@ impl TwitterDaemon {
220220
if seen_tweet_ids.len() >= MAX_SEEN_TWEET_IDS {
221221
seen_tweet_ids.drain(0..MAX_SEEN_TWEET_IDS / 2);
222222
}
223-
let tweets = self
224-
.scraper
225-
.get_home_timeline(1, seen_tweet_ids.clone())
226-
.await?;
223+
let ids = if seen_tweet_ids.len() > 42 {
224+
seen_tweet_ids[(seen_tweet_ids.len() - 42)..].to_vec()
225+
} else {
226+
seen_tweet_ids.clone()
227+
};
228+
let tweets = self.scraper.get_home_timeline(1, ids).await?;
227229
log::info!(target: LOG_TARGET, "process home timeline, {} tweets", tweets.len());
228230

229231
let mut likes = 0;

anda_ architecture.webp

65.3 KB
Loading

anda_diagram.webp

1.78 KB
Loading

0 commit comments

Comments
 (0)