[package]
name = "rmqtt-http-api"
version.workspace = true
description = "This plugin provides HTTP APIs for integration with external systems, enabling operations like querying client information and publishing messages."
repository = "https://github.com/rmqtt/rmqtt/tree/master/rmqtt-plugins/rmqtt-http-api"
edition.workspace = true
authors.workspace = true
rust-version.workspace = true
license.workspace = true
[features]
default = ["rmqtt-storage"]
redb = ["rmqtt-storage/redb", "circuit-breaker"]
sled = ["rmqtt-storage/sled", "circuit-breaker"]
redis = ["rmqtt-storage/redis", "circuit-breaker"]
redis-cluster = ["redis", "rmqtt-storage/redis-cluster"]
circuit-breaker = ["rmqtt-storage/circuit-breaker"]
[dependencies]
rmqtt = { workspace = true, features = ["plugin", "metrics", "stats", "grpc", "shared-subscription", "retain", "msgstore", "delayed", "auto-subscription"] }
tokio = { workspace = true, features = ["sync", "time" ] }
serde = { workspace = true, features = ["derive"] }
salvo = { version = "0.90", features = ["affix-state", "serve-static"] }
rmqtt-storage = { workspace = true, default-features = false, features = ["ttl"], optional = true}
async-trait.workspace = true
log.workspace = true
serde_json.workspace = true
anyhow.workspace = true
base64.workspace = true
bytes.workspace = true
futures.workspace = true
socket2.workspace = true
prometheus.workspace = true
postcard.workspace = true
rust-embed = "8"
lru = "0.18"