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 22
Comando:

FILE()


Descrição:

Esta função permite ler e escrever arquivos de texto no modo caractere e modo linha.

Modo de Leitura (byte):

  • Exemplo: Lê todo o conteúdo do arquivo
    same => n,Set(foo=${FILE(/tmp/test.txt)})
  • Exemplo: Lê a partir do 11º byte até o final do arquivo (ou seja, pula os primeiros 10)
    same => n,Set(foo=${FILE(/tmp/test.txt,10)})
  • Exemplo: Lê do 11º ao 20º byte do arquivo (ou seja, pula os primeiros 10 e lê 10 bytes)
    same => n,Set(foo=${FILE(/tmp/test.txt,10,10)})

Modo de Leitura (linha):

  • Exemplo: Lê a 3ª linha do arquivo
    same => n,Set(foo=${FILE(/tmp/test.txt,3,1,l)})
  • Exemplo: Lê a 3ª e 4ª linhas do arquivo
    same => n,Set(foo=${FILE(/tmp/test.txt,3,2,l)})
  • Exemplo: Lê da terceira linha até o final do arquivo
    same => n,Set(foo=${FILE(/tmp/test.txt,3,,l)})
  • Exemplo: Lê as últimas três linhas do arquivo
    same => n,Set(foo=${FILE(/tmp/test.txt,-3,,l)})
  • Exemplo: Lê a 3ª linha de um arquivo no formato DOS
    same => n,Set(foo=${FILE(/tmp/test.txt,3,1,l,d)})

Modo de Escrita:

  • Exemplo: Trunca o arquivo e escreve 'bar'
    same => n,Set(FILE(/tmp/test.txt)=bar)
  • Exemplo: Acrescenta 'bar'
    same => n,Set(FILE(/tmp/test.txt,,,a)=bar)
  • Exemplo: Substitui o primeiro byte com 'bar' (substitui 1 caractere com 3)
    same => n,Set(FILE(/tmp/test.txt,0,1)=bar)
  • Exemplo: Substitui 10 bytes começando no 21º byte do arquivo com 'bar'
    same => n,Set(FILE(/tmp/test.txt,20,10)=bar)
  • Exemplo: Substitui todos os bytes a partir do 21º com 'bar'
    same => n,Set(FILE(/tmp/test.txt,20)=bar)
  • Exemplo: Insere 'bar' após o 4º caractere
    same => n,Set(FILE(/tmp/test.txt,4,0)=bar)

Escrita em modo linha:

  • Exemplo: Substitui a primeira linha do arquivo com 'bar'
    same => n,Set(FILE(/tmp/foo.txt,0,1,l)=bar)
  • Exemplo: Substitui a última linha do arquivo com 'bar'
    same => n,Set(FILE(/tmp/foo.txt,-1,,l)=bar)
  • Exemplo: Acrescenta 'bar' ao arquivo com uma nova linha
    same => n,Set(FILE(/tmp/foo.txt,,,al)=bar)

Observação: Se 'live_dangerously' no 'asterisk.conf' estiver definido como 'no', esta função só pode ser executada a partir do dialplan e não diretamente de protocolos externos.

Sintaxe: FILE(filename,offset,length,options,format)

Parâmetros:

  • filename
  • offset - Pode ser especificado como qualquer número. Se negativo, offset indica o número de bytes a partir do final do arquivo.
  • length - Se especificado, limita o tamanho dos dados lidos a esse tamanho. Se negativo, remove bytes do final do arquivo.
  • options
    • l - Modo linha: offset e length são considerados em linhas, em vez de deslocamentos de bytes.
    • a - Apenas no modo de escrita, a opção append é usada para adicionar ao final do arquivo, em vez de sobrescrever o arquivo existente.
    • d - Apenas no modo de escrita e modo linha, esta opção não adiciona automaticamente uma nova linha no final de um valor. Isso é útil para excluir linhas, em vez de defini-las como em branco.
  • format - O parâmetro format pode ser usado para delimitar o tipo de terminadores de linha no modo linha:
    • u - Formato de nova linha Unix.
    • d - Formato de nova linha DOS.
    • m - Formato de nova linha Macintosh.

Funções relacionadas: FILE_COUNT_LINE, FILE_FORMAT

Sintaxe:
same => n,Set(foo=${FILE(/tmp/test.txt)})
same => n,Set(foo=${FILE(/tmp/test.txt,10)})
same => n,Set(foo=${FILE(/tmp/test.txt,10,10)})
same => n,Set(foo=${FILE(/tmp/test.txt,3,1,l)})
same => n,Set(foo=${FILE(/tmp/test.txt,3,2,l)})
same => n,Set(foo=${FILE(/tmp/test.txt,3,,l)})
same => n,Set(foo=${FILE(/tmp/test.txt,-3,,l)})
same => n,Set(foo=${FILE(/tmp/test.txt,3,1,l,d)})
same => n,Set(FILE(/tmp/test.txt)=bar)
same => n,Set(FILE(/tmp/test.txt,,,a)=bar)
same => n,Set(FILE(/tmp/test.txt,0,1)=bar)
same => n,Set(FILE(/tmp/test.txt,20,10)=bar)
same => n,Set(FILE(/tmp/test.txt,20)=bar)
same => n,Set(FILE(/tmp/test.txt,4,0)=bar)
same => n,Set(FILE(/tmp/foo.txt,0,1,l)=bar)
same => n,Set(FILE(/tmp/foo.txt,-1,,l)=bar)
same => n,Set(FILE(/tmp/foo.txt,,,al)=bar)
FILE(filename,offset,length,options,format)
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.