opencellid 0.2.0

Rust client library for the OpenCellID API — sync and async clients with tracing, structured errors, and bounded I/O.
Documentation
//! Blocking smoke test against the live OpenCellID API.

use std::env;

use opencellid::{CellKey, ClientBuilder, Radio};

fn main() -> Result<(), Box<dyn std::error::Error>> {
    tracing_subscriber::fmt()
        .with_env_filter(
            tracing_subscriber::EnvFilter::try_from_default_env()
                .unwrap_or_else(|_| "opencellid=debug,info".into()),
        )
        .init();

    let api_key = env::var("OPENCELLID_API_KEY")
        .map_err(|_| "set OPENCELLID_API_KEY to your OpenCellID token")?;
    let client = ClientBuilder::new().api_key(api_key).build_blocking()?;
    let cell = client.get_cell(CellKey::new(262, 2, 801, 86355).with_radio(Radio::Lte))?;
    println!("cell: {cell:#?}");
    Ok(())
}