ENVIO SMS

HUBER 14/01/2015 14:21:08
#443792
Olá amigos !

Alguém pode me dizer mais sobre o assunto de envio de SMS pelo sistema, vi que tem alguns exemplos aqui mais com alguns comentários não muito bons, então resolvi colocar esse post aqui no fórum para mais esclarecimentos.
MOUSER 14/01/2015 15:22:39
#443794
Estou desenvolvendo um sistema em VB.NET para fazer esta função, ainda não deu muito certo, estou primeiramente fazer ele enviar, depois receber sms de um determinado numero, Como se fosse um sistema de email integrado ao numero de celular para receber sms. Se conseguir tanto em VB como VB.NET vai nos ajudar bastante.
ANDPAG 16/01/2015 00:55:33
#443833
Este esquema de SMS é simples, tenho vários sistemas de envio. Você só vai precisar controlar o fluxo de mensagens para não cair na BlackList das operadoras. Se você por exemplo for querer enviar 1000 SMS vai ser bloqueado por 24 horas ou mais pela operadora porque vai ser detectado como Spam. Então se for enviar mensagens para uma lista grande de clientes você terá que controlar o fluxo por exemplo: Enviar 3 SMS a cada 2 minutos,,,, e entre cada SMS dar um intervalo de 5 segundos. Se for o caso terá que utilizar mais de um Modem, um com 1 chip da TIM e outro da Oi por exemplo. Quando você enviar 5 Sms pelo TIM alterna para o da Oi e envia mais 5 e por ai vai. Isso tem que ser feito para um fluxo grande de mensagens. Se for enviar poucas mensagens em intervalos grandes da para trabalhar com apenas 1 chip (modem) mesmo.
Outro detalhe o Modem precisa ser HuaWei e tem que ser comprado em lojas TIm, Claro, Oi. Modens comprados de camelos que vem do Paraguai não da certo. Pelo menos nunca consegui trabalhar com um destes.
Em relação ao codigo segue um exemplo de um sistema meu. Esta parte é a que envia as mensagens. Esta é a função mais simples que tenho.
Você tem que conectar o modem e deixar ele instalar o aplicativo. Depois que o aplicativo do modem estiver instalado é só fecha-lo e iniciar os testes. Se estiver utilizando windows 7 baixa o HyperTerminal para windows 7. Faça os testes dos comandos no Hyperterminal para entender certinho cada um deles. Outro detalhe é que precisa abrir a COM em que o modem for instalado. Isso você vê la no gerenciador de Dispositivos do windows.

Public Function EnviarSmsDireto(ByRef oMsCom As MSComm, ByVal sFone As String, _
ByVal sMensagem As String, ByRef oLBL As Label) As Boolean

Dim viA As Integer
Dim vsRetorno As String
Dim vsRet() As String
Dim vsOk As String

On Error GoTo Conserta

With oMsCom
.CommPort = gsCom [ô]nro da porta
.Settings = gsString
.InputLen = 0
.Handshaking = comNone
.InputMode = comInputModeText

.PortOpen = True

DoEvents

.Output = [Ô]AT+CMGS = [Ô] & Chr(34) & [Ô]1799[Ô] & Mid(sFone, 3, Len(sFone) - 2) & Chr(34) & Chr(13) & Chr(10) [ô]aqui entra o telefone
.Output = sMensagem & Chr(26) [ô]aqui é a mensagem

Sleep 5000

vsRetorno = .Input [ô]Aqui retorna mensagem de status do modem
vsRet = Split(vsRetorno, vbCrLf)

For viA = LBound(vsRet) To UBound(vsRet)
If Trim(vsRet(viA)) = [Ô]OK[Ô] Then
psModemRetorno = [Ô]OK[Ô]
Exit For
Else
psModemRetorno = [Ô]N[Ô]
End If
Next viA

.PortOpen = False
End With

EnviarSmsDireto = True

Exit Function

Conserta:
MsgBox Err.Number & [Ô] - [Ô] & Err.Description, [Ô]Erro...SMS...(Func.EnviarSmsDireto)[Ô] & [Ô] [Ô] & sFone
End Function
Faça seu login para responder