2009-06-10 27 views
5

En primer lugar, utilizamos .net & sql server.Enviando mensajes automáticos SMS

Tengo un cliente que está interesado en un sistema que envíe mensajes SMS a horas programadas.

Nunca he hecho algo como esto excepto para enviar un sms a través de una puerta de enlace de correo electrónico, como [email protected] Pero, no creo que sea una opción para esto, nuestra base de datos almacenará el número de teléfono e ignorará al proveedor.

Gracias por cualquier aportación sobre la solución de este problema.

+0

he utilizado twitter como mi puerta de entrada antes, no era confiable antes, pero es bastante sólido ahora. – DevelopingChris

+0

@DevelopingChris - ¿Puedes dar un ejemplo de cómo hacer esto? –

Respuesta

3

La manera más fácil es usar una puerta de enlace SMS que proporcione una API. Check out txtlocal

Si utiliza un proveedor como txtlocal, tiene 2 opciones: puede crear la programación en su sistema, o puede tener un proceso por lotes que envíe la información de sms y la hora que desee. ser enviado usando su API.

1

Bueno, o bien tiene que usar una puerta de enlace SMS como usted menciona, u obtener un módem PCI/USB GSM como this one que le permite enviar mensajes de texto directamente desde el servidor.

+0

¿El módem es una solución gratuita una vez instalado? ¿Es fácil de configurar y usar? ¿Podría dar un ejemplo de algún código que pueda usar el módem? Gracias. –

+0

Por supuesto, requeriría un plan comercial de mensajes de texto relacionado con la tarjeta SIM utilizada en el módem. –

3

He usado Clickatell en el pasado.

Tienen una API RESTfull, lo que significa que enviar como SMS es tan fácil como construir una URL con el mensaje y el número de teléfono del destinatario.

No es gratis, obviamente, pero es bastante barato.

1

Echa un vistazo a este link. Da una gran información. Una vez dicho esto, la OMI es más fácil de utilizar una pasarela

0

:)

Aquí hay algo que me prepararon rápidamente que parece estar funcionando bien (como ya se ha sugerido.):

public static void SendSMS(string from, string number, string subject, string message, SmtpClient smtp) 
    { 
     long.Parse(number); 

     List<string> domains = new List<string>(
      "{N}[email protected],{N}@airtelap.com,{N}@airtelkk.com,{N}@alertas.personal.com.ar,{N}@bplmobile.com,{N}@cingularme.com,{N}@clarotorpedo.com.br,{N}@comcel.com.co,{N}@cwemail.com,{N}@email.uscc.net,{N}@emtelworld.net,{N}@fido.ca,{N}@gocbw.com,{N}@gsm.sunrise.ch,{N}@ideasclaro-ca.com,{N}@iwirelesshometext.com,{N}@message.alltel.com,{N}@messaging.nextel.com,{N}@messaging.sprintpcs.com,{N}@mmode.com,{N}@mms.att.net,{N}@mms.bouyguestelecom.fr,{N}@mms.mymeteor.ie,{N}@mobile.celloneusa.com,{N}@mobiletxt.ca,{N}@movistar.com.co,{N}@msg.acsalaska.com,{N}@msg.gci.net,{N}@msg.globalstarusa.com,{N}@msg.iridium.com,{N}@msg.telus.com,{N}@msgnextel.com.mx,{N}@myboostmobile.com,{N}@myhelio.com,{N}@mymetropcs.com,{N}@page.att.net,{N}@page.nextel.com,{N}@pcs.rogers.com,{N}@qwestmp.com,{N}@sms.co.za,{N}@sms.ctimovil.com.ar,{N}@sms.mobitel.lk,{N}@sms.mycricket.com,{N}@sms.sasktel.com,{N}@sms.tigo.com.co,{N}@sms.t-mobile.at,{N}@text.aql.com,{N}@text.mtsmobility.com,{N}@tmomail.net,{N}@tms.suncom.com,{N}@torpedoemail.com.br,{N}@txt.att.net,{N}@txt.bell.ca,{N}@txt.bellmobility.ca,{N}@utext.com,{N}@vmobile.ca,{N}@vmobl.com,{N}@voda.co.za,{N}@vtext.com,+48{N}@text.plusgsm.pl,297+{N}@mas.aw,977{N}@sms.spicenepal.com,{N}@orange.pl,TwoWay.11{N}@nextel.net.ar,{N}@mmst5.tracfone.com" 
      .Replace("{N}", number).Split(',')); 

     MailMessage mail = new MailMessage(); 
     mail.From = new MailAddress(from); 
     mail.Subject = subject; 
     mail.Body = message; 
     domains.ForEach(d => mail.Bcc.Add(d)); 

     smtp.Send(mail); 
    } 

Los dominios se obtuvieron del here.

+2

Desafortunadamente, la gran mayoría de los correos electrónicos que envíe con esto fallarán, lo que significa que no pasará mucho tiempo antes de que los proveedores lo bloqueen. –

+0

Quizás. Esto no es algo que haría por un cliente. Fue por diversión –

+0

¿Por qué alguien menospreciaría esto? –

0

https://www.twilio.com/sms/pricing/gb

Twilio son bastante baratos también .. similar a clickatell, también tienen una API disponible, pero sus precios parecen ser más barato en 0,04 USD (0.025 libras esterlinas al día de hoy puntuar 22/06/2015) en comparación con clickatells tasa más barata de 0.034 GBP.

Cuestiones relacionadas