Skip to main content

Crate crispy_stream_checker

Crate crispy_stream_checker 

Source
Expand description

Concurrent IPTV stream validation library.

Validates M3U/IPTV stream URLs by performing HTTP HEAD (with GET fallback) requests with bounded concurrency. Inspired by iptv-checker-module and IPTVChecker-Python.

§Example

use crispy_stream_checker::{check_stream, check_bulk, CheckOptions};

let opts = CheckOptions::default();

// Single stream
let result = check_stream("http://example.com/stream.m3u8", &opts).await;
println!("available: {}", result.info.available);

// Bulk check with progress
let urls = vec!["http://a.com/1".into(), "http://b.com/2".into()];
let report = check_bulk(&urls, &opts).await;
println!("{}/{} available", report.available, report.total);

Re-exports§

pub use backoff::BackoffStrategy;
pub use checker::check_bulk;
pub use checker::check_bulk_with_progress;
pub use checker::check_stream;
pub use checker::check_stream_named;
pub use checkpoint::CheckpointWriter;
pub use csv::sanitize_csv_field;
pub use dedup::UrlDeduplicator;
pub use error::CheckerError;
pub use error::summarize_error;
pub use error::summarize_error_str;
pub use normalize::normalize_url_for_hash;
pub use normalize::url_resume_hash;
pub use proxy::parse_proxy_list;
pub use status::categorize_status;
pub use status::meets_data_threshold;
pub use types::BulkCheckReport;
pub use types::CheckOptions;
pub use types::CheckResult;
pub use types::StreamCategory;
pub use types::StreamInfo;

Modules§

backoff
Backoff strategies for stream check retries.
checker
Core stream checking logic with bounded concurrency.
checkpoint
Resume checkpoint writer with buffered writes.
csv
CSV export with formula injection prevention.
dedup
URL deduplication with async result sharing.
error
Error types for stream checking operations.
normalize
URL normalization for checkpoint hashing.
proxy
Proxy list loading and geoblock confirmation.
status
Stream status categorization from HTTP status codes.
types
Domain types for stream check configuration and results.