- infrastructure/docker/asterisk.Dockerfile: Asterisk 22.10.1 LTS compilado do fonte oficial (Debian trixie nao distribui mais o pacote asterisk), com PJSIP, AMI, ARI, res_odbc/res_config_odbc, cdr_adaptive_odbc, cel_odbc, app_queue - infrastructure/asterisk/config: templates renderizados no entrypoint (secrets via envsubst, nunca versionados) + sorcery.conf/extconfig.conf para PJSIP realtime, dialplan de teste (extensao 600) - infrastructure/postgres/init/002-asterisk-realtime.sql: tabelas ps_endpoints/ps_auths/ps_aors/ps_contacts/ps_endpoint_id_ips/ ps_registrations/cdr/cel no schema 'asterisk' - infrastructure/nftables: protege AMI/ARI/SIP contra acesso pela LAN (interface ens18), trazido da Fase 9 do TODO para ja, sem afetar SSH nem a rede interna do Docker - docker-compose.yml: servico asterisk em network_mode: host (RTP); Postgres publicado em 127.0.0.1:5432 (nao 0.0.0.0) para o Asterisk alcanca-lo, ja que host network nao enxerga a rede Docker interna Testado: AMI login, ARI com auth (401 sem auth), pjsip realtime consultando Postgres sem erro, dialplan originate -> CDR e CEL gravados corretamente, healthcheck do compose passando.
12 lines
509 B
Plaintext
12 lines
509 B
Plaintext
; Mapeia os objetos PJSIP (sorcery) para o backend realtime/ODBC. As tabelas
|
|
; físicas (ps_endpoints, ps_auths, ...) vivem no schema "asterisk" do Postgres
|
|
; (ver infrastructure/postgres/init/002-asterisk-realtime.sql) e o mapeamento
|
|
; nome-lógico -> conexão ODBC/tabela está em extconfig.conf.
|
|
[res_pjsip]
|
|
endpoint = realtime,ps_endpoints
|
|
auth = realtime,ps_auths
|
|
aor = realtime,ps_aors
|
|
contact = realtime,ps_contacts
|
|
endpoint_id_ip = realtime,ps_endpoint_id_ips
|
|
registration = realtime,ps_registrations
|