Eu tenho um DID com DIDforSale que está direcionado para o meu servidor Asterisk. Quando eu ligo do meu telefone fixo, recebo a gravação de linha desconectada da AT & T. A CLI do Asterisk mostra a mensagem de erro:
[Oct 6 17:03:00] NOTICE[10563]: chan_sip.c:20163 handle_request_invite: Call from 'didforsale_1' to extension '###########' rejected because extension not found.
A parte "de" indica que corresponde corretamente à entrada sip.conf
peer. A parte "para" mostra que o peer está enviando corretamente o número DID como o ramal alvo. O número DID é uma extensão válida no contexto de entrada do peer (detalhes abaixo), então só posso assumir que o Asterisk está procurando no contexto errado.
Configuração
Estou usando o Asterisk 1.6.2.5-0ubuntu1.4 instalado via Apt em um servidor físico que executa o Ubuntu Server 10.04 (lúcido). Eu tenho o tronco configurado em sip.conf
com um peer por IP de origem (existem dois). Estas são as estrofes relevantes:
[didforsale_base](!)
type=peer
context=from-did
nat=no
insecure=port,invite
; configure codecs
disallow=all
allow=ulaw
allow=alaw
allow=g729
dtmfmode=rfc2833
[didforsale_1](didforsale_base)
host=AAA.AAA.AAA.AAA
[didforsale_2](didforsale_base)
host=BBB.BBB.BBB.BBB
Os peers são configurados para enviar chamadas para o contexto from-did
, que contém uma extensão por número DID. O contexto está configurado em extensions.ael
da seguinte forma:
// starting context for calls originating from DID trunks
// the call is matched on the DID number and routed appropriately
context from-did {
// test DID from DIDforSale
########### => jump s@inbound;
}
Saída de depuração
Com core set verbose 5
, core set debug 5
e sip set debug on
, a única saída CLI adicional além dos despejos de pacotes SIP é:
== Using SIP RTP CoS mark 5
Sending to AAA.AAA.AAA.AAA : 5060 (no NAT)
Using INVITE request as basis request - [email protected]
Found peer 'didforsale_1' for '+###########' from AAA.AAA.AAA.AAA:5060
Found RTP audio format 18
Found RTP audio format 0
Found RTP audio format 101
Found audio description format G729 for ID 18
Found audio description format PCMU for ID 0
Found audio description format telephone-event for ID 101
Capabilities: us - 0x10c (ulaw|alaw|g729), peer - audio=0x104 (ulaw|g729)/video=0x0 (nothing)/text=0x0 (nothing), combined - 0x104 (ulaw|g729)
Non-codec capabilities (dtmf): us - 0x1 (telephone-event), peer - 0x1 (telephone-event), combined - 0x1 (telephone-event)
Peer audio RTP is at port CCC.CCC.CCC.CCC:5432
Resolução de problemas prévia
Eu verifiquei com sip show peer didforsale_1
que os pares estão usando o contexto correto. dialplan show from-did
indica que o contexto foi analisado corretamente. Se eu incluí-lo no contexto padrão para o meu telefone de mesa, chamar o número DID me dá o menu IVR conforme o esperado.
Eu li as primeiras páginas dos resultados do Google para alguns conjuntos de termos de pesquisa ao redor da mensagem de erro, mas não encontrei nada de útil. É principalmente pessoas que usam o FreePBX ou um produto semelhante que precisa de ajuda para configurar o equivalente do meu contexto from-did
na GUI. Alguns posts parecem ser o mesmo problema que eu estou tendo, mas nenhum deles tem respostas. Eu colocaria links, mas minha reputação é muito baixa. Quando estiver alto o suficiente, eu edito para adicioná-los.