Sé que hay muchos sitios de terceros para enviar SMS a granel a través de Internet, pero si quisiera crear uno, ¿cómo lo haría? Sé cómo crear una puerta de enlace SMS usando mi teléfono móvil, que es muy lento. ¿Hay alguna otra forma de crear una puerta de enlace de SMS de Internet?¿Cómo crear una puerta de enlace SMS?
Respuesta
Hmm ... De acuerdo con su requisito, necesitará un módem GSM. Con eso, puede enviar mensajes SMS con comandos AT estándar. Luego debe desarrollar un servidor HTTP que reciba la solicitud, procesarla y enviar los comandos AT al módem GSM.
He diseñado algo similar (aunque para muchos menos mensajes de texto) para mi empleador. Un servidor Linux está conectado a un dongle USB Bluetooth para recibir datos de dispositivos de sensores integrados en el laboratorio y un módem Siemens TC35 GSM a través de un enlace en serie RS232. El servidor puede enviar mensajes al teléfono de los empleados seleccionados si los sensores determinan que hay un problema que también es manejado por un programa C++. Además, hay una aplicación J2EE que permite a los empleados ingresar mensajes a través de una página web que luego se envían como mensajes de texto a los empleados que seleccionan. La aplicación J2EE descarga los mensajes en una base de datos que luego son recopilados por el programa C++ y enviados mediante los comandos AT
a través del TC35. Se hace de esta manera para que los mensajes con problemas del sensor siempre tengan prioridad.
La programación no fue nada especial ya que los comandos AT
son fáciles de entender. Solo asegúrese de que su programación sea segura para que no pueda ser secuestrada por un spammer y que el módem esté ubicado en una habitación con buena cobertura GSM/3G y no esté en un sótano.
Ah, y también es una buena idea hacer que su programa solicite al módem GSM la información sobre la intensidad de la señal y otras estaciones base de la célula en un intervalo regular y almacenar esto en una tabla de base de datos especial. Esto le permitirá detectar problemas con su proveedor de celular y pasar a otro si es necesario. Utilicé esta información para descubrir que la estación base que estaba usando parecía estar desconectada o que tenía problemas técnicos con bastante frecuencia, lo que hizo que el rendimiento de mis mensajes de los módems se redujera a un goteo.
buena suerte
se puede hacer de dos maneras 1) módem GSM 2) HTTP (proveedor de servicios) (Más rápido que el módem)
he utilizado http://www.ozekisms.com/ pasarela de servicio
C# Código para enviar Http Request y cómo agregar Nombre de usuario y contraseña Dirección IP y Puerto.
Consulte este Código Espero que le ayude.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SMSClient;
namespace SMSDemoConsole
{
class Program
{
private static void WriteEvent(String myEvent)
{
Console.WriteLine(myEvent);
}
#region Events
static void mySMSClient_OnMessageReceived(object sender, DeliveryEventArgs e)
{
WriteEvent(DateTime.Now.ToString() + " " + "Message received. Sender address: " + e.Senderaddress + " Message text: " + e.Messagedata + "\r\n");
}
static void mySMSClient_OnMessageDeliveryError(object sender, DeliveryErrorEventArgs e)
{
WriteEvent(DateTime.Now.ToString() + " " + "Message could not be delivered. ID: " + e.Messageid + " Error message: " + e.ErrorMessage + "\r\n");
}
static void mySMSClient_OnMessageDeliveredToHandset(object sender, DeliveryEventArgs e)
{
WriteEvent(DateTime.Now.ToString() + " " + "Message delivered to handset. ID: " + e.Messageid + "\r\n");
}
static void mySMSClient_OnMessageDeliveredToNetwork(object sender, DeliveryEventArgs e)
{
WriteEvent(DateTime.Now.ToString() + " " + "Message delivered to network. ID: " + e.Messageid + "\r\n");
}
static void mySMSClient_OnMessageAcceptedForDelivery(object sender, DeliveryEventArgs e)
{
WriteEvent(DateTime.Now.ToString() + " " + "Message accepted for delivery. ID: " + e.Messageid + "\r\n");
}
static void mySMSClient_OnClientConnectionError(object sender, ErrorEventArgs e)
{
WriteEvent(DateTime.Now.ToString() + " " + e.ErrorMessage + "\r\n");
}
static void mySMSClient_OnClientDisconnected(object sender, EventArgs e)
{
WriteEvent(DateTime.Now.ToString() + " Disconnected from the SMS gateway " + "\r\n");
}
static void mySMSClient_OnClientConnected(object sender, EventArgs e)
{
WriteEvent(DateTime.Now.ToString() + " Successfully connected to the SMS gateway " + "\r\n");
}
#endregion
static void Main(string[] args)
{
ozSMSClient mySMSClient = new ozSMSClient();
mySMSClient.OnClientConnected += new SimpleEventHandler(mySMSClient_OnClientConnected);
mySMSClient.OnClientDisconnected += new SimpleEventHandler(mySMSClient_OnClientDisconnected);
mySMSClient.OnClientConnectionError += new ErrorEventHandler(mySMSClient_OnClientConnectionError);
mySMSClient.OnMessageAcceptedForDelivery += new DeliveryEventHandler(mySMSClient_OnMessageAcceptedForDelivery);
mySMSClient.OnMessageDeliveredToNetwork += new DeliveryEventHandler(mySMSClient_OnMessageDeliveredToNetwork);
mySMSClient.OnMessageDeliveredToHandset += new DeliveryEventHandler(mySMSClient_OnMessageDeliveredToHandset);
mySMSClient.OnMessageDeliveryError += new DeliveryErrorEventHandler(mySMSClient_OnMessageDeliveryError);
mySMSClient.OnMessageReceived += new DeliveryEventHandler(mySMSClient_OnMessageReceived);
mySMSClient.Username = "admin";
mySMSClient.Password = "abc123";
mySMSClient.Host = "127.0.0.1";
mySMSClient.Port = 9500;
mySMSClient.Connected = true;
mySMSClient.sendMessage("+44987654", "TEST", "vp=" + DateTime.Now + "&ttt=werwerwe rewwe34232 1");
Console.ReadKey();
mySMSClient.Connected = false;
}
}
}
Gracias.
- 1. ¿Qué es una puerta de enlace SMS
- 2. ¿Cuál es una buena alternativa de código abierto para Kannel para la puerta de enlace SMS?
- 3. Asesoramiento sobre un proveedor de puerta de enlace SMS de Canadá
- 4. Envío de SMS a través de la puerta de enlace gratuita
- 5. eMail a través de la puerta de enlace SMS se envía, pero no se recibe
- 6. Cómo obtener la puerta de enlace predeterminada en Mac OSX
- 7. ¿Cómo puedo determinar la puerta de enlace predeterminada en iPhone?
- 8. Recomendaciones para puertas de enlace SMS con soporte API
- 9. "Hg a Hg (puerta de enlace) a SVN" en comparación con "Git a Git (puerta de enlace) a SVN"
- 10. Cómo crear una puerta de enlace de tarjeta de crédito segura usando paypal/ruby on rails/active merchant
- 11. Repositorio o patrón de puerta de enlace en Ruby
- 12. Enlace a una aplicación de Android de SMS/correo
- 13. ¿Cómo crear una aplicación de SMS en Android?
- 14. primavera Integración de puerta de enlace sin argumentos
- 15. Puerta de enlace predeterminada en C en Linux
- 16. hgweb.cgi arroja un 502 (puerta de enlace defectuosa) al pulsar
- 17. Biblioteca de puerta de enlace de pago Java
- 18. Obtener la puerta de enlace predeterminada en java
- 19. Play2-mini y Akka2 para la puerta de enlace HTTP
- 20. Iniciar una aplicación desde un enlace en un SMS
- 21. Android como puerta de enlace SIP a GSM
- 22. ¿Cómo diseñar una puerta de enlace HTTP RESTful para un protocolo que requiere conexiones persistentes?
- 23. Cree un SMS Gateway propio
- 24. Enviando mensajes automáticos SMS
- 25. Biblioteca de SMS en C#
- 26. Creación de una puerta de enlace de pago en línea completa como Paypal
- 27. Limitaciones en los mensajes SMS enviados usando correo electrónico gratuito-> pasarelas SMS
- 28. Cómo configurar una pasarela SMS
- 29. Enviar SMS C# .net
- 30. Cómo evito un tiempo de espera de puerta de enlace con FastCGI en Nginx