EchoTex_Payroll/HRM.BO/SMS/SMSSender.cs
2024-10-14 10:01:49 +06:00

324 lines
11 KiB
C#

//
//using Ease.Core.Model;
//using GsmComm.GsmCommunication;
//using GsmComm.PduConverter;
//
//
//
//using System;
//using System.Collections.Generic;
//using System.Data;
//using System.IO;
//using System.Text.RegularExpressions;
//namespace HRM.BO
//{
// public class SMSSender
// {
// private int[] ComPorts = { 1, 2, 3, 4,5,6,7,8 };
// private int[] BaudRates = { 9600, 19200, 38400, 57600, 115200 };
// private int[] TimeOuts = { 150, 300, 600, 900, 1200, 1500, 1800, 2000 };
// private Int16 Comm_Port = 0;
// private Int32 Comm_BaudRate = 0;
// private Int32 Comm_TimeOut = 0;
// private GsmCommMain comm;
// private List<Port> ports;
// private Phone phone;
// private Port validPort;
// public String CellNumber { get; set; }
// public String SMSMessage { get; set; }
// #region private Functions
// private bool PortFound()
// {
// // for Receiving maximum
// Array.Sort(TimeOuts);
// Array.Reverse(TimeOuts);
// foreach (int comp in ComPorts)
// {
// foreach (var baud in BaudRates)
// {
// foreach (var tmOut in TimeOuts)
// {
// Port port = new Port();
// port.ComPort = comp;
// port.ConnDevice = "";
// port.MaxBaudRate = baud;
// port.Status = "";
// port.TimeOut = tmOut.ToString();
// try
// {
// Comm_Port = (short)port.ComPort;
// Comm_BaudRate = (int)port.MaxBaudRate;
// Comm_TimeOut = Convert.ToInt32(port.TimeOut);
// }
// catch (Exception e1)
// {
// // Console.WriteLine("Error Converting COM Port Settings Values" + " Check COM Port Values");
// continue;
// }
// comm = new GsmCommMain(Comm_Port, Comm_BaudRate, Comm_TimeOut);
// try
// {
// comm.Open();
// if (comm.IsConnected())
// {
// phone = new Phone();
// try
// {
// phone.Name = comm.IdentifyDevice().Manufacturer.ToUpper().ToString();
// phone.Model = comm.IdentifyDevice().Model.ToUpper().ToString();
// phone.RevisionNumber = comm.IdentifyDevice().Revision.ToUpper().ToString();
// phone.SerialNumber = comm.IdentifyDevice().SerialNumber.ToUpper().ToString();
// validPort = port;
// return true;
// }
// catch (Exception e2)
// {
// continue;
// }
// }
// }
// catch (Exception e3)
// {
// continue;
// }
// }
// }
// }
// return false;
// }
// private bool ValidNumber()
// {
// Match matchNumber;
// switch (CellNumber.Trim().Length)
// {
// case 11:
// if(checkStarting(0))
// {
// matchNumber = Regex.Match(CellNumber, "[0-9]+");
// if(matchNumber.Success)
// return true;
// }
// break;
// case 14:
// if(checkStarting(3))
// {
// matchNumber = Regex.Match(CellNumber, "[+]88[0-9]+");
// if (matchNumber.Success)
// return true;
// }
// break;
// case 15:
// if (checkStarting(4))
// {
// matchNumber = Regex.Match(CellNumber, "0088[0-9]+");
// if (matchNumber.Success)
// return true;
// }
// break;
// default:
// return false;
// }
// return false;
// }
// private bool checkStarting(int start)
// {
// String subString = CellNumber.Substring(start, 3);
// if (subString == "011" || subString == "015" || subString == "016" || subString == "017" || subString == "018" || subString == "019")
// return true;
// return false;
// }
// //private bool ValidPortSelect()
// // {
// // foreach (Port port in ports)
// // {
// // try
// // {
// // Comm_Port = Convert.ToInt16(port.ComPort.ToString().Substring(3));
// // Comm_BaudRate = Convert.ToInt32(port.MaxBaudRate.ToString());
// // Comm_TimeOut = Convert.ToInt32(port.TimeOut);
// // }
// // catch (Exception e1)
// // {
// // // Console.WriteLine("Error Converting COM Port Settings Values" + " Check COM Port Values");
// // continue;
// // }
// // comm = new GsmCommMain(Comm_Port, Comm_BaudRate, Comm_TimeOut);
// // try
// // {
// // comm.Open();
// // if (comm.IsConnected())
// // {
// // phone = new Phone();
// // try
// // {
// // phone.Name = comm.IdentifyDevice().Manufacturer.ToUpper().ToString();
// // phone.Model = comm.IdentifyDevice().Model.ToUpper().ToString();
// // phone.RevisionNumber = comm.IdentifyDevice().Revision.ToUpper().ToString();
// // phone.SerialNumber = comm.IdentifyDevice().SerialNumber.ToUpper().ToString();
// // validPort = port;
// // return true;
// // }
// // catch (Exception e2)
// // {
// // continue;
// // }
// // }
// // }
// // catch (Exception e3)
// // {
// // continue;
// // }
// // }
// // return false;
// // }
// //private void GeneratePortList()
// // {
// // ports = new List<Port>();
// // try
// // {
// // // Cursor.Current = Cursors.WaitCursor;
// // //ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_SerialPort");
// // //foreach (ManagementObject queryObj in searcher.Get())
// // //{
// // // if (queryObj != null)
// // // {
// // // Port port = new Port();
// // // port.ComPort = queryObj["DEVICEID"]; //0
// // // port.ConnDevice = queryObj["DESCRIPTION"]; //1
// // // port.MaxBaudRate = queryObj["MAXBAUDRATE"]; //2
// // // port.Status = queryObj["STATUS"]; //4
// // // port.TimeOut = "100"; //3
// // // ports.Add(port);
// // // }
// // //}
// // foreach (int comp in ComPorts)
// // {
// // foreach (var baud in BaudRates)
// // {
// // foreach (var tmOut in TimeOuts)
// // {
// // Port port = new Port();
// // port.ComPort = comp; //0
// // port.ConnDevice = ""; //1
// // port.MaxBaudRate = baud; //2
// // port.Status = ""; //4
// // port.TimeOut = tmOut.ToString(); //3
// // ports.Add(port);
// // //dataGridView3.Rows.Add("COM" + comp, "", baud, tmOut, "Open");
// // }
// // }
// // }
// // }
// // catch (Exception e15)
// // {
// // throw new Exception("An error occurred while querying for WMI data: " + e15.Message);
// // }
// // }
// #endregion
// public void SendSMS()
// {
// //GeneratePortList();
// //if (!ValidPortSelect())
// //{
// // return;
// //}
// if (!PortFound())
// {
// throw new Exception("No Port Found for sending SMS");
// }
// SmsSubmitPdu pdu1;
// try
// {
// if (comm.IsConnected())
// {
// if (!ValidNumber())
// {
// throw new Exception("Invalid Mobile No");
// }
// else if (SMSMessage.Trim() == "")
// {
// SMSMessage = "Blank SMS";
// }
// try
// {
// pdu1 = new SmsSubmitPdu(SMSMessage, CellNumber, "");
// comm.SendMessage(pdu1);
// }
// catch (Exception e)
// {
// throw new Exception("Could Not Send SMS due To: \r\n" + e.Message);
// }
// finally
// {
// comm.Close();
// }
// }
// else
// {
// throw new Exception("No GSM Phone / Modem Connected");
// }
// }
// catch (Exception E10)
// {
// if (comm.IsConnected()) comm.Close();
// throw new Exception(E10.Message);
// }
// }
// }
// internal class Port
// {
// public object ComPort { get; set; }
// public object ConnDevice { get; set; }
// public object MaxBaudRate { get; set; }
// public string TimeOut { get; set; }
// public object Status { get; set; }
// }
// internal class Phone
// {
// public String Name { get; set; }
// public String Model { get; set; }
// public String RevisionNumber { get; set; }
// public String SerialNumber { get; set; }
// }
//}