ENVIAR SMS USANDO MODEM 3G

MARCIOPISKE 18/08/2012 23:58:09
#408143
tenho um modem 3g [Ô]ZTE MF110[Ô] da vivo DESBLOQUEADO. Uso um chip da TIM para aproveitar a promoção de SMS ilimitado por R$0,50 por dia.
uso ele para enviar mensagens de cobrança, etc.
gostaria de saber se tem como eu manipular esse modem para mandar mensagens diretamente do meu sistema, aproveitando essa promoção da TIM de SMS ilimitado por 0,50 por dia.

segue tela do programa q vem no modem.
o programa é muito bom, consigo mandar até 200 mensagens por vez, mas tenho q ficar copiando e colando os dados...

desde já, sou grato por qualquer ajuda q vier a receber
KURTGU 19/08/2012 00:43:11
#408146
Resposta escolhida
Alguns artigos que achei...
http://www.codeproject.com/Articles/20420/How-To-Send-and-Receive-SMS-using-GSM-Modem

Esse eu achei legal tem um projeto em vb.net ve se funciona nao tenho modem 3g para testar
http://www.luizantoniopereira.com.br/projetosdescricaosms.htm
KURTGU 20/08/2012 06:49:20
#408173
esse segundo exemplo ai que eu mandei funciounou testei com um modem 3g tim desbloqueado..
MARCIOPISKE 20/08/2012 18:13:52
#408236
ola KURTGU, eu ja tinha visto esses exemplos na net, mas não tinha funcionado
mas fiz mais alguns testes
consegui enviar um sms por vez, mas quando tentei mandar uma série de 5 sms seguidos só 2 ou 3 chegavam ao destino
aí aumentei o tempo de espera entre os comandos e consegui q todos os sms chegassem ao destino.
acredito q esse tempo de espera possa ser diminuído conforme modelo do modem

o Código de teste ficou assim e funcionou:
----------------------------------------------------------------------------------------
Dim PortaSerial As New System.IO.Ports.SerialPort(txtPortName.Text)
Try
lblStatus.Text = [Ô]...[Ô]
Me.Refresh()

PortaSerial.PortName = txtPortName.Text
For i = 1 To 5
PortaSerial.Open()
System.Threading.Thread.Sleep(2000)
PortaSerial.Write([Ô]AT+CMGF=1[Ô] & vbCr)
System.Threading.Thread.Sleep(2000)
PortaSerial.Write([Ô]AT+CMGS=[Ô] & Chr(34) & txtFone.Text & Chr(34) & vbCr)
System.Threading.Thread.Sleep(2000)
PortaSerial.Write(txtMensagem.Text & [Ô] - [Ô] & i & [Ô] - [Ô] & Now & Chr(26))
System.Threading.Thread.Sleep(2000)
PortaSerial.Close()
System.Threading.Thread.Sleep(2000)
Next
lblStatus.Text = [Ô]OK![Ô]
Catch ex As Exception
MsgBox(ex.Message)
End Try
-----------------------------------------------------------------------------------------------------------------------------------------------

obs: só funciona com o software do modem aberto...

não sei por que... mas isso não chega a ser um problema.

obrigado pela força
Tópico encerrado , respostas não são mais permitidas