Pesquisar neste blog

segunda-feira, 22 de julho de 2013

DICAS DO COMANDO TEST - Shell Script

O comando test serve para testar condições em shell script e neste "post" irei mostrar algumas opções desse poderoso comando.
Opções do comando test para testar arquivos.
  •  OPÇÃO          :          verdadeiros se
  1. -e                               Arquivo existe.
  2. -s                               Arquivo existe e é maior que zero.
  3. -f                               Arquivo existe e é um arquivo regular.
  4. -d                              Arquivo existe e é um diretório
  5. -nt                             O arquivo é mais recente (newer than)
  6. -ot                             O arquivo é mais antigo (older than)
  7. -ef                             O arquivo é o mesmo  (equal file)
  8. -a                              e lógico (and)
  9. -o                             ou lógico (or)
  10. -r                              Arquivo existe e tem permissão de leitura
  11. -w                            Arquivo existe e tem permissão de escrita
  12. -x                             Arquivo existe e tem permissão  de execução
Opções do comando test para testar variáveis
  • OPÇÃO          :          verdadeiros se
  1. -z                               String é nula         
  2. -n                               String não nula
  3.                                String igual
  4. !=                               String diferente
  5. -lt                               Número é menor que (less than)
  6. -gl                              Número é maior que (greater than)
  7. -le                              Número é menor igual (less equal)
  8. -ge                             Número é maior igual  (greater equal)
  9. -eq                             Número é igual (equal)
  10. -ne                             Número é diferente  (not equal)

Fonte: Technolivre

sábado, 20 de julho de 2013

Configuração correta do DTMF


DTMF é a sigla em inglês de "Dual-Tone Multi-Frequency", ou seja, os dígitos na telefonia são transmitidos através da combinação de 2 frequências.

Quando você está somente conversando com alguém no telefone, o DTMF não tem importância, mas quando você liga para uma empresa e cai numa URA (Unidade de Resposta Audível), onde você precisa selecionar uma das opções, daí a configuração correta do DTMF no Asterisk/Elastix é fundamental.

O padrão mais utilizado é o RFC2833, ou seja, se na configuração do ramal está configurado o RFC2833 então na configuração do softfone/hardfone tem que estar configurado o mesmo padrão, senão o sistema não vai interpretar os dígitos que você está pressionando. O mesmo vale na configuração do tronco, o  Asterisk/Elastix tem que estar configurado no mesmo padrão da operadora VoIP. Já vi muita gente quebrando a cabeça por causa disso.

A figura mostra a combinação das 2 frequências, gerando uma matriz onde são representados todos os dígitos necessários ao telefone.

Recentemente quando liguei pra a Decolar por VoIP, para cancelar uma passagem aérea, eu tive que habilitar o in-audio e o RFC2833 no meu equipamento VoIP para funcionar na URA deles, pois somente o RFC2833 não interpretava os dígitos que estava enviando.

Fonte: ElastixBrasil

sexta-feira, 19 de julho de 2013

Asterisk – How to detect a busy tone

Asterisk without “Disconnect Supervision”

It is very hard to configure an asterisk system if your telco is not providing  Disconnect supervision on your PSTN/Analog line. Even the developers of digium “Switchvox” could not solve the “great call hangup issue” on their great PBX  till now (12th Sep. 2011), because many telecom providers all over the world do not support  this method of call disconnection.
So what happens if you are using asterisk and do not have disconnect supervision on your analog line. If you have not properly configured asterisk with busydetect=yes/callprogress=yes in dahdi/zapata configuration you  will end up  ”always busy analog lines”  and you may have to restart the PBX  to receive a call/make call. As an example , I’m using asterisk and if somebody calling me,the call rings my phone via asterisk and  I’m not at my desk to attend the call, so the callee hangs up his phone. But the asterisk will keep ringing my phone because it will not detect the “call disconnect tone”  which is send by the telco when the callee hangup the call. So that PSTN/Analog line remains busy until you manually pick up  phone and disconnect or restart asterisk. This may happen always when caller/callee fails to hangup the call., ie call hang up from one end will not release the line for another call.
Try the below settings before you start.  Try increasing rxgain if pbx could not detect the busytone successfully.
Add busypattern if required. If your TSP supports polarity reversal(disconnect supervision) hanguponpolarityswitch is the best option.
Edit the file /etc/asterisk/chan_dahdi.conf
rxgain=5.0
busydetect=yes
busycount=3
;busypattern=500,500

;hanguponpolarityswitch=yes

sexta-feira, 5 de julho de 2013

É possível fazer backup de uma mailbox do Exchange Online?

Olá pessoal,
O nosso amigo Fernando Andreazi postou uma dica em seu blob muito interessante, cuja finalidade é ajudar os amigos a fazer um backup das mailboxes do Exchange Online, veremos abaixo que é possível porem de uma forma um pouco limitada.
Para fazer o backup de uma mailbox devemos exportar a mailbox do Exchange Online para um arquivo local. Por exemplo no script demonstrado estou exportando a mailboxfandreazi@andreazi.com.br para um arquivo local *.tbin, os comandos são:
Get-XsHostedExchangeMailboxdata -sourceserver "red001.mail.microsoftonline.com" -sourcelocation "https://red001.mail.microsoftonline.com/exchange" –sourceidentityfandreazi@andreazi.com.br | export-transporterbinary
-targetfilepath c:\export -targetfileprefix "exonlinebackupmailbox"
Após executar o comando será solicitado o usuario admin do BPOS, insira as credencias para iniciar o export da mailbox no formato *.tbin. Terminado o processo você tem agora uma mailbox “backupeada” no formato *.tbin, o que fazer com esse arquivo? Aqui está a limitação que citei no inicio, você só poderá utilizar esse arquivo para reimportar a mailbox para o Exchange Online.
Vamos supor que um usuário quer uma determinada mensagem de um mês atrás como você ira recuperar está mensagem? O mais conveniente neste caso seria criar uma mailboxrestore@andreazi.com.br e restaurar o arquivo, em seguida localizar a mensagem perdida e encaminhar para o usuário, é uma opção, o comando para fazer o restore é:
Import-TransporterBinary -Sourcefilename "C:\export\exonlinebackupmailbox file_xyz.tbin" | Add-XsExchangeOnlineItem -identity restore@andreazi.com.br
Após executar o comando será solicitado o usuário admin do BPOS, insira as credencias para iniciar o import do arquivo *.tbin.
OBS: Estes procedimentos devem ser executados no servidor de MigrationTools.
Espero ter ajudado!  : )

quinta-feira, 4 de julho de 2013

Usando SIP sobre TCP com Asterisk

SIP commonly runs over UDP but there are times when you may need to run it over TCP.
To allow SIP TCP clients to connect with asterisk update sip.conf with the following
[general]
tcpenable=yes
tcpbindaddr=0.0.0.0
Within your SIP clients definition you have to add transport=tcp for each individual connection.
[client001]
callerid="Client 001" <001>
username=client001
secret=password
type=friend
host=dynamic
context=internal
canreinvite=yes
mailbox=001@default
transport=tcp
disallow=all
allow=alaw
nat=route
dtmfmode=inband
Reload sip within the asterisk console and confirm that asterisk is now listening on 5060/tcp with netstat.
server*CLI> sip reload
server*CLI> quit
Executing last minute cleanups
$ sudo netstat  -tlpn | grep 5060
tcp        0      0 0.0.0.0:5060            0.0.0.0:*               LISTEN      17414/asteri