logomarca lojamundi
icone vendedor fabricio icone vendedor davi icone vendedor jakeline icone vendedor moises icone vendedor arthur icone fale ao vivo
Contatos
61 99137 5620

11 2666 4242
21 2169 8855
31 4042 1799
Outros Telefones
logomarca lojamundi
botão minha contabotão entrarbotão cadastro
botão servicosbotão blogbotão contato
Manuais

Funções do Dialplan do Asterisk 20
Comando:

PJSIP_HEADER()


Descrição:
PJSIP_HEADER permite que você leia cabeçalhos SIP específicos do canal PJSIP de entrada, bem como escreva (adicionar, atualizar, remover) cabeçalhos no canal de saída. Uma exceção é que você pode ler cabeçalhos que já adicionou no canal de saída. Exemplos: Exemplo: Define somevar com o valor do cabeçalho From exten => 1,1,Set(somevar=${PJSIP_HEADER(read,From)}) Exemplo: Define via2 com o valor do 2º cabeçalho Via exten => 1,1,Set(via2=${PJSIP_HEADER(read,Via,2)}) Exemplo: Define xhdr com o valor do 1º cabeçalho X-header exten => 1,1,Set(xhdr=${PJSIP_HEADER(read,X-*,1)}) Exemplo: Adiciona um cabeçalho X-Myheader com o valor myvalue exten => 1,1,Set(PJSIP_HEADER(add,X-MyHeader)=myvalue) Exemplo: Adiciona um cabeçalho X-Myheader com valor vazio exten => 1,1,Set(PJSIP_HEADER(add,X-MyHeader)=) Exemplo: Atualiza o valor do cabeçalho chamado X-Myheader para newvalue; 'X-Myheader' deve já existir ou a chamada falhará. exten => 1,1,Set(PJSIP_HEADER(update,X-MyHeader)=newvalue) Exemplo: Remove todos os cabeçalhos cujos nomes correspondem exatamente a X-MyHeader exten => 1,1,Set(PJSIP_HEADER(remove,X-MyHeader)=) Exemplo: Remove todos os cabeçalhos que começam com X-My exten => 1,1,Set(PJSIP_HEADER(remove,X-My*)=) Exemplo: Remove todos os cabeçalhos previamente adicionados exten => 1,1,Set(PJSIP_HEADER(remove,*)=) Nota: A ação 'remove' pode ser chamada lendo ou escrevendo PJSIP_HEADER. Exemplo: Exibe o número de cabeçalhos removidos exten => 1,1,Verbose( Removed ${PJSIP_HEADER(remove,X-MyHeader)} headers) Exemplo: Define uma variável com o número de cabeçalhos removidos exten => 1,1,Set(count=${PJSIP_HEADER(remove,X-MyHeader)}) Exemplo: Apenas remove-os ignorando qualquer contagem exten => 1,1,Set(=${PJSIP_HEADER(remove,X-MyHeader)}) exten => 1,1,Set(PJSIP_HEADER(remove,X-MyHeader)=) Nota: Se você chamar PJSIP_HEADER em um contexto normal de dialplan, estará operando no canal do originador (entrada), o que pode não ser o desejado. Para operar no canal do destinatário (saída), chame PJSIP_HEADER em um pre-dial handler. Exemplo: Define cabeçalhos no canal do destinatário [handler] exten => addheader,1,Set(PJSIP_HEADER(add,X-MyHeader)=myvalue) exten => addheader,2,Set(PJSIP_HEADER(add,X-MyHeader2)=myvalue2) [somecontext] exten => 1,1,Dial(PJSIP/${EXTEN},,b(handler^addheader^1)) PJSIP_HEADER(action,name[,number]) action read - Retorna o número da instância do cabeçalho name. Um '*' pode ser adicionado ao name para iterar sobre todos os cabeçalhos que começam com name. add - Adiciona um novo cabeçalho name a esta sessão. update - Atualiza o número da instância do cabeçalho name com um novo valor. O cabeçalho deve já existir. remove - Remove todas as instâncias de cabeçalhos previamente adicionados cujos nomes correspondem a name. Um '*' pode ser adicionado ao name para remover todos os cabeçalhos que começam com name. name pode ser definido como um único '*' para limpar todos os cabeçalhos previamente adicionados. Em todos os casos, o número de cabeçalhos realmente removidos é retornado. name - O nome do cabeçalho. number - Se houver mais de 1 cabeçalho com o mesmo nome, isso especifica qual cabeçalho ler ou atualizar. Se não for especificado, o padrão é '1', significando o primeiro cabeçalho correspondente. Não é válido para 'add' ou 'remove'.
Sintaxe:
exten => 1,1,Set(somevar=${PJSIP_HEADER(read,From)})
exten => 1,1,Set(via2=${PJSIP_HEADER(read,Via,2)})
exten => 1,1,Set(xhdr=${PJSIP_HEADER(read,X-*,1)})
exten => 1,1,Set(PJSIP_HEADER(add,X-MyHeader)=myvalue)
exten => 1,1,Set(PJSIP_HEADER(add,X-MyHeader)=)
; 'X-Myheader' must already exist or the call will fail.
exten => 1,1,Set(PJSIP_HEADER(update,X-MyHeader)=newvalue)
exten => 1,1,Set(PJSIP_HEADER(remove,X-MyHeader)=)
exten => 1,1,Set(PJSIP_HEADER(remove,X-My*)=)
exten => 1,1,Set(PJSIP_HEADER(remove,*)=)
exten => 1,1,Verbose( Removed ${PJSIP_HEADER(remove,X-MyHeader)} headers)
exten => 1,1,Set(count=${PJSIP_HEADER(remove,X-MyHeader)})
exten => 1,1,Set(=${PJSIP_HEADER(remove,X-MyHeader)})
exten => 1,1,Set(PJSIP_HEADER(remove,X-MyHeader)=)
[handler]
exten => addheader,1,Set(PJSIP_HEADER(add,X-MyHeader)=myvalue)
exten => addheader,2,Set(PJSIP_HEADER(add,X-MyHeader2)=myvalue2)
[somecontext]
exten => 1,1,Dial(PJSIP/${EXTEN},,b(handler^addheader^1))
PJSIP_HEADER(action,name[,number])
Fonte: Asterisk Wiki
Divisor Triangular
POR QUE A LOJAMUNDI É CONFIÁVEL?
selo de verificação reclame aqui da lojamundiselo google site seguroselo reclame aqui com link de acessoselo https seguroselo let's encrypt

ENTRE EM CONTATO COM A LOJAMUNDI.

Assine nossa Newsletter! É gratuito!

Cadastre seu nome e email para receber novidades e materiais gratuitos da Lojamundi.