#!/usr/bin/env bash
# Fill turnserver.conf external-ip from the host's public IPv4 if still a placeholder.
set -euo pipefail
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
CONF="$ROOT/turnserver.conf"

if ! grep -q 'YOUR.PUBLIC.IP.HERE' "$CONF" 2>/dev/null; then
  echo "external-ip already set in $CONF"
  exit 0
fi

IP="$(curl -4 -fsS https://checkip.amazonaws.com | tr -d '[:space:]')"
if [[ ! "$IP" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
  echo "Could not detect public IPv4 (got: $IP)" >&2
  exit 1
fi

sed -i.bak "s/YOUR.PUBLIC.IP.HERE/$IP/" "$CONF"
echo "Set external-ip=$IP in $CONF"
echo "Next: edit user= password, then: docker compose up -d"
