Posso enviar mensagens SMS de uma aplicação C#?
estou a tentar construir um programa que me permita enviar mensagens SMS directamente da aplicação C#. Tenciono construir um sistema de chamada de atenção automática que enviaria automaticamente mensagens SMS para os telemóveis dos destinatários, notificando-os do seu próximo compromisso.
Qualquer pessoa poderia aconselhar sobre como eu iria implementar este tipo de recurso, uma vez que eu não tenho experiência em 'comunicações móveis' e conectividade móvel com aplicações de desktop.
Minha transportador é EE (se isso ajuda?)
Qualquer ajuda seria muito apreciada.3 answers
A maioria das grandes transportadoras oferece um e-mail para o serviço de texto. O programa pode usar e-mail para enviar uma mensagem SMS. Por exemplo:
Enviar um e-mail
var message = new MailMessage();
message.From = new MailAddress("[email protected]");
message.To.Add(new MailAddress("[email protected]"));//See carrier destinations below
//message.To.Add(new MailAddress("[email protected]"));
//message.CC.Add(new MailAddress("[email protected]"));
message.Subject = "This is my subject";
message.Body = "This is the content";
var client = new SmtpClient();
client.Send(message);
Destinos dos transportadores
- ATT: compõe um novo e-mail e usa o número de telefone sem fios do destinatário de 10 dígitos, seguido por @txt.att.net. por exemplo, [email protected].
- Verizon: similarmente, # # @vtext.com Sprint: # # @messaging.sprintpcs.com
- Tmóbil: ## @tmomail.net Virgin Mobile: # # @vmobl.com
- Nextel: # # @messaging.nextel.com
- impulso: # # @myboostmobile.com
- Alltel: # # @message.alltel.com
- EE: # # @mms.ee.co.uk (poderá suportar enviar sem resposta)
Alternativas
- existem vendedores que fornecem serviços de mensagens SMS através de uma API
Você pode enviar sms através de várias maneiras
- usando um modem GSM
- utilizando o serviço web
- Usando os parâmetros dados pelo serviço do prestador
Você pode entender a lógica básica para cada um dos pontos acima através do link fornecido abaixo e tentar alcançar isso em seu código.
Http://www.codeproject.com/Articles/19023/Sending-SMS-using-NET
Você precisa criar uma instância do motor de sms no seu construtor de formulários comer.
public partial class Form1 : Form
{
SMSCOMMS SMSEngine;
public Form1()
{
SMSEngine = new SMSCOMMS("COM1");
InitializeComponent();
SMSEngine.Open();
}
private void button1_Click(object sender, EventArgs e)
{
SMSEngine.SendSMS("919888888888","THIS IS YOUR MESSAGE");
SMSEngine.Close();
}
}
}
Twilio tem uma C# biblioteca auxiliar {[4] } que te vai deixar fazer isto.
Aqui está o código que você precisa para enviar uma mensagem de texto com a Biblioteca:using System;
using Twilio;
class Example
{
static void Main(string[] args)
{
// Find your Account Sid and Auth Token at twilio.com/user/account
string AccountSid = "{{ account_sid }}";
string AuthToken = "{{ auth_token }}";
var twilio = new TwilioRestClient(AccountSid, AuthToken);
var message = twilio.SendMessage("+14158141829", "+14159352345", "This text message was sent with code!");
Console.WriteLine(message.Sid);
}
}
Aviso: eu trabalho para o Twilio.