domingo, 23 de junho de 2013

Asterisk – SMS com placas DigiVoice

Fonte: http://barth.com.br/blog/?cat=3

É possivel encaminhar e receber SMS utilizando placas GSM da DigiVoice, modelo VB0404-GSM.
Vou dar um exemplo de envio de SMS utilizando o Asterisk, iremos criar um arquivo de texto contendo a mensagem que será enviada por SMS, este arquivo será utilizado pelo dialplan do Asterisk, assim que um peer (ramal) digitar o código de envio de sms.
A partir de um ramal, o usuário irá digitar o código para envio de SMS seguido do telefone de destino, no nosso exemplo um número de telefone celular local.
Exemplo:
123488888888 discado a partir de um ramal do PBX-IP Asterisk.
Onde:
1234 é o código e 88888888 o número do telefone celular de destino.
[from-internal-custom]
;envio de sms
exten => _1234.,1,System(find /tmp/sms.cfg)
exten => _1234.,n,NoOP(${SYSTEMSTATUS})
exten => _1234.,n,GotoIf($["${SYSTEMSTATUS}" == "SUCCESS"]?sim:nao)
exten => _1234.,n(sim),ReadFile(SMS=/tmp/sms.cfg)
exten => _1234.,n,DgSendSMS(g1,${EXTEN:4:8},${SMS})
exten => _1234.,n,PlayBack(beep)
exten => _1234.,n,Hangup()
exten => _1234.,n(nao),PlayBack(vm-sorry)
exten => _1234.,n,Hangup()
Para receber um SMS pelo PBX-IP Asterisk podemos utilizar o exemplo abaixo, onde ao ser recebido um SMS o mesmo será salvo no diretório /tmp.
As regras devem pertencer ao contexto de entrada da placa de GSM.
[from-pstn-custom]
;receber sms
exten => dgv_sms,1,NoOP(SMS RECIVED FROM: ${DGV_SMS_FROM} at ${DGV_SMS_DATE}
(${DGV_SMS_TIME}): ${DGV_SMS_TEXT})
exten => dgv_sms,n,System(echo "--- New message ---" >> /tmp/"${DGV_SMS_FROM:3}")
exten => dgv_sms,n,System(echo "From: ${DGV_SMS_FROM}" >> /tmp/"${DGV_SMS_FROM:3}")
exten => dgv_sms,n,System(echo "Received: ${DGV_SMS_DATE}(${DGV_SMS_TIME})" >> 
/tmp/"${DGV_SMS_FROM:3}")
exten => dgv_sms,n,System(echo "Message: ${DGV_SMS_TEXT}" >> /tmp/"${DGV_SMS_FROM:3}")
exten => dgv_sms,n,System(echo " " >> /tmp/"${DGV_SMS_FROM:3}")
exten => dgv_sms,n,Hangup()

O recebimento do SMS ficará conforme o exemplo abaixo:
--- New message ---
From: 01188888888
Received: 12/01/11(10:46:53)
Message: Mensagem enviada pela placa GSM DigiVoice
 
Abraços.

Nenhum comentário:

Postar um comentário