coingecko_interval_service/
coingecko-interval-service.rs

1use price_adapter::services::IntervalService;
2use price_adapter::sources::CoinGecko;
3use price_adapter::types::{Service, Source};
4use std::time::Duration;
5
6#[tokio::main]
7async fn main() {
8    tracing_subscriber::fmt::init();
9    let coingecko = CoinGecko::new_with_default(None).unwrap();
10    let mut service = IntervalService::new(coingecko, Duration::from_secs(20));
11    service.start(vec!["BTC"].as_slice()).await.unwrap();
12
13    loop {
14        tokio::time::sleep(Duration::from_secs(1)).await;
15        println!("{:?}", service.get_prices(&["BTC"]).await);
16    }
17}