{
  "peer": {
    "host": "0.peerjs.com",
    "port": 443,
    "secure": true,
    "path": "/",
    "config": {
      "iceServers": [
        {
          "urls": "stun:stun.l.google.com:19302"
        },
        {
          "urls": "stun:stun1.l.google.com:19302"
        },
        {
          "urls": "stun:stun2.l.google.com:19302"
        },
        {
          "urls": "stun:stun3.l.google.com:19302"
        },
        {
          "urls": "stun:stun.cloudflare.com:3478"
        }
      ],
      "iceTransportPolicy": "all",
      "iceCandidatePoolSize": 5
    },
    "debug": 2,
    "servers": [
      {
        "host": "0.peerjs.com",
        "port": 443,
        "secure": true,
        "path": "/",
        "label": "PeerJS 官方直连",
        "id": "peerjs-direct",
        "_viaProxy": false
      },
      {
        "host": "1od.dpdns.org",
        "port": 443,
        "secure": true,
        "path": "/https://0.peerjs.com:443/",
        "label": "1od → PeerJS 官方",
        "id": "peerjs-1od",
        "_viaProxy": true
      }
    ],
    "connectTimeoutMs": 30000
  },
  "mqtt": {
    "broker": "broker.emqx.io",
    "port": 8084,
    "path": "/mqtt",
    "routes": [
      {
        "id": "mqtt-1od",
        "label": "1od → EMQX",
        "url": "wss://1od.dpdns.org/https/broker.emqx.io:8084/mqtt"
      },
      {
        "id": "mqtt-direct",
        "label": "EMQX 直连",
        "url": "wss://broker.emqx.io:8084/mqtt"
      },
      {
        "id": "mqtt-worker",
        "label": "Worker → EMQX",
        "url": "wss://p2p-signal.obskoo0o.workers.dev/https/broker.emqx.io:8084/mqtt",
        "enabled": false,
        "comment": "已不是 WS 反代（返回 JSON），保留仅作记录；运行时会过滤 enabled=false"
      }
    ],
    "topic": "p1-chat/lobby/heartbeat-v3",
    "signalTopicPrefix": "p1-chat/signal/",
    "signalEnabled": true,
    "signalConnectTimeoutMs": 30000,
    "signalMessageTtlMs": 30000
  },
  "hub": {
    "prefix": "p1-hub-v3-",
    "count": 5,
    "max_peers_normal": 350,
    "max_peers_hub": 500
  },
  "params": {
    "ttl": 16,
    "gossip_size": 20,
    "loop_interval": 1000,
    "conn_timeout": 30000,
    "ping_timeout": 12000
  },
  "signal": {
    "primary": "https://p2p-signal.obskoo0o.workers.dev",
    "secondary": "https://1od.dpdns.org/https://broker.emqx.io:8084/mqtt",
    "fallback": "broker.emqx.io"
  },
  "homeSignal": {
    "enabled": true,
    "comment": "主路径。url 省略则自动用 location.origin + /api/signal（如 https://z1-10w.pages.dev/api/signal）"
  },
  "connection": {
    "version": 1,
    "peerRoutes": [
      {
        "id": "peerjs-direct",
        "label": "PeerJS 官方直连",
        "host": "0.peerjs.com",
        "port": 443,
        "secure": true,
        "path": "/"
      },
      {
        "id": "peerjs-1od",
        "label": "1od → PeerJS 官方",
        "host": "1od.dpdns.org",
        "port": 443,
        "secure": true,
        "path": "/https://0.peerjs.com:443/"
      }
    ],
    "mqttRoutes": [
      {
        "id": "mqtt-1od",
        "label": "1od → EMQX",
        "url": "wss://1od.dpdns.org/https/broker.emqx.io:8084/mqtt"
      },
      {
        "id": "mqtt-direct",
        "label": "EMQX 直连",
        "url": "wss://broker.emqx.io:8084/mqtt"
      },
      {
        "id": "mqtt-worker",
        "label": "Worker → EMQX",
        "url": "wss://p2p-signal.obskoo0o.workers.dev/https/broker.emqx.io:8084/mqtt",
        "enabled": false,
        "comment": "已不是 WS 反代（返回 JSON），保留仅作记录；运行时会过滤 enabled=false"
      }
    ],
    "iceServers": [
      {
        "urls": "stun:stun.l.google.com:19302"
      },
      {
        "urls": "stun:stun1.l.google.com:19302"
      },
      {
        "urls": "stun:stun2.l.google.com:19302"
      },
      {
        "urls": "stun:stun3.l.google.com:19302"
      },
      {
        "urls": "stun:stun.cloudflare.com:3478"
      }
    ],
    "bootstrap": {
      "aliveTtlMs": 30000,
      "fastRetryMs": 700,
      "routeAttemptSpacingMs": 3000,
      "routeAttemptLifetimeMs": 30000,
      "routeAttemptMax": 10,
      "nodeConnectTimeoutMs": 30000,
      "peerProbeTimeoutMs": 30000,
      "backgroundRetryMs": 8000
    }
  }
}
