Para enviar mensaje SMS, hace falta un módem o teléfono que soporte envió de sms, conexión con el ordenador, ya sea mediante bluetooth, usb o puerto serie. Los módem gsm soportan comandos AT, eston permiten configurar y obtener diversa información del módem gsm, como puede ser marca, modelo, nivel de cobertura, proveedor de la conexión, realizar llamadas, etc.
Para poder comunicarnos desde nuestro programa en C# con el módem o teléfono necesitamos el componente «SerialPort». Esto componente nos permite realizar comunicación mediante puerto serie.
Creación e inicialización del componente SerialPort
sModem = new SerialPort("COM1",9600, Parity.None, 8, StopBits.Two);
Donde:
- Com1: es el puerto donde esta conectado el módem o teléfono gsm
- 9600: Velocidad a la que nos conectaremos al aparato.
- Parity.None: Paridad ninguna.
- 8: Tamaño del bit de datos.
- StopBits.Two: Bits de parada, en este caso 2.
Estos parámetros hay cambiarlos por los que específicos del módem al que vamos ha conectarnos.
Ejemplo de función:
// Función para mandar sms
public Boolean EnviarMensaje(string NumTel, string Mensaje)
{
try
{
// Comando de comprobación
sModem.Write("AT\r");
// Pasamo a modo SMS
sModem.Write("AT+CMGF=1\r");
// Enviamos el numero al que queremos enviar el SMS
sModem.Write("AT+CMGS=\"" + NumTel.Trim() + "\"\r");
// El texto del mensaje, se termina con Control+Z
sModem.Write(Mensaje.Trim() + '\x001a');
// Si todo sale bien devuelve true
return true;
}
catch (Exception Error)
{
// si hay algún error devuelve false
return false;
}
}
Si estas interesado en aprender más acerca de C# te recomendamos este curso.
https://go.hotmart.com/R69191757Y