Causas Q.850

Q.850 cause 18 (No user responding): o que significa

Resposta curta: Q.850 cause 18 (No user responding) indica que o destino não respondeu ao pedido de chamada, nem com toque nem com atendimento, dentro do tempo previsto. Não é ocupado nem recusa: o aparelho simplesmente não reagiu. Em SIP costuma ser um ramal registrado que parou de responder, por NAT ou firewall. Confira o registro e o tráfego.

Causa 18 na referência
Causa18
Nome oficial (ITU-T Q.850)No user responding
ClasseEvento normal (1 a 31)
Resposta SIP pela RFC 3398SIP 408 Request Timeout

Como o Monitor trata a causa 18

Quando a operadora informa a causa Q.850 no cabeçalho Reason da resposta SIP, o Monitor a guarda junto com o código SIP em cada chamada de teste, e ela aparece na evidência do incidente, pronta para o chamado na operadora. Nas telas em português, a causa 18 aparece como: nenhum aparelho respondeu.

A causa 18 também decide a leitura de um SIP 480, que sozinho não diz se o destino tocou ou se nada respondeu:

O que deve atender o númeroSIP 480 com causa 18
Uma saudação ou mensagem gravada (a URA)Fora do ar
Um tom de teste ou serviço de ecoFora do ar
Outro: pode tocar ou ser atendidoFora do ar

Como qualquer falha, uma chamada de teste lida como Fora do ar é repetida 3 vezes, a cada 2 minutos, e só 4 falhas seguidas abrem um incidente.

O que significa a causa 18 na prática?

A Q.850 cause 18, No user responding, é usada quando o destino não responde ao pedido de estabelecimento com uma indicação de alerta (toque) ou de atendimento dentro do tempo previsto. A diferença para a causa 19 é que, na 19, o telefone tocou e ninguém atendeu; na 18, nem o toque foi confirmado. Pela RFC 3398 (seção 7.2.4.1), a causa 18 vira SIP 408 Request Timeout. No caminho inverso, a RFC converte o SIP 480 Temporarily Unavailable em 18, por isso um 480 da operadora pode aparecer no seu PABX como causa 18. Em SS7 ela vem na REL do ISUP; em SIP, num Reason: Q.850;cause=18 (RFC 6432). No Asterisk, ${HANGUPCAUSE} fica em 18 e, onde o CDR grava o campo, aparece como hangupcause 18.

Quando ela aparece

  • Ramal SIP registrado atrás de NAT cujo mapeamento expirou: o INVITE não chega e ninguém responde.
  • Softphone de celular em segundo plano que não acorda a tempo.
  • Telefone IP desligado da tomada antes de o registro expirar.
  • Router com SIP ALG que altera ou descarta o INVITE.
  • Celular sem sinal, em redes que devolvem 18 em vez de 20.
  • PABX do cliente, atrás de um 0800, que recebe o INVITE e não devolve nem 100 Trying.

Como diagnosticar

  1. No sngrep, veja se o destino respondeu algo: sem 100 Trying nem 180 Ringing, o INVITE provavelmente não chegou.
  2. No Asterisk, pjsip show contacts mostra se o contato está disponível no qualify; pjsip show registrations mostra o registro do seu tronco com a operadora.
  3. Ative qualify_frequency no AOR (PJSIP) ou qualify=yes (chan_sip) para detectar contatos mortos antes da chamada.
  4. Desative o SIP ALG no router e ajuste o keepalive de NAT do telefone.
  5. Se o 408 vem da operadora, verifique se o INVITE saiu do seu firewall com tcpdump -i any port 5060.

O que mandar para a operadora

  • Data, hora e fuso de cada tentativa.
  • Números A e B.
  • Call-ID e a resposta final recebida (SIP/2.0 408 Request Timeout ou 480), com o Reason.
  • Se houve 100 Trying ou 180 Ringing antes da falha.
  • O pcap mostrando que o INVITE saiu da sua rede.

Perguntas frequentes

Qual a diferença entre cause 18 e cause 19?

Na cause 18 (No user responding), o destino não confirmou nem o toque dentro do tempo. Na cause 19 (No answer from user, user alerted), o telefone tocou e ninguém atendeu. A primeira aponta para um equipamento inalcançável ou mudo; a segunda, para ninguém disponível. Pela RFC 3398, a 18 vira SIP 408 e a 19 vira SIP 480.

Por que um SIP 480 virou cause 18 no meu PABX?

Porque a RFC 3398 converte o SIP 480 Temporarily Unavailable em Q.850 cause 18 quando a chamada passa de SIP para a rede de telefonia. Se a operadora mandou o cabeçalho Reason, ele traz a causa original e é melhor confiar nele do que na tradução da tabela, que pode esconder uma causa 20 ou 31.

Saiba disso antes dos seus clientes

O Monitor liga para cada circuito de voz o dia todo e entrega cada falha com o código SIP e a causa Q.850 como prova.