feat(freeswitch): publica SIP/RTP no host pra registro de ramal de verdade
Usuário tentou registrar um ramal e não conseguiu — nenhuma porta SIP/RTP estava publicada no host, só o Event Socket (interno). O teste ponta a ponta da fase anterior só funcionava porque os softphones de teste rodavam dentro da mesma rede Docker. RTP restrito a um range fixo de 200 portas (16384-16584, via sed em switch.conf.xml) — o default vanilla (~16k portas) é inviável de publicar uma a uma. docker-compose.yml publica 5060/udp+tcp (SIP) e 16384-16584/udp (RTP); Event Socket continua nunca publicado. Verificado: iptables -t nat -L DOCKER confirma DNAT correto pras 201 portas; sofia status confirma que o STUN já configurado (external_rtp_ip/ external_sip_ip) resolve pro IP público real da VM, então o SDP vai anunciar o IP certo — não só o registro, o áudio também deve funcionar. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BFaBaBSQGhyXGEgtTYZGV8
This commit is contained in:
@@ -91,9 +91,15 @@ services:
|
||||
# host e precisa enxergar os mesmos arquivos que o FreeSWITCH grava
|
||||
# (agente.md secao 90-91) — ver docs/RECORDING.md.
|
||||
- ./data/recordings-spool:/recordings
|
||||
# Nenhuma porta publicada no host: SIP/RTP ainda não têm troncos reais
|
||||
# configurados, e o Event Socket (8021) só deve ser alcançável por outros
|
||||
# Event Socket (8021) NUNCA publicado — só alcançável por outros
|
||||
# containers na rede interna do compose (agente.md secao 22).
|
||||
# SIP (5060) e RTP (16384-16584, range fixo no Dockerfile) publicados
|
||||
# a partir da PHASE 54 — necessário pra registrar um softphone/telefone
|
||||
# de fora da rede Docker (achado testando registro de verdade).
|
||||
ports:
|
||||
- "5060:5060/udp"
|
||||
- "5060:5060/tcp"
|
||||
- "16384-16584:16384-16584/udp"
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "fs_cli -p \"$$ESL_PASSWORD\" -x status | grep -q 'is ready'"]
|
||||
interval: 10s
|
||||
|
||||
Reference in New Issue
Block a user