From f75b577b960852ec90bc76cdab42284a402b6d97 Mon Sep 17 00:00:00 2001 From: Teknium <127238744+teknium1@users.noreply.github.com> Date: Tue, 28 Jul 2026 21:59:07 -0700 Subject: [PATCH] docs: fix 0.0.0.0 bind-default drift after dual-stack change LINE plugin.yaml plus line/wecom-callback/msgraph-webhook/ whatsapp-cloud/teams user-guide pages still documented the old IPv4-only 0.0.0.0 defaults; update to the dual-stack unset default. Telegram webhook env docs live in the adapter docstring (updated with the code change); its plugin.yaml has no webhook host entry. --- plugins/platforms/line/plugin.yaml | 2 +- website/docs/user-guide/messaging/line.md | 4 ++-- website/docs/user-guide/messaging/msgraph-webhook.md | 2 +- website/docs/user-guide/messaging/teams.md | 2 +- website/docs/user-guide/messaging/wecom-callback.md | 7 ++++--- website/docs/user-guide/messaging/whatsapp-cloud.md | 2 +- 6 files changed, 10 insertions(+), 9 deletions(-) diff --git a/plugins/platforms/line/plugin.yaml b/plugins/platforms/line/plugin.yaml index f854bc4e2ea2..2f06b3e545fe 100644 --- a/plugins/platforms/line/plugin.yaml +++ b/plugins/platforms/line/plugin.yaml @@ -32,7 +32,7 @@ optional_env: prompt: "Webhook port" password: false - name: LINE_HOST - description: "Webhook bind host (default: 0.0.0.0)" + description: "Webhook bind host (default: unset → dual-stack, all interfaces IPv4+IPv6)" prompt: "Webhook host" password: false - name: LINE_PUBLIC_URL diff --git a/website/docs/user-guide/messaging/line.md b/website/docs/user-guide/messaging/line.md index dd468b175860..abed60427b38 100644 --- a/website/docs/user-guide/messaging/line.md +++ b/website/docs/user-guide/messaging/line.md @@ -106,7 +106,7 @@ hermes gateway The agent log shows: ``` -LINE: webhook listening on 0.0.0.0:8646/line/webhook (public: https://my-tunnel.example.com) +LINE: webhook listening on * (all interfaces, IPv4+IPv6):8646/line/webhook (public: https://my-tunnel.example.com) ``` Add the bot as a friend from the LINE app (scan the QR in the channel's **Messaging API** tab) and send it a message. @@ -162,7 +162,7 @@ Cron jobs with `deliver: line` route to `LINE_HOME_CHANNEL`. The adapter ships a |---|---|---|---| | `LINE_CHANNEL_ACCESS_TOKEN` | yes | — | Long-lived channel access token | | `LINE_CHANNEL_SECRET` | yes | — | Channel secret (HMAC-SHA256 webhook verification) | -| `LINE_HOST` | no | `0.0.0.0` | Webhook bind host | +| `LINE_HOST` | no | unset (dual-stack: all interfaces, IPv4+IPv6) | Webhook bind host | | `LINE_PORT` | no | `8646` | Webhook bind port | | `LINE_PUBLIC_URL` | for media | — | Public HTTPS base URL; required for image/voice/video sends | | `LINE_ALLOWED_USERS` | one of | — | Comma-separated user IDs (U-prefixed) | diff --git a/website/docs/user-guide/messaging/msgraph-webhook.md b/website/docs/user-guide/messaging/msgraph-webhook.md index 1badff7a32c7..eb1cb1dec9bc 100644 --- a/website/docs/user-guide/messaging/msgraph-webhook.md +++ b/website/docs/user-guide/messaging/msgraph-webhook.md @@ -61,7 +61,7 @@ All settings go under `platforms.msgraph_webhook.extra`: | Setting | Default | Description | |---------|---------|-------------| -| `host` | `0.0.0.0` | Bind address for the HTTP listener. Non-loopback binds require `allowed_source_cidrs`; loopback (`127.0.0.1` / `::1`) is the easiest dev-tunnel / reverse-proxy setup. | +| `host` | unset (dual-stack: all interfaces, IPv4+IPv6) | Bind address for the HTTP listener. Non-loopback binds require `allowed_source_cidrs`; loopback (`127.0.0.1` / `::1`) is the easiest dev-tunnel / reverse-proxy setup. | | `port` | `8646` | Bind port. | | `webhook_path` | `/msgraph/webhook` | URL path Graph POSTs to. | | `health_path` | `/health` | Readiness endpoint. | diff --git a/website/docs/user-guide/messaging/teams.md b/website/docs/user-guide/messaging/teams.md index bc59ca342ed1..3b4046db5f51 100644 --- a/website/docs/user-guide/messaging/teams.md +++ b/website/docs/user-guide/messaging/teams.md @@ -117,7 +117,7 @@ docker logs -f hermes Look for: ``` -[teams] Webhook server listening on 0.0.0.0:3978/api/messages +[teams] Webhook server listening on * (all interfaces, IPv4+IPv6):3978/api/messages ``` --- diff --git a/website/docs/user-guide/messaging/wecom-callback.md b/website/docs/user-guide/messaging/wecom-callback.md index 8a45ab8cb3c0..f6cf5ed4a473 100644 --- a/website/docs/user-guide/messaging/wecom-callback.md +++ b/website/docs/user-guide/messaging/wecom-callback.md @@ -56,7 +56,7 @@ WECOM_CALLBACK_TOKEN=your-callback-token WECOM_CALLBACK_ENCODING_AES_KEY=your-43-char-aes-key # Optional -WECOM_CALLBACK_HOST=0.0.0.0 +# WECOM_CALLBACK_HOST= # optional pin; unset = dual-stack (all interfaces, IPv4+IPv6) WECOM_CALLBACK_PORT=8645 WECOM_CALLBACK_ALLOWED_USERS=user1,user2 ``` @@ -82,7 +82,7 @@ Set these in `config.yaml` under `platforms.wecom_callback.extra`, or use enviro | `agent_id` | — | Agent ID of the self-built app (required) | | `token` | — | Callback verification token (required) | | `encoding_aes_key` | — | 43-character AES key for callback encryption (required) | -| `host` | `0.0.0.0` | Bind address for the HTTP callback server | +| `host` | unset (dual-stack: all interfaces, IPv4+IPv6) | Bind address for the HTTP callback server | | `port` | `8645` | Port for the HTTP callback server | | `path` | `/wecom/callback` | URL path for the callback endpoint | @@ -173,6 +173,7 @@ WeCom hits the public URL you registered. Confirm: **Port not reachable / listener not bound.** Check `hermes gateway run` logs for the bound host/port. If the adapter bound to `127.0.0.1` you must front it with a reverse proxy or tunnel — WeCom's servers -can't reach loopback. Set `extra.host: 0.0.0.0` in `config.yaml` (plus +can't reach loopback. Leave `extra.host` unset so the default dual-stack +bind (all interfaces, IPv4+IPv6) applies, or pin an interface in `config.yaml` (plus `allowed_source_cidrs` if exposing directly) or keep loopback and use a tunnel such as Cloudflare Tunnel / nginx. diff --git a/website/docs/user-guide/messaging/whatsapp-cloud.md b/website/docs/user-guide/messaging/whatsapp-cloud.md index d3baf5d2ca30..1bf7e68edaee 100644 --- a/website/docs/user-guide/messaging/whatsapp-cloud.md +++ b/website/docs/user-guide/messaging/whatsapp-cloud.md @@ -225,7 +225,7 @@ All settings live in `~/.hermes/.env`. Required values are in **bold**. | `WHATSAPP_CLOUD_ALLOW_ALL_USERS` | `false` | Set to `true` to bypass the allowlist. | | `WHATSAPP_CLOUD_APP_ID` | — | Optional, for future analytics integration. | | `WHATSAPP_CLOUD_WABA_ID` | — | Optional, for future analytics integration. | -| `WHATSAPP_CLOUD_WEBHOOK_HOST` | `0.0.0.0` | Interface the webhook server binds to. | +| `WHATSAPP_CLOUD_WEBHOOK_HOST` | unset (dual-stack: all interfaces, IPv4+IPv6) | Interface the webhook server binds to. | | `WHATSAPP_CLOUD_WEBHOOK_PORT` | `8090` | Port the webhook server binds to. Must match the port your tunnel forwards. | | `WHATSAPP_CLOUD_WEBHOOK_PATH` | `/whatsapp/webhook` | URL path Meta posts to. | | `WHATSAPP_CLOUD_API_VERSION` | `v20.0` | Meta Graph API version. Only override if a newer version is recommended in Meta's docs. |