SOCKET="/tmp/tmate.sock"

if [ -S "$SOCKET" ]; then
  tmate -S "$SOCKET" kill-server 2>/dev/null || true
  rm -f "$SOCKET"
fi

tmate -S "$SOCKET" new-session -d

SSH_LINK=""
WEB_LINK=""

for i in $(seq 1 60); do
  SSH_LINK=$(tmate -S "$SOCKET" display -p '#{tmate_ssh}' 2>/dev/null)
  WEB_LINK=$(tmate -S "$SOCKET" display -p '#{tmate_web}' 2>/dev/null)

  if [ -n "$SSH_LINK" ]; then
    break
  fi

  sleep 1
done

if [ -z "$SSH_LINK" ]; then
  echo "tmate link not ready"
  echo "---- tmate messages ----"
  tmate -S "$SOCKET" show-messages
else
  echo "SSH Link: $SSH_LINK"
  echo "WEB Link: $WEB_LINK"
fi
