Escolar Documentos
Profissional Documentos
Cultura Documentos
18
10 2017 Enviando SMS com C# e VB.NET
ANDREALVESLIMA | .NET, SOFTWARE DEVELOPMENT | 60
Eu não sei exatamente porque o tema “envio de SMS” foi um dos mais votados na
minha última pesquisa de temas para próximos artigos. Não imaginava que essa
fosse uma funcionalidade tão desejada assim nas aplicações de hoje em dia, mas
aparentemente ela é. Atendendo aos seus pedidos, hoje vamos aprender a enviar
SMS com C# e VB.NET utilizando basicamente duas estratégias. A primeira
estratégia será através de um modem 3G conectado ao computador e a segunda
estratégia será a utilização de serviços comerciais que possibilitam o envio de
SMS automatizado.
2010 - 2015
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 1/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Chamei os TextBoxes de “tbTelefone” e “tbMensagem“. O botão recebeu o nome de Receba outras dicas!
“btEnviar” e o ComboBox recebeu o nome de “cbMetodo“. Dentro do ComboBox
Inscreva-se para ficar por
nós teremos os seguintes itens: dentro das novidades do
meu site e receber dicas
extras que eu só compartilho
por e-mail!
Email Address*
Nome
Sobrenome
Observe que o primeiro método corresponderá ao envio pelo modem 3G, já os
outros quatro métodos são serviços comerciais que possibilitam o envio
automatizado de SMS.
É importante salientar que o tipo de projeto escolhido (“Windows Forms“) não * = campo obrigatório
tem nada a ver com questões de limitação das metodologias que serão
apresentadas no artigo. Você pode utilizar exatamente a mesma implementação CADASTRAR
em outros tipos de projeto, como Console Application, WPF e ASP.NET.
O código do clique do botão “Enviar” terá um “switch case” que chamará o método powered by MailChimp!
1 // C# Categorias
2 private void btEnviar_Click(object sender, EventArgs e)
3 {
4 try .NET
5 {
6 switch (cbMetodo.SelectedItem.ToString()) .NET Core
7 {
8 case "Modem": Acesso a dados
9 EnviarModem();
10 break; Alemanha
11 case "Twilio":
12 EnviarTwilio(); And more…
13 break;
14 case "Ipipi":
ASP.NET
15 EnviarIpipi();
16 break;
17 case "ViaNett": Crystal Reports
18 EnviarViaNett();
19 break; Entity Framework
20 case "LocaSMS":
21 EnviarLocaSMS(); MVP
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 2/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
22 break; Relatórios
23 }
24 }
Report Viewer
25 catch (Exception ex)
26 {
27 MessageBox.Show(ex.Message, "Erro", MessageBoxBut Reporting Services
28 }
29 } Software Development
TFS
1 ' VB.NET
2 Private Sub BtEnviar_Click(sender As Object, e As EventAr Viagens
3 Try
4 Select Case CbMetodo.SelectedItem.ToString() Visual Studio
5 Case "Modem"
6 EnviarModem() Windows Forms
7 Exit Select
8 Case "Twilio" WinRT
9 EnviarTwilio()
10 Exit Select WPF
11 Case "Ipipi"
12 EnviarIpipi() Xamarin
13 Exit Select
14 Case "ViaNett"
15 EnviarViaNett()
16 Exit Select
17 Case "LocaSMS"
18 EnviarLocaSMS()
19 Exit Select Arquivos
20 End Select
21 Catch Ex As Exception
22 MessageBox.Show(ex.Message, "Erro", MessageBoxBut [+]
23 End Try
24 End Sub 2018
[−]
dezembro
A primeira opção que iremos implementar é o envio de SMS através de um
modem 3G conectado ao computador. Essa é uma opção bem flexível porque você novembro
pode facilmente trocar o sim card do seu modem 3G para obter tarifas mais
outubro
atrativas dependendo da região onde a aplicação será utilizada. Além disso, você
não fica à mercê de uma empresa específica que fará o envio do SMS. setembro
Depois de pesquisar um bocado, eu encontrei três links relacionados a esse tipo agosto
de implementação: julho
Send and Read SMS through a GSM Modem using AT Commands abril
Os dois primeiros utilizam bibliotecas terceiras que não estão disponíveis no março
NuGet. Elas são bibliotecas gratuitas, mas você tem que adicionar a referência no fevereiro
seu projeto “na mão“. Eu não queria ter que demonstrar isso no artigo, por isso
fiquei feliz quando encontrei o terceiro artigo, que mostra como enviar SMS com janeiro
modem 3G através de comandos diretos utilizando a classe SerialPort, que é
[+]
basicamente o que a biblioteca dos outros dois artigos implementa por trás dos
panos. 2016
Depois de dar uma estudada no projeto apresentado no terceiro artigo, criei uma [+]
versão extremamente simplificada para podermos utilizar no nosso projeto de 2015
exemplo. Se você quiser mais opções de configuração, baixe o projeto do terceiro
link e dê uma estudada na implementação dele. [+]
2014
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 3/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Para enviarmos uma mensagem SMS através de um modem 3G, precisamos [+]
executar 4 comandos. O primeiro comando inicia a comunicação com o modem. 2011
Em seguida, precisamos configurar o modo de envio para “texto“, já que estamos
trabalhando com envio de SMS. Por fim, enviamos o número do destinatário e a [+]
mensagem, seguido de um caractere UTF32 de código 26 (que representa “fim de 2010
arquivo“). Cada um dos comandos (exceto o último) deverá ser seguido por um
caractere de retorno de linha (carrier return – “\r“). [+]
2009
Veja como é que fica o código para enviarmos um SMS com C# e VB.NET
utilizando o modem 3G conectado ao computador: [+]
1 // C# 2008
2 private void EnviarModem()
3 { [+]
4 using (var port = new System.IO.Ports.SerialPort())
5 { 2007
6 port.PortName = "COM5";
7 port.Open(); [+]
8 port.DtrEnable = true;
9 port.RtsEnable = true; 2006
10 port.Write("AT\r"); // iniciando a comunicação
11 port.Write("AT+CMGF=1\r"); // setando a comunicaç
12 port.Write(string.Format("AT+CMGS=\"{0}\"\r", tbT
13 port.Write(tbMensagem.Text + char.ConvertFromUtf3
14 }
15 }
1 ' VB.NET
2 Private Sub EnviarModem()
3 Using Port = New System.IO.Ports.SerialPort()
4 Port.PortName = "COM5"
5 Port.Open()
6 Port.DtrEnable = True
7 Port.RtsEnable = True
8 Port.Write("AT" & vbCr) ' iniciando a comunicação
9 Port.Write("AT+CMGF=1" & vbCr) ' setando a comuni
10 Port.Write(String.Format("AT+CMGS=""{0}""" & vbCr
11 Port.Write(TbMensagem.Text + Char.ConvertFromUtf3
12 End Using
13 End Sub
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 4/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
1 // C#
2 private bool EnviaSms(string numero, string mensagem)
3 {
4 using (SerialPort serialPort = new SerialPort())
5 {
6 bool mensagemEnviada = false;
7
8 try
9 {
10 receiveNow = new AutoResetEvent(false);
11 serialPort.PortName = "COM5";
12 serialPort.Handshake = Handshake.RequestToSe
13 serialPort.DtrEnable = true;
14 serialPort.RtsEnable = true;
15 serialPort.NewLine = Environment.NewLine;
16 serialPort.DataReceived += new SerialDataRec
17 serialPort.Open();
18 string recievedData = ExecCommand(serialPort
19 recievedData = ExecCommand(serialPort, "AT+C
20 String command = "AT+CMGS=\"" + numero + "\"
21 recievedData = ExecCommand(serialPort, comma
22 command = mensagem + char.ConvertFromUtf32(2
23 recievedData = ExecCommand(serialPort, comma
24 serialPort.Close();
25 if (recievedData.EndsWith("\r\nOK\r\n"))
26 {
27 mensagemEnviada = true;
28 }
29 else if (recievedData.Contains("ERROR"))
30 {
31 mensagemEnviada = false;
32 }
33 }
34 catch (Exception ex)
35 {
36 MessageBox.Show("Erro ao enviar SMS: " + ex.
37 }
38 return mensagemEnviada;
39 }
40 }
41
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 5/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
42 private string ExecCommand(SerialPort port, string comma
43 {
44 try
45 {
46
47 port.DiscardOutBuffer();
48 port.DiscardInBuffer();
49 receiveNow.Reset();
50 port.Write(command + "\r");
51
52 string input = ReadResponse(port, responseTimeou
53 if ((input.Length == 0) || ((!input.EndsWith("\r
54 throw new ApplicationException("No success m
55 return input;
56 }
57 catch (Exception ex)
58 {
59 throw ex;
60 }
61 }
62
63 public string ReadResponse(SerialPort port, int timeout)
64 {
65 string buffer = string.Empty;
66 try
67 {
68 do
69 {
70 if (receiveNow.WaitOne(timeout, false))
71 {
72 string t = port.ReadExisting();
73 buffer += t;
74 }
75 else
76 {
77 if (buffer.Length > 0)
78 throw new ApplicationException("Resp
79 else
80 throw new ApplicationException("No d
81 }
82 }
83 while (!buffer.EndsWith("\r\nOK\r\n") && !buffer
84 }
85 catch (Exception ex)
86 {
87 throw ex;
88 }
89 return buffer;
90 }
91
92 public void port_DataReceived(object sender, SerialDataR
93 {
94 try
95 {
96 if (e.EventType == SerialData.Chars)
97 {
98 receiveNow.Set();
99 }
100 }
101 catch (Exception ex)
102 {
103 throw ex;
104 }
105 }
Twilio
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 7/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 8/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Por fim, consegui criar um número americano, que obviamente tem suporte ao
envio de SMS:
Uma vez criado o número de saída, anote essa informação, além do SID e token da
conta que você encontra no dashboard principal do Twilio. Precisaremos desses
três dados para implementarmos o envio de SMS com o Twilio.
Feito isso, em algum lugar no código de inicialização da aplicação, nós temos que
fazer a configuração inicial da biblioteca do Twilio, onde informaremos o SID e
token da nossa conta. Você poderia fazer isso no arquivo “Program.cs“, antes de
chamar o formulário principal. Porém, como essa aplicação de exemplo só tem um
formulário, eu resolvi fazer essa inicialização do Twilio no construtor do
formulário (ou no evento “Load” do formulário no VB.NET):
1 // C#
2 public Form1()
3 {
4 InitializeComponent();
5 Twilio.TwilioClient.Init("SID", "TOKEN");
6 }
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 9/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
1 ' VB.NET
2 Private Sub Form1_Load(sender As Object, e As EventArgs) H
3 Twilio.TwilioClient.Init("SID", "TOKEN")
4 End Sub
1 // C#
2 private void EnviarTwilio()
3 {
4 var resultado = Twilio.Rest.Api.V2010.Account.MessageR
5 to: new Twilio.Types.PhoneNumber(tbTelefone.Text),
6 from: new Twilio.Types.PhoneNumber("SEU_NUMERO_TWI
7 body: tbMensagem.Text);
8 }
1 ' VB.NET
2 Private Sub EnviarTwilio()
3 Dim Resultado = Twilio.Rest.Api.V2010.Account.MessageR
4 [to]:=New Twilio.Types.PhoneNumber(TbTelefone.Text
5 from:=New Twilio.Types.PhoneNumber("SEU_NUMERO_TWI
6 body:=TbMensagem.Text)
7 End Sub
Observe que o número do remetente será o seu número do Twilio (que eu ocultei
o meu por questões de segurança) e, no período trial, a mensagem original será
precedida por uma mensagem indicando o trial. Além disso, você só conseguirá
enviar mensagens no período de trial para números que estiverem confirmados
na sua lista de telefones.
Se dermos uma olhada na seção de gastos da nossa conta, veremos que esse SMS
de teste custou $0.085 dos créditos gratuitos que recebemos ao criar a conta trial.
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 10/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
O valor final das mensagens varia de acordo com o país dos números remetente e
destinatário. Você encontra todos os detalhes de preço por mensagem para cada
país na página de preços do Twilio.
ViaNett
http://smsc.vianett.no/v3/cpa/cpawebservice.asmx
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 11/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
1 // C#
2 private void EnviarViaNett()
3 {
4 using (var vianett = new ViaNett.CPAWebServiceSoapCli
5 {
6 var resultado = vianett.SendSMS_Simple1(
7 "USER", "PWD",
8 Convert.ToInt64(tbTelefone.Text.Replace("+",
9 tbMensagem.Text);
10 }
11 }
1 ' VB.NET
2 Private Sub EnviarViaNett()
3 Using ViaNettClient = New ViaNett.CPAWebServiceSoapCli
4 Dim Resultado = ViaNettClient.SendSMS_Simple1("USE
5 End Using
6 End Sub
Esse erro acontece porque a referência de serviço tem dois bindings no arquivo
“app.config“. Um utiliza a versão 1.1 do protocolo SOAP e o outro utiliza a versão
1.2:
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 12/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
1 // C#
2 using (var vianett = new ViaNett.CPAWebServiceSoapClient("
1 ' VB.NET
2 Using ViaNettClient = New ViaNett.CPAWebServiceSoapClient(
Uma vez realizada essa alteração, teste novamente a aplicação e veja que o SMS
também será enviado corretamente através do serviço da ViaNett:
Ipipi
O Ipipi é outro serviço bem famoso que teoricamente tem a opção de criarmos
uma conta trial (através deste link), mas eu não obtive resposta até o momento
do fechamento da escrita deste artigo. Porém, vamos fazer de conta que nós
temos um usuário e senha em mãos para esse serviço. Como é que nós fazemos
para enviar um SMS com C# e VB.NET através dele? Simples! Da mesma maneira
que fizemos com o ViaNett, nós também temos web services SOAP para envio de
mensagens com o Ipipi.
http://api.upsidewireless.com/soap/Authentication.asmx
O outro serviço é o que faz o envio da mensagem em si. A URL para esse segundo
serviço é a seguinte:
http://api.upsidewireless.com/soap/SMS.asmx
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 13/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Com essas referências adicionadas, o código para enviarmos um SMS com o Ipipi
seria o seguinte:
1 // C#
2 private void EnviarIpipi()
3 {
4 using (var ipipiAuth = new IpipiAuth.AuthenticationSo
5 using (var ipipi = new Ipipi.SMSSoapClient())
6 {
7 var authInfo = ipipiAuth.GetParameters("user", "p
8 var resultado = ipipi.Send_Plain(authInfo.Token,
9 }
10 }
1 ' VB.NET
2 Private Sub EnviarIpipi()
3 Using IpipiAuthClient = New IpipiAuth.AuthenticationSo
4 Using IpipiClient = New Ipipi.SMSSoapClient()
5 Dim AuthInfo = IpipiAuthClient.GetParameters("
6 Dim Resultado = IpipiClient.Send_Plain(AuthInf
7 End Using
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 14/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
8 End Using
9 End Sub
Os serviços do Ipipi também estão disponíveis tanto em SOAP 1.1 quanto em 1.2,
portanto, se executarmos a aplicação sem especificarmos um endpoint,
receberemos um erro:
Tentei utilizar a versão 1.2 (como fizemos com o ViaNett), porém, só recebi erros
estranhos:
1 // C#
2 using (var ipipiAuth = new IpipiAuth.AuthenticationSoapCli
3 using (var ipipi = new Ipipi.SMSSoapClient("SMSSoap"))
1 ' VB.NET
2 Using IpipiAuthClient = New IpipiAuth.AuthenticationSoapCl
3 Using IpipiClient = New Ipipi.SMSSoapClient("SMSSoap")
LocaSMS
Até agora eu só mostrei serviços internacionais para envio de SMS. Será que não
existe nenhum serviço brasileiro que implemente esse tipo de funcionalidade?
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 15/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Eu encontrei alguns, mas o único que fornecia uma conta trial era o LocaSMS.
Entretanto, o site de cadastro só aceita números do Brasil. Tentei entrar em
contato com a empresa para ver se eu não conseguia uma conta trial mesmo sem
um número do Brasil, mas a resposta não foi nada animadora:
De qualquer forma, resolvi mesmo assim implementar o código que serviria para
enviarmos SMS com o LocaSMS. Caso você consiga uma conta trial para testar,
avisa depois nos comentários se o código funcionou ou não.
http://54.173.24.177/painel/ServiceSms.asmx
1 // C#
2 private void EnviarLocaSMS()
3 {
4 using (var locasms = new LocaSMS.ServiceSMSSoapClient
5 {
6 var resultado = locasms.SendSMS("USER", "PWD",
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 16/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
7 new LocaSMS.rSMS()
8 {
9 Destinations = new []
10 {
11 new LocaSMS.Destination()
12 {
13 Number = tbTelefone.Text
14 }
15 },
16 Msg = tbMensagem.Text
17 });
18 }
19 }
1 ' VB.NET
2 Private Sub EnviarLocaSMS()
3 Using locasms = New LocaSMS.ServiceSMSSoapClient()
4 Dim resultado = locasms.SendSMS(
5 "USER", "PWD",
6 New LocaSMS.rSMS() With
7 {
8 .Destinations =
9 {
10 New LocaSMS.Destination() With
11 {
12 .Number = TbTelefone.Text
13 }
14 },
15 .Msg = TbMensagem.Text
16 })
17 End Using
18 End Sub
Concluindo
Como vimos no artigo de hoje, o envio de SMS com C# e VB.NET pode ser
implementado basicamente de duas maneiras: ou utilizamos um modem 3G
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 17/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
E você, já precisou enviar SMS na sua aplicação? Qual foi a estratégia que você
utilizou? Se você contratou algum serviço, qual foi o que te proporcionou o
melhor custo / benefício? Fico aguardando o resultado das suas experiências na
caixa de comentários logo abaixo!
Até a próxima!
André Lima
* indicates required
Email
*
Nome
Sobrenome
Powered by MailChimp
INSCREVA-SE!
Thanks!
The use of the modem is currently my best option,
You did quite a lot of working and researching and applying which is
amazing for a lazy person like me :)
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 18/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
RESPONDER
andrealveslima disse:
18 de outubro de 2017 às 16:38
Hey Ahmed! Thank you very much for your comment and your kind
words.. :)
I also have fun researching and writing these articles, so it’s a win-
win situation.. ;)
Regards,
Andre Lima
RESPONDER
RESPONDER
andrealveslima disse:
18 de outubro de 2017 às 16:45
Fala André! Que é isso.. Fico feliz por conseguir ajudar de alguma
maneira.. ;)
Qualquer coisa estamos aí..
Abraço!
André Lima
RESPONDER
RESPONDER
andrealveslima disse:
19 de outubro de 2017 às 9:29
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 19/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Abraço!
André Lima
RESPONDER
Olá, seus artigos são D+ mas este me deixou com duas duvidas, são elas:
RESPONDER
andrealveslima disse:
19 de outubro de 2017 às 9:35
Abraço!
André Lima
RESPONDER
Parabéns amigo andre, fico feliz em ter conhecido você e com isso coisas
simples que você posta aumenta nossa vontade de programar, obrigado e
continue assim.
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 20/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
RESPONDER
andrealveslima disse:
23 de outubro de 2017 às 8:52
Olá Alexssandro!
RESPONDER
Seus artigos é top, você poderia mostrar algo sobre NFe, consumir o
webservice envio etc.
grato.
Alessandro Ferraz
RESPONDER
andrealveslima disse:
23 de outubro de 2017 às 11:49
Abraço!
André Lima
RESPONDER
Alexandre disse:
21 de outubro de 2017 às 1:17
será que de alguma maneira ela pode bloquear este tipo de mensagem,
pois, no status do ViaNett ele registra minhas requisições porem a msg fica
REJECTED
RESPONDER
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 21/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
andrealveslima disse:
23 de outubro de 2017 às 11:52
Olá Alexandre!
Abraço!
André Lima
RESPONDER
Alexandre disse:
23 de outubro de 2017 às 21:04
RESPONDER
andrealveslima disse:
24 de outubro de 2017 às 9:37
Olá Alexandre!
Abraço!
André Lima
RESPONDER
andrealveslima disse:
25 de outubro de 2017 às 5:57
Olá Alexandre!
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 22/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Abraço!
André Lima
andrealveslima disse:
31 de outubro de 2017 às 12:30
Olá Alexandre!
Abraço!
André Lima
andrealveslima disse:
1 de novembro de 2017 às 12:57
Abraço!
André Lima
Alexandre disse:
1 de novembro de 2017 às 13:28
Obrigado
Altamiro disse:
21 de outubro de 2017 às 3:57
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 23/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
RESPONDER
andrealveslima disse:
23 de outubro de 2017 às 8:57
Olá Altamiro, muito obrigado pelo comentário! Fico feliz que você
tenha gostado.. :)
Abraço!
André Lima
RESPONDER
deuzivaldo disse:
21 de outubro de 2017 às 14:53
RESPONDER
andrealveslima disse:
23 de outubro de 2017 às 13:38
Olá Deuzivaldo!
RESPONDER
Marcos disse:
23 de outubro de 2017 às 15:33
Bom dia, primeiramente parabens pelo artigo, sem duvida vai ajudar e já
esta ajudando muitas pessoas.
Eu tentei fazer no visual basic, mas aparece a mensagem dizendo que não
é possivel acessar a porta solicitada. O que pode ser?
RESPONDER
andrealveslima disse:
23 de outubro de 2017 às 20:16
Abraço!
André Lima
RESPONDER
Marcos disse:
24 de outubro de 2017 às 15:25
RESPONDER
andrealveslima disse:
24 de outubro de 2017 às 16:34
Abraço!
André Lima
RESPONDER
RESPONDER
andrealveslima disse:
27 de outubro de 2017 às 5:26
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 25/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Abraço!
André Lima
RESPONDER
RESPONDER
andrealveslima disse:
31 de outubro de 2017 às 12:45
Abraço!
André Lima
RESPONDER
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 26/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
RESPONDER
andrealveslima disse:
31 de outubro de 2017 às 13:03
Olá Michael!
Abraço!
André Lima
RESPONDER
Julia disse:
4 de novembro de 2017 às 6:25
Saudacoes
Estou muito Grato pelo rico conteudo que tens apresentado.
RESPONDER
andrealveslima disse:
6 de novembro de 2017 às 6:08
Abraço!
André Lima
RESPONDER
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 27/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
blacksilver02 disse:
11 de dezembro de 2017 às 16:09
RESPONDER
Olá André Lima, no meu caso utilizei o locaSMS, e recebi uma mensagem
de NOME DA CAMPANHA INVALIDA, percebi, através dos manuais do
locaSMS que seria o campo Subject(string) do objeto rSMS.
enviei o sms nessa manhã, e já faz quase uma hora!
Até agora não recebi o SMS mas vou aguardar ainda mais. Obrigado
RESPONDER
andrealveslima disse:
13 de dezembro de 2017 às 22:12
Olá André!
Abraço!
André Lima
RESPONDER
RESPONDER
andrealveslima disse:
9 de fevereiro de 2018 às 15:16
Olá Joaquim!
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 28/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Abraço!
André Lima
RESPONDER
Grato.
RESPONDER
andrealveslima disse:
29 de março de 2018 às 5:58
Entendeu a ideia?
Abraço!
André Lima
RESPONDER
Grato.
RESPONDER
andrealveslima disse:
9 de abril de 2018 às 6:28
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 29/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Abraço!
André Lima
RESPONDER
Possas, a muito tempo que procurava por esta solução de envio de sms
pelo modem, eu vivo em Angola o comercio electrónico e pagamentos on-
line aqui ainda esta no começo, acredito que o envio pelo modem é menos
custoso, até porque tirando o envio por terceiros como a twilo, só achei
uma que falava de envio pela placa arduino gms uno, que é programada
em c, contudo vou testar a do modem gsm, e passarei aqui para dar
testemunho, obrigado pelo poste, André, espero que continues a partilhar o
teu conhecimento, partilhar é exercitar e aperfeiçoar o que já se sabe.
valeu
RESPONDER
andrealveslima disse:
30 de março de 2018 às 10:11
Abraço!
André Lima
RESPONDER
Olá André, olha o seu código, funcionou muito bem, tal que estou a
implementa-lo num sistema de gestão de escolar, para envio de sms
colectivo para encarregados e estudantes, como notificações de inicio de
pagamento, reuniões até onde a mente pensar, cruzando a sua
funcionalidade com dados da bd, dá para fazer uma revolução, obrigado,
olha estou a usa-lo com um modem ZTE da rede GSM, usando a operadora
UNITEL, cá de angola, outra coisa, agradecia possível criares uma
implementação no código para não ser necessário indicar a porta COM a
usar, ou seja pelo nome do dispositivo o sistema seria capaz de identificar
a porta a usar, no envio, pensando na possibilidade de alguém remover o
modem e a porta declarada no código passar para outro dispositivo.
contudo meu muito obrigado vc é 10..
RESPONDER
andrealveslima disse:
3 de abril de 2018 às 8:56
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 30/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Que bom que o código funcionou na sua aplicação.. Fico feliz por
ter conseguido ajudar.. :)
Abraço!
André Lima
RESPONDER
Excelente
Estou com uma duvida.
Para o envio de sms com modem
Como posso saber qual é
port.PortName = “COM5”;
RESPONDER
andrealveslima disse:
10 de abril de 2018 às 9:39
Olá Lério!
Abraço!
André Lima
RESPONDER
lerio.reis disse:
11 de abril de 2018 às 16:26
Estimado Andre
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 31/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
RESPONDER
andrealveslima disse:
13 de abril de 2018 às 5:44
Olá Lério!
Mas, enfim, acho que o máximo que você pode fazer de modo
automático é verificar todas as portas seriais para ver se tem algum
dispositivo conectado.. Se só tiver um, aí tem uma grande chance
de ser o modem.. Para listar os dispositivos contectados em cada
uma das portas seriais, você pode tentar utilizar o código
apresentado nesta thread do StackOverflow:
Abraço!
André Lima
RESPONDER
Olá André.
RESPONDER
andrealveslima disse:
16 de abril de 2018 às 5:32
Abraço!
André Lima
RESPONDER
Olá André,
comigo funcionou os dois códigos em C#, com isso obtive sucesso com a
solução de um sistema onde trabalho. Muito bom o conteúdo tem sido
referência em meus estudos,
sempre respondendo e ajudando agradeço desde já a atenção.
Abraço.
RESPONDER
andrealveslima disse:
13 de junho de 2018 às 16:49
Olá Denny! Muito obrigado pelo feedback! Fico feliz que o artigo
tenha te ajudado.. :)
Abraço!
André Lima
RESPONDER
Fernando disse:
10 de setembro de 2018 às 20:01
Tens alguma dica sobre envio de sms automatico pelo Xamarin Forms
Android?
É possível sem abrir uma tela intermediária,…
Obrigado…
RESPONDER
andrealveslima disse:
27 de setembro de 2018 às 15:29
Olá Fernando!
SmsManager
Abraço!
André Lima
RESPONDER
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 33/34
18/01/23, 15:34 Enviando SMS com C# e VB.NET - André Alves de Lima
Nome *
E-mail *
Site
PUBLICAR COMENTÁRIO
Notifique-me sobre
novos comentários
por e-mail.
Notifique-me sobre
novas publicações
por e-mail.
www.andrealveslima.com.br/blog/index.php/2017/10/18/enviando-sms-com-c-e-vb-net/ 34/34