public void connect() { string cmbCOM = "COM" + comms.Text; comm = new GsmCommMain(cmbCOM, 9600, 150); try { if (comm.IsConnected()) { info.Content = comm.IdentifyDevice().Manufacturer.ToUpper().ToString(); info.Content = info.Content + Environment.NewLine + comm.IdentifyDevice().Manufacturer.ToUpper().ToString(); info.Content = info.Content + Environment.NewLine + comm.IdentifyDevice().Model.ToUpper().ToString(); info.Content = info.Content + Environment.NewLine + comm.IdentifyDevice().Revision.ToUpper().ToString(); info.Content = info.Content + Environment.NewLine + comm.IdentifyDevice().SerialNumber.ToUpper().ToString(); info.Content = info.Content + Environment.NewLine + comm.GetCurrentOperator(); info.Content = info.Content + Environment.NewLine + comm.GetSignalQuality(); info.Content = info.Content + Environment.NewLine + comm.GetSmscAddress(); info.Content = info.Content + Environment.NewLine + comm.GetSubscriberNumbers(); save.Visibility = Visibility.Visible; Console.WriteLine("comm is already open"); } else { Console.WriteLine("comm is not open"); comm.Open(); info.Content = comm.IdentifyDevice().Manufacturer.ToUpper().ToString(); info.Content = info.Content + Environment.NewLine + comm.IdentifyDevice().Manufacturer.ToUpper().ToString(); info.Content = info.Content + Environment.NewLine + comm.IdentifyDevice().Model.ToUpper().ToString(); info.Content = info.Content + Environment.NewLine + comm.IdentifyDevice().Revision.ToUpper().ToString(); info.Content = info.Content + Environment.NewLine + comm.IdentifyDevice().SerialNumber.ToUpper().ToString(); save.Visibility = Visibility.Visible; } } catch (Exception r) { MessageBox.Show(r.Message); } }
private int? findGSMCommPort() { String[] portNames = System.IO.Ports.SerialPort.GetPortNames(); int? portNumber = null; foreach (string portName in portNames) { String[] port = portName.Split(new string[] { "COM" }, StringSplitOptions.None); GsmCommMain comm = new GsmCommMain(Int32.Parse(port[1]), gsmBaudRate/*baudRate*/, gsmTimeOut/*timeout*/); try { comm.Open(); if (comm.IsConnected()) { AddressData addrData = comm.GetSmscAddress(); portNumber = Convert.ToInt32(port[1]); } comm.Close(); if (portNumber != null) break; } catch (Exception e) { if( comm.IsOpen()) comm.Close(); } } return portNumber; }