Anda di halaman 1dari 2

1118-1093-5265-8494-1539-2118

using System.IO;
using System.IO.Ports;
using System.Text;
using System;
class Program
{
static SerialPort ComPort;
static ASCIIEncoding ASCIIEncoder = new ASCIIEncoding();
public static void OnSerialDataReceived(object sender, SerialDataReceivedEve
ntArgs args)
{
//SE ALMACENA EL EVENTO ACTUAL DEL PUERTO EN LA VARIABLE DATA
string data = ComPort.ReadExisting();
string ring_date = "";
string ring_time = "";
string ring_nmbr = "";

//OBTENER FECHA PARA ESCRIBIR EL LA BITACORA


DateTime date = DateTime.Now;
string dateformat = date.ToString("yyyyMMdd"); //OBTENER EL AÑO MES Y DÍA
//OBTENEMOS LA LONGITUD DE LAS CADENAS RECIBIDAS POR EL MÓDEM, CUANDO SEA
MAYOR QUE 30 CARACTERES
//SACAMOS LOS DATOS DE FECHA Y NÚMERO DE TELÉFONO
if (data.Length >= 30)
{
ring_date = data.Substring(7, 4);
ring_time = data.Substring(20, 4);
ring_nmbr = data.Substring(33, 10);

//SEGEMENTO PARA ESCRIBIR EN BITACORA LOS EVENTOS CAPTURADOS


string fileName = "C:\\appserv\\Tracer_Log_" + dateformat + ".txt";
//esto inserta texto en un archivo existente, si el archivo no exist
e lo crea
StreamWriter writer = File.AppendText(fileName);
writer.WriteLine(ring_nmbr + "|" + ring_date + "|" + ring_time);
writer.Close();
System.Console.Write(ring_date + "|" + ring_time + "|" + ring_nmbr +
"\n");
}
}
static void Main(string[] args)
{
string port = "COM4";
int baud = 9600;
if (args.Length >= 1)
{
port = args[0];
}
if (args.Length >= 2)
{
baud = int.Parse(args[1]);
}
InitializeComPort(port, baud);
string text;
//ACTIVAR IDENTIFICADOR DE LLAMADAS
String ComandoATID;
ComandoATID = "AT#CID=1";
ComPort.Write(ComandoATID + '\r');
do
{
//CAPTURAMOS EL TEXTO ESCRITO EN LA CONSOLA
text = System.Console.ReadLine();
//ESCRIBIMOS EN LA CONSOLA EL TEXTO CAPTURADO
ComPort.Write(text + '\r');
}
while (text.ToLower() != "q");
}
private static void InitializeComPort(string port, int baud)
{
ComPort = new SerialPort(port, baud);
// ComPort.PortName = port;
// ComPort.BaudRate = baud;
ComPort.Parity = Parity.None;
ComPort.StopBits = StopBits.One;
ComPort.DataBits = 8;
ComPort.Handshake = Handshake.None;
ComPort.DataReceived += OnSerialDataReceived;
ComPort.Open();
}
}

Anda mungkin juga menyukai