[package]
edition = "2024"
name = "sms-client"
version = "3.1.0"
authors = ["morgverd <morgverd@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust client library for sms-server - send/receive SMS through your own GSM hardware with HTTP/WebSocket support and no API subscriptions."
homepage = "https://github.com/morgverd/sms-client"
documentation = "https://docs.rs/sms-client"
readme = "README.md"
keywords = [
"sms",
"gsm",
"http-client",
"websocket-client",
]
categories = [
"hardware-support",
"api-bindings",
]
license = "AGPL-3.0-only"
repository = "https://github.com/morgverd/sms-client"
[package.metadata.docs.rs]
features = [
"http-tls-rustls",
"websocket-tls-rustls",
]
[features]
default = ["http"]
http = ["dep:reqwest"]
http-tls-native = [
"http",
"reqwest/native-tls",
]
http-tls-rustls = [
"http",
"reqwest/rustls-tls",
]
websocket = [
"dep:log",
"dep:futures-util",
"dep:tokio-tungstenite",
"dep:tungstenite",
"dep:http",
]
websocket-tls-native = [
"websocket",
"tokio-tungstenite/native-tls",
"dep:native-tls",
]
websocket-tls-rustls = [
"websocket",
"tokio-tungstenite/rustls-tls-webpki-roots",
"dep:rustls",
"dep:rustls-pemfile",
"dep:rustls-pki-types",
]
[lib]
name = "sms_client"
path = "src/lib.rs"
[dependencies.futures-util]
version = "0.3.31"
optional = true
[dependencies.http]
version = "1.3.1"
optional = true
[dependencies.log]
version = "0.4.28"
optional = true
[dependencies.native-tls]
version = "0.2"
optional = true
[dependencies.reqwest]
version = "0.12.23"
features = ["json"]
optional = true
default-features = false
[dependencies.rustls]
version = "0.23"
features = ["aws-lc-rs"]
optional = true
[dependencies.rustls-pemfile]
version = "2.0"
optional = true
[dependencies.rustls-pki-types]
version = "1.0"
optional = true
[dependencies.serde]
version = "1.0.219"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.143"
[dependencies.sms-types]
version = "2.0.0"
[dependencies.thiserror]
version = "2.0.16"
[dependencies.tokio]
version = "1.47.1"
features = ["full"]
[dependencies.tokio-tungstenite]
version = "0.27.0"
features = ["connect"]
optional = true
default-features = false
[dependencies.tungstenite]
version = "0.27.0"
optional = true
[dependencies.url]
version = "2.5.7"