coinbase-pro-rs 0.8.1

Coinbase pro client for Rust
Documentation
use coinbase_pro_rs::{structs::wsfeed::*, WSFeed, WS_SANDBOX_URL};
use futures::{StreamExt, TryStreamExt};

#[tokio::main]
async fn main() {
    let stream = WSFeed::connect(WS_SANDBOX_URL, &["BTC-USD"], &[ChannelType::Heartbeat])
        .await
        .unwrap();

    stream
        .take(10)
        .try_for_each(|msg| async {
            match msg {
                Message::Heartbeat {
                    sequence,
                    last_trade_id,
                    time,
                    ..
                } => println!("{}: seq:{} id{}", time, sequence, last_trade_id),
                Message::Error { message } => println!("Error: {}", message),
                Message::InternalError(_) => panic!("internal_error"),
                other => println!("{:?}", other),
            };
            Ok(())
        })
        .await
        .expect("stream fail");
}