Eu configurei o backend de CDR do Asterisk para o PostgreSQL, e tudo está funcionando bem para chamadas entre dois peers registrados.
O problema é quando um usuário chama um par não registrado. Eu quero que o Asterisk insira esse registro, mas isso não acontece (ele responde ao cliente SIP do chamador com 503 / Serviço Indisponível ... talvez isso tenha algo a ver com isso).
Eu suspeito que o problema pode estar no modo como configurei o registro de usuários, mas não sou especialista, por isso não sei realmente o que estou fazendo. De qualquer forma, estou reportando qualquer informação que considere útil para resolver o problema, se eu sentir falta de algo importante, por favor, pergunte e eu adicionarei. Estou usando o Asterisk 13.
cdr.conf
:
[general]
unanswered = yes
extensions.conf
:
[default]
switch => Realtime/default@extensions
Os pares e extensões do Pjsip também são retirados do banco de dados.
Exemplo de registro em asterisk.ps_endpoints
:
(id=100, transport=transport-udp, aors=100, auth=100, context=default, disallow=all, allow=ulaw, direct_media=no, identify_by=username, rtp_timeout=10)
Exemplo de registro em asterisk.ps_aors
:
(id=100, max_contacts=1, remove_existing=yes, qualify_frequency=10)
Exemplo de registro em asterisk.ps_auths
:
(id=100, auth_type=userpass, password=*****, username=100)
Exemplo de registro em asterisk.extensions
:
(id=7, context=default, exten=100, priority=1, app=Dial, appdata=PJSIP/100)
Notas:
asterisk.extensions
não contém nada a não ser os Discos. asterisk.extensions
para cada usuário (mas não tenho nenhum problema em adicionar um monte de novas extensões "estáticas"). Tags asterisk