[package] name = "nomifun-channel" version.workspace = true edition.workspace = true [features] default = [] telegram = ["dep:reqwest", "dep:nomifun-runtime"] lark = ["dep:reqwest", "dep:tokio-tungstenite", "dep:futures-util", "dep:prost", "dep:rustls", "dep:rustls-native-certs"] dingtalk = ["dep:reqwest", "dep:tokio-tungstenite", "dep:futures-util", "dep:rustls", "dep:rustls-native-certs"] weixin = ["dep:reqwest", "dep:futures-util", "dep:base64", "dep:uuid"] discord = ["dep:reqwest", "dep:tokio-tungstenite", "dep:futures-util", "dep:rustls", "dep:rustls-native-certs", "dep:base64"] matrix = ["dep:reqwest"] mattermost = ["dep:reqwest", "dep:tokio-tungstenite", "dep:futures-util", "dep:rustls", "dep:rustls-native-certs"] slack = ["dep:reqwest", "dep:tokio-tungstenite", "dep:futures-util", "dep:rustls", "dep:rustls-native-certs"] twitch = ["dep:reqwest", "dep:tokio-tungstenite", "dep:futures-util", "dep:rustls", "dep:rustls-native-certs"] nostr = ["dep:nostr", "dep:tokio-tungstenite", "dep:futures-util", "dep:rustls", "dep:rustls-native-certs", "dep:hex"] # qqbot module + factory arm land when the parallel QQ Bot work is integrated. qqbot = ["dep:reqwest", "dep:tokio-tungstenite", "dep:futures-util", "dep:rustls", "dep:rustls-native-certs"] [dependencies] nomifun-common.workspace = true nomifun-db.workspace = true nomifun-api-types.workspace = true nomifun-realtime.workspace = true nomifun-conversation.workspace = true nomifun-ai-agent.workspace = true nomifun-extension.workspace = true # Telegram update-watermark persistence anchors on the process-global # runtime root ({data_dir}/runtime) — see plugins/telegram/watermark.rs. nomifun-runtime = { workspace = true, optional = true } axum.workspace = true tokio.workspace = true serde.workspace = true serde_json.workspace = true thiserror.workspace = true async-trait.workspace = true tracing.workspace = true getrandom.workspace = true dashmap.workspace = true regex.workspace = true reqwest = { workspace = true, optional = true } tokio-tungstenite = { workspace = true, optional = true } futures-util = { workspace = true, optional = true } prost = { workspace = true, optional = true } rustls = { workspace = true, optional = true } rustls-native-certs = { workspace = true, optional = true } base64 = { workspace = true, optional = true } uuid = { workspace = true, optional = true } nostr = { workspace = true, optional = true } hex = { workspace = true, optional = true } [dev-dependencies] nomifun-ai-agent = { workspace = true, features = ["test-support"] } tokio = { workspace = true, features = ["test-util"] } tempfile.workspace = true